From 25845ff532ad1b62fcfca16426fed5c40fa22473 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Oct 30 2018 04:55:17 +0000 Subject: import glibc-2.17-260.el7 --- diff --git a/SOURCES/glibc-fedora-elf-ORIGIN.patch b/SOURCES/glibc-fedora-elf-ORIGIN.patch deleted file mode 100644 index 581f2cf..0000000 --- a/SOURCES/glibc-fedora-elf-ORIGIN.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 207e77fd3f0a94acdf0557608dd4f10ce0e0f22f Mon Sep 17 00:00:00 2001 -From: Andreas Schwab -Date: Mon, 9 May 2011 10:55:58 +0200 -Subject: [PATCH] Never leave $ORIGIN unexpanded - -* elf/dl-load.c (is_dst): Remove parameter secure, all callers -changed. Move check for valid use of $ORIGIN ... -(_dl_dst_substitute): ... here. Reset check_for_trusted when a -path element is skipped. - ---- - ChangeLog | 7 +++++++ - elf/dl-load.c | 34 ++++++++++++++++------------------ - 2 files changed, 23 insertions(+), 18 deletions(-) - -diff --git glibc-2.17-c758a686/elf/dl-load.c glibc-2.17-c758a686/elf/dl-load.c -index 18a83d2..6e16a9a 100644 ---- glibc-2.17-c758a686/elf/dl-load.c -+++ glibc-2.17-c758a686/elf/dl-load.c -@@ -249,8 +249,7 @@ is_trusted_path_normalize (const char *path, size_t len) - - - static size_t --is_dst (const char *start, const char *name, const char *str, -- int is_path, int secure) -+is_dst (const char *start, const char *name, const char *str, int is_path) - { - size_t len; - bool is_curly = false; -@@ -279,12 +278,6 @@ is_dst (const char *start, const char *name, const char *str, - && (!is_path || name[len] != ':')) - return 0; - -- if (__builtin_expect (secure, 0) -- && ((name[len] != '\0' && name[len] != '/' -- && (!is_path || name[len] != ':')) -- || (name != start + 1 && (!is_path || name[-2] != ':')))) -- return 0; -- - return len; - } - -@@ -299,13 +292,10 @@ _dl_dst_count (const char *name, int is_path) - { - size_t len; - -- /* $ORIGIN is not expanded for SUID/GUID programs (except if it -- is $ORIGIN alone) and it must always appear first in path. */ - ++name; -- if ((len = is_dst (start, name, "ORIGIN", is_path, -- INTUSE(__libc_enable_secure))) != 0 -- || (len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0 -- || (len = is_dst (start, name, "LIB", is_path, 0)) != 0) -+ if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0 -+ || (len = is_dst (start, name, "PLATFORM", is_path)) != 0 -+ || (len = is_dst (start, name, "LIB", is_path)) != 0) - ++cnt; - - name = strchr (name + len, '$'); -@@ -338,9 +328,16 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, - size_t len; - - ++name; -- if ((len = is_dst (start, name, "ORIGIN", is_path, -- INTUSE(__libc_enable_secure))) != 0) -+ if ((len = is_dst (start, name, "ORIGIN", is_path)) != 0) - { -+ /* For SUID/GUID programs $ORIGIN must always appear -+ first in a path element. */ -+ if (__builtin_expect (INTUSE(__libc_enable_secure), 0) -+ && ((name[len] != '\0' && name[len] != '/' -+ && (!is_path || name[len] != ':')) -+ || (name != start + 1 && (!is_path || name[-2] != ':')))) -+ repl = (const char *) -1; -+ else - #ifndef SHARED - if (l == NULL) - repl = _dl_get_origin (); -@@ -351,9 +348,9 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, - check_for_trusted = (INTUSE(__libc_enable_secure) - && l->l_type == lt_executable); - } -- else if ((len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0) -+ else if ((len = is_dst (start, name, "PLATFORM", is_path)) != 0) - repl = GLRO(dl_platform); -- else if ((len = is_dst (start, name, "LIB", is_path, 0)) != 0) -+ else if ((len = is_dst (start, name, "LIB", is_path)) != 0) - repl = DL_DST_LIB; - - if (repl != NULL && repl != (const char *) -1) -@@ -373,6 +370,7 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, - element, but keep an empty element at the end. */ - if (wp == result && is_path && *name == ':' && name[1] != '\0') - ++name; -+ check_for_trusted = false; - } - else - /* No DST we recognize. */ diff --git a/SOURCES/glibc-rh1307241-1.patch b/SOURCES/glibc-rh1307241-1.patch new file mode 100644 index 0000000..b33a8e9 --- /dev/null +++ b/SOURCES/glibc-rh1307241-1.patch @@ -0,0 +1,455 @@ +The upstream patch is backported by excluding a dependency in +stdlib/Makefile whose task is to ensure that locales are generated before +the relevant tests are run. The dependency was added in order to fix +SWBZ#18969 which is triggered when running `make check' for a specific +subdirectory (stdlib here). Instead of this, the locales necessary for the +test are generated via an addition in localedata/Makefile. + +commit 985fc132f23dbb83de76c5af9e783ef1b5900148 +Author: Florian Weimer +Date: Mon Apr 4 15:18:13 2016 +0200 + + strfmon_l: Use specified locale for number formatting [BZ #19633] + +Index: b/include/printf.h +=================================================================== +--- a/include/printf.h ++++ b/include/printf.h +@@ -1,6 +1,7 @@ + #ifndef _PRINTF_H + + #include ++#include + + /* Now define the internal interfaces. */ + extern int __printf_fphex (FILE *, const struct printf_info *, +@@ -8,5 +9,8 @@ extern int __printf_fphex (FILE *, const + extern int __printf_fp (FILE *, const struct printf_info *, + const void *const *); + libc_hidden_proto (__printf_fp) ++extern int __printf_fp_l (FILE *, locale_t, const struct printf_info *, ++ const void *const *); ++libc_hidden_proto (__printf_fp_l) + + #endif +Index: b/locale/localeinfo.h +=================================================================== +--- a/locale/localeinfo.h ++++ b/locale/localeinfo.h +@@ -290,6 +290,27 @@ extern __thread struct __locale_data *co + + #endif + ++/* Extract CATEGORY locale's string for ITEM. */ ++static inline const char * ++_nl_lookup (locale_t l, int category, int item) ++{ ++ return l->__locales[category]->values[_NL_ITEM_INDEX (item)].string; ++} ++ ++/* Extract CATEGORY locale's wide string for ITEM. */ ++static inline const wchar_t * ++_nl_lookup_wstr (locale_t l, int category, int item) ++{ ++ return (wchar_t *) l->__locales[category] ++ ->values[_NL_ITEM_INDEX (item)].wstr; ++} ++ ++/* Extract the CATEGORY locale's word for ITEM. */ ++static inline uint32_t ++_nl_lookup_word (locale_t l, int category, int item) ++{ ++ return l->__locales[category]->values[_NL_ITEM_INDEX (item)].word; ++} + + /* Default search path if no LOCPATH environment variable. */ + extern const char _nl_default_locale_path[] attribute_hidden; +Index: b/stdio-common/printf_fp.c +=================================================================== +--- a/stdio-common/printf_fp.c ++++ b/stdio-common/printf_fp.c +@@ -153,9 +153,9 @@ static wchar_t *group_number (wchar_t *b + + + int +-___printf_fp (FILE *fp, +- const struct printf_info *info, +- const void *const *args) ++___printf_fp_l (FILE *fp, locale_t loc, ++ const struct printf_info *info, ++ const void *const *args) + { + /* The floating-point value to output. */ + union +@@ -263,18 +263,19 @@ ___printf_fp (FILE *fp, + /* Figure out the decimal point character. */ + if (info->extra == 0) + { +- decimal = _NL_CURRENT (LC_NUMERIC, DECIMAL_POINT); +- decimalwc = _NL_CURRENT_WORD (LC_NUMERIC, _NL_NUMERIC_DECIMAL_POINT_WC); ++ decimal = _nl_lookup (loc, LC_NUMERIC, DECIMAL_POINT); ++ decimalwc = _nl_lookup_word ++ (loc, LC_NUMERIC, _NL_NUMERIC_DECIMAL_POINT_WC); + } + else + { +- decimal = _NL_CURRENT (LC_MONETARY, MON_DECIMAL_POINT); ++ decimal = _nl_lookup (loc, LC_MONETARY, MON_DECIMAL_POINT); + if (*decimal == '\0') +- decimal = _NL_CURRENT (LC_NUMERIC, DECIMAL_POINT); +- decimalwc = _NL_CURRENT_WORD (LC_MONETARY, ++ decimal = _nl_lookup (loc, LC_NUMERIC, DECIMAL_POINT); ++ decimalwc = _nl_lookup_word (loc, LC_MONETARY, + _NL_MONETARY_DECIMAL_POINT_WC); + if (decimalwc == L'\0') +- decimalwc = _NL_CURRENT_WORD (LC_NUMERIC, ++ decimalwc = _nl_lookup_word (loc, LC_NUMERIC, + _NL_NUMERIC_DECIMAL_POINT_WC); + } + /* The decimal point character must not be zero. */ +@@ -284,9 +285,9 @@ ___printf_fp (FILE *fp, + if (info->group) + { + if (info->extra == 0) +- grouping = _NL_CURRENT (LC_NUMERIC, GROUPING); ++ grouping = _nl_lookup (loc, LC_NUMERIC, GROUPING); + else +- grouping = _NL_CURRENT (LC_MONETARY, MON_GROUPING); ++ grouping = _nl_lookup (loc, LC_MONETARY, MON_GROUPING); + + if (*grouping <= 0 || *grouping == CHAR_MAX) + grouping = NULL; +@@ -296,19 +297,20 @@ ___printf_fp (FILE *fp, + if (wide) + { + if (info->extra == 0) +- thousands_sepwc = +- _NL_CURRENT_WORD (LC_NUMERIC, _NL_NUMERIC_THOUSANDS_SEP_WC); ++ thousands_sepwc = _nl_lookup_word ++ (loc, LC_NUMERIC, _NL_NUMERIC_THOUSANDS_SEP_WC); + else + thousands_sepwc = +- _NL_CURRENT_WORD (LC_MONETARY, ++ _nl_lookup_word (loc, LC_MONETARY, + _NL_MONETARY_THOUSANDS_SEP_WC); + } + else + { + if (info->extra == 0) +- thousands_sep = _NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP); ++ thousands_sep = _nl_lookup (loc, LC_NUMERIC, THOUSANDS_SEP); + else +- thousands_sep = _NL_CURRENT (LC_MONETARY, MON_THOUSANDS_SEP); ++ thousands_sep = _nl_lookup ++ (loc, LC_MONETARY, MON_THOUSANDS_SEP); + } + + if ((wide && thousands_sepwc == L'\0') +@@ -1170,9 +1172,11 @@ ___printf_fp (FILE *fp, + size_t decimal_len; + size_t thousands_sep_len; + wchar_t *copywc; +- size_t factor = (info->i18n +- ? _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MB_CUR_MAX) +- : 1); ++ size_t factor; ++ if (info->i18n) ++ factor = _nl_lookup_word (loc, LC_CTYPE, _NL_CTYPE_MB_CUR_MAX); ++ else ++ factor = 1; + + decimal_len = strlen (decimal); + +@@ -1243,8 +1247,18 @@ ___printf_fp (FILE *fp, + } + return done; + } ++ldbl_hidden_def (___printf_fp_l, __printf_fp_l) ++ldbl_strong_alias (___printf_fp_l, __printf_fp_l) ++ ++int ++___printf_fp (FILE *fp, const struct printf_info *info, ++ const void *const *args) ++{ ++ return ___printf_fp_l (fp, _NL_CURRENT_LOCALE, info, args); ++} + ldbl_hidden_def (___printf_fp, __printf_fp) + ldbl_strong_alias (___printf_fp, __printf_fp) ++ + + /* Return the number of extra grouping characters that will be inserted + into a number with INTDIG_MAX integer digits. */ +Index: b/stdlib/Makefile +=================================================================== +--- a/stdlib/Makefile ++++ b/stdlib/Makefile +@@ -71,7 +71,7 @@ tests := tst-strtol tst-strtod testmb t + tst-qsort2 tst-makecontext2 tst-strtod6 tst-unsetenv1 \ + tst-makecontext3 bug-getcontext bug-fmtmsg1 \ + tst-secure-getenv tst-strtod-overflow tst-strtod-round \ +- tst-tininess tst-strtod-underflow ++ tst-tininess tst-strtod-underflow tst-strfmon_l + tests-static := tst-secure-getenv + + include ../Makeconfig +Index: b/stdlib/strfmon_l.c +=================================================================== +--- a/stdlib/strfmon_l.c ++++ b/stdlib/strfmon_l.c +@@ -68,9 +68,6 @@ + #define _NL_CURRENT(category, item) \ + (current->values[_NL_ITEM_INDEX (item)].string) + +-extern int __printf_fp (FILE *, const struct printf_info *, +- const void *const *); +-libc_hidden_proto (__printf_fp) + /* This function determines the number of digit groups in the output. + The definition is in printf_fp.c. */ + extern unsigned int __guess_grouping (unsigned int intdig_max, +@@ -532,7 +529,7 @@ __vstrfmon_l (char *s, size_t maxsize, _ + info.extra = 1; /* This means use values from LC_MONETARY. */ + + ptr = &fpnum; +- done = __printf_fp (&f._sbf._f, &info, &ptr); ++ done = __printf_fp_l (&f._sbf._f, loc, &info, &ptr); + if (done < 0) + return -1; + +Index: b/stdlib/tst-strfmon_l.c +=================================================================== +--- /dev/null ++++ b/stdlib/tst-strfmon_l.c +@@ -0,0 +1,220 @@ ++/* Test locale dependence of strfmon_l. ++ Copyright (C) 2016 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++static const char *const en_us_name = "en_US.ISO-8859-1"; ++ ++/* Locale value to be used by tests. */ ++static locale_t loc; ++static const char *loc_name; ++ ++/* Set the global locale to GLOBAL_NAME, and the locale referenced by ++ the loc variable above to LOCAL_NAME. */ ++static void ++init_loc (const char *global_name, const char *local_name) ++{ ++ loc = newlocale (LC_ALL_MASK, local_name, 0); ++ if (loc == 0) ++ { ++ printf ("error: newlocale (%s): %m\n", local_name); ++ abort (); ++ } ++ loc_name = local_name; ++ ++ if (setlocale (LC_ALL, global_name) == NULL) ++ { ++ printf ("error: setlocale (%s): %m\n", global_name); ++ abort (); ++ } ++} ++ ++/* Expected strings for a positive or negative value. */ ++struct testcase ++{ ++ const char *i; /* %i */ ++ const char *n; /* %n */ ++ const char *i_ungrouped; /* %^i */ ++ const char *n_ungrouped; /* %^n */ ++}; ++ ++/* Collected expected strings for both positive and negative ++ values. */ ++struct testcase_pair ++{ ++ struct testcase positive; /* 1234567.89 */ ++ struct testcase negative; /* -1234567.89 */ ++}; ++ ++static bool errors; ++ ++/* Test one value using the locale loc. */ ++static void ++test_one (const char *format, double value, const char *expected) ++{ ++ static char actual[64]; ++ int result = strfmon_l (actual, sizeof (actual), loc, format, value); ++ if (result < 0) ++ { ++ printf ("error: locale %s, format \"%s\", value %g: strfmon_l: %m\n", ++ loc_name, format, value); ++ errors = true; ++ } ++ else if (strcmp (actual, expected) != 0) ++ { ++ printf ("error: locale %s, format \"%s\", value %g: mismatch\n", ++ loc_name, format, value); ++ printf ("error: expected: \"%s\"\n", expected); ++ printf ("error: actual: \"%s\"\n", actual); ++ errors = true; ++ } ++} ++ ++static void ++test_pair (const struct testcase_pair *pair) ++{ ++ double positive = 1234567.89; ++ test_one ("%i", positive, pair->positive.i); ++ test_one ("%n", positive, pair->positive.n); ++ test_one ("%^i", positive, pair->positive.i_ungrouped); ++ test_one ("%^n", positive, pair->positive.n_ungrouped); ++ double negative = -1234567.89; ++ test_one ("%i", negative, pair->negative.i); ++ test_one ("%n", negative, pair->negative.n); ++ test_one ("%^i", negative, pair->negative.i_ungrouped); ++ test_one ("%^n", negative, pair->negative.n_ungrouped); ++} ++ ++static const struct testcase_pair en_us = ++ { ++ { ++ "USD 1,234,567.89", "$1,234,567.89", ++ "USD 1234567.89", "$1234567.89" ++ }, ++ { ++ "-USD 1,234,567.89", "-$1,234,567.89", ++ "-USD 1234567.89", "-$1234567.89" ++ } ++ }; ++ ++static void ++test_en_us (const char *other_name) ++{ ++ init_loc (other_name, en_us_name); ++ test_pair (&en_us); ++ freelocale (loc); ++} ++ ++struct locale_pair ++{ ++ const char *locale_name; ++ struct testcase_pair pair; ++}; ++ ++static const struct locale_pair tests[] = ++ { ++ { ++ "de_DE.UTF-8", ++ { ++ { ++ "1.234.567,89 EUR", "1.234.567,89 \u20ac", ++ "1234567,89 EUR", "1234567,89 \u20ac" ++ }, ++ { ++ "-1.234.567,89 EUR", "-1.234.567,89 \u20ac", ++ "-1234567,89 EUR", "-1234567,89 \u20ac" ++ } ++ }, ++ }, ++ { ++ "tg_TJ.UTF-8", ++ { ++ { ++ "1 234 567.89 TJS", "1 234 567.89 \u0440\u0443\u0431", ++ "1234567.89 TJS", "1234567.89 \u0440\u0443\u0431" ++ }, ++ { ++ "-1 234 567.89 TJS", "-1 234 567.89 \u0440\u0443\u0431", ++ "-1234567.89 TJS", "-1234567.89 \u0440\u0443\u0431" ++ } ++ } ++ }, ++ { ++ "te_IN.UTF-8", ++ { ++ { ++ "INR12,34,567.89", "\u20b912,34,567.89", ++ "INR1234567.89", "\u20b91234567.89" ++ }, ++ { ++ "-INR12,34,567.89", "-\u20b912,34,567.89", ++ "-INR1234567.89", "-\u20b91234567.89" ++ } ++ } ++ }, ++ { ++ "bn_IN.UTF-8", ++ { ++ { ++ "INR 12,345,67.89", "\u20b9 12,345,67.89", ++ "INR 1234567.89", "\u20b9 1234567.89" ++ }, ++ { ++ "-INR 12,345,67.89", "-\u20b9 12,345,67.89", ++ "-INR 1234567.89", "-\u20b9 1234567.89" ++ } ++ } ++ }, ++ { ++ "el_GR.UTF-8", ++ { ++ { ++ "1.234.567,89EUR", "1.234.567,89\u20ac", ++ "1234567,89EUR", "1234567,89\u20ac" ++ }, ++ { ++ "-EUR1.234.567,89", "-\u20ac1.234.567,89", ++ "-EUR1234567,89", "-\u20ac1234567,89", ++ } ++ } ++ }, ++ {} ++ }; ++ ++static int ++do_test (void) ++{ ++ for (const struct locale_pair *test = tests; ++ test->locale_name != NULL; ++test) ++ { ++ init_loc (en_us_name, test->locale_name); ++ test_pair (&test->pair); ++ freelocale (loc); ++ test_en_us (test->locale_name); ++ } ++ ++ return errors; ++} ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" +Index: b/localedata/Makefile +=================================================================== +--- a/localedata/Makefile ++++ b/localedata/Makefile +@@ -120,7 +120,7 @@ LOCALES := de_DE.ISO-8859-1 de_DE.UTF-8 + hr_HR.ISO-8859-2 sv_SE.ISO-8859-1 ja_JP.SJIS fr_FR.ISO-8859-1 \ + nb_NO.ISO-8859-1 nn_NO.ISO-8859-1 tr_TR.UTF-8 cs_CZ.UTF-8 \ + zh_TW.EUC-TW fa_IR.UTF-8 fr_FR.UTF-8 ja_JP.UTF-8 si_LK.UTF-8 \ +- tr_TR.ISO-8859-9 ++ tr_TR.ISO-8859-9 tg_TJ.UTF-8 te_IN.UTF-8 bn_IN.UTF-8 el_GR.UTF-8 + LOCALE_SRCS := $(shell echo "$(LOCALES)"|sed 's/\([^ .]*\)[^ ]*/\1/g') + CHARMAPS := $(shell echo "$(LOCALES)" | \ + sed -e 's/[^ .]*[.]\([^ ]*\)/\1/g' -e s/SJIS/SHIFT_JIS/g) diff --git a/SOURCES/glibc-rh1307241-2.patch b/SOURCES/glibc-rh1307241-2.patch new file mode 100644 index 0000000..3a931f0 --- /dev/null +++ b/SOURCES/glibc-rh1307241-2.patch @@ -0,0 +1,56 @@ +commit b1b8f5d89d06a994773e22ad4b7fe1036b37f8ab +Author: Stefan Liebler +Date: Thu Apr 14 12:21:53 2016 +0200 + + Fix strfmon_l: Use specified locale for number formatting [BZ #19633] + + The commit 985fc132f23dbb83de76c5af9e783ef1b5900148 + "strfmon_l: Use specified locale for number formatting [BZ #19633]" + introduced an elf/check-abi-libc testfailure due to __printf_fp_l + on architectures which use sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h. + + This patch uses libc_hidden_def instead of ldbl_hidden_def. + The ldbl_strong_alias is removed due to the rename of ___printf_fp_l + to __printf_fp_l. + + ChangeLog: + + * stdio-common/printf_fp.c (__printf_fp_l): + Rename ___printf_fp_l to __printf_fp_l and + remove strong alias. Use libc_hidden_def instead + of ldbl_hidden_def macro. + +Index: b/stdio-common/printf_fp.c +=================================================================== +--- a/stdio-common/printf_fp.c ++++ b/stdio-common/printf_fp.c +@@ -153,9 +153,9 @@ static wchar_t *group_number (wchar_t *b + + + int +-___printf_fp_l (FILE *fp, locale_t loc, +- const struct printf_info *info, +- const void *const *args) ++__printf_fp_l (FILE *fp, locale_t loc, ++ const struct printf_info *info, ++ const void *const *args) + { + /* The floating-point value to output. */ + union +@@ -1247,14 +1247,13 @@ ___printf_fp_l (FILE *fp, locale_t loc, + } + return done; + } +-ldbl_hidden_def (___printf_fp_l, __printf_fp_l) +-ldbl_strong_alias (___printf_fp_l, __printf_fp_l) ++libc_hidden_def (__printf_fp_l) + + int + ___printf_fp (FILE *fp, const struct printf_info *info, + const void *const *args) + { +- return ___printf_fp_l (fp, _NL_CURRENT_LOCALE, info, args); ++ return __printf_fp_l (fp, _NL_CURRENT_LOCALE, info, args); + } + ldbl_hidden_def (___printf_fp, __printf_fp) + ldbl_strong_alias (___printf_fp, __printf_fp) diff --git a/SOURCES/glibc-rh1349967.patch b/SOURCES/glibc-rh1349967.patch new file mode 100644 index 0000000..bb13cfb --- /dev/null +++ b/SOURCES/glibc-rh1349967.patch @@ -0,0 +1,18 @@ +Do not define IN_MODULE. The IS_IN framework will define it for us. +This fixes a macro redefinition warning. + +rtkaio is not upstream, so there is no upstream patch. + +diff --git a/rtkaio/Makefile b/rtkaio/Makefile +index 066a1232e1bae283..cf42e0cbbdf04134 100644 +--- a/rtkaio/Makefile ++++ b/rtkaio/Makefile +@@ -69,7 +69,7 @@ CFLAGS-kaio_librt-cancellation.c = -fasynchronous-unwind-tables + + LDFLAGS-rtkaio.so = -Wl,-soname=lib$(libprefix)rt.so$(librt.so-version) \ + -Wl,--enable-new-dtags,-z,nodelete +-CPPFLAGS-librtkaio += -UIN_MODULE -DIN_MODULE=MODULE_librt \ ++CPPFLAGS-librtkaio += \ + -UMODULE_NAME -DMODULE_NAME=librt \ + -UIS_IN_librt -DIS_IN_librt=1 \ + -I$(..)rt diff --git a/SOURCES/glibc-rh1349982.patch b/SOURCES/glibc-rh1349982.patch new file mode 100644 index 0000000..c5ee144 --- /dev/null +++ b/SOURCES/glibc-rh1349982.patch @@ -0,0 +1,32 @@ +commit 0ce3b29d56632acd1c393714cc8f189496bdeb47 +Author: Carlos O'Donell +Date: Fri Jun 24 13:50:22 2016 -0400 + + Resolves: #1349906 + + - Properly handle more invalid --install-langs arguments (#1349906). + +diff -Nrup a/releng/build-locale-archive.c b/releng/build-locale-archive.c +--- a/releng/build-locale-archive.c 2018-05-03 11:31:08.474376209 -0400 ++++ b/releng/build-locale-archive.c 2018-05-03 11:35:21.001309474 -0400 +@@ -640,7 +640,7 @@ int main (int argc, char *argv[]) + char *lang; + int install_langs_count = 0; + char *install_langs_arg, *ila_start; +- char **install_langs_list; ++ char **install_langs_list = NULL; + unsigned int cnt = 0; + struct locarhandle tmpl_ah = {}; + +@@ -713,6 +713,11 @@ int main (int argc, char *argv[]) + install_langs_arg = NULL; + } + free (ila_start); ++ ++ /* Reject an entire string made up of delimiters. */ ++ if (install_langs_count == 0) ++ break; ++ + /* Copy the list. */ + install_langs_list = (char **)xmalloc (sizeof(char *) * install_langs_count); + install_langs_arg = ila_start = strdup (optarg); diff --git a/SOURCES/glibc-rh1372304-1.patch b/SOURCES/glibc-rh1372304-1.patch new file mode 100644 index 0000000..cef5c2c --- /dev/null +++ b/SOURCES/glibc-rh1372304-1.patch @@ -0,0 +1,506 @@ +While the original upstream commit adds several error-checked wrappers +around pthread functions in test-skeleton.c, a later upstream change +(c23de0aacb, containing the new support/ infrastructure for testing) removed +these wrappers and replaced them with an include declaration that provides +these functions (support/xthread.h). This backport does the same, because +the same change (new support/ infrastructure) is already included in RHEL as +well. + +Also note: The correct sourceware bug number is 19946. The original upstream +commit message refers to an incorrect one. + +commit 7e625f7e85b4e88f10dbde35a0641742af581806 +Author: Florian Weimer +Date: Fri Aug 26 19:27:16 2016 +0200 + + nptl: Avoid expected SIGALRM in most tests [BZ #20432] + + Before this change, several tests did not detect early deadlocks + because they used SIGALRM as the expected signal, and they ran + for the full default TIMEOUT seconds. + + This commit adds a new delayed_exit function to the test skeleton, + along with several error-checking wrappers to pthread functions. + Additional error checking is introduced into several tests. + +Index: b/nptl/tst-cond3.c +=================================================================== +--- a/nptl/tst-cond3.c ++++ b/nptl/tst-cond3.c +@@ -22,6 +22,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + /* Note that this test requires more than the standard. It is + required that there are no spurious wakeups if only more readers +@@ -50,7 +54,8 @@ tf (void *arg) + } + + /* This call should never return. */ +- pthread_cond_wait (&cond, &mut); ++ xpthread_cond_wait (&cond, &mut); ++ puts ("error: pthread_cond_wait in tf returned"); + + /* We should never get here. */ + exit (1); +@@ -96,17 +101,11 @@ do_test (void) + } + } + +- /* Set an alarm for 1 second. The wrapper will expect this. */ +- alarm (1); ++ delayed_exit (1); + + /* This call should never return. */ +- pthread_cond_wait (&cond, &mut); ++ xpthread_cond_wait (&cond, &mut); + +- puts ("cond_wait returned"); ++ puts ("error: pthread_cond_wait in do_test returned"); + return 1; + } +- +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-eintr1.c +=================================================================== +--- a/nptl/tst-eintr1.c ++++ b/nptl/tst-eintr1.c +@@ -23,6 +23,11 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" ++ + #include "eintr.c" + + +@@ -92,13 +97,8 @@ do_test (void) + } + } + ++ delayed_exit (3); ++ /* This call must never return. */ + (void) tf1 (NULL); +- /* NOTREACHED */ +- +- return 0; ++ return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TIMEOUT 3 +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-eintr2.c +=================================================================== +--- a/nptl/tst-eintr2.c ++++ b/nptl/tst-eintr2.c +@@ -24,6 +24,11 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" ++ + #include "eintr.c" + + +@@ -103,6 +108,7 @@ do_test (void) + exit (1); + } + ++ delayed_exit (3); + /* This call must never return. */ + e = pthread_mutex_lock (&m1); + printf ("main: mutex_lock returned: %s\n", +@@ -110,8 +116,3 @@ do_test (void) + + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TIMEOUT 3 +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-eintr3.c +=================================================================== +--- a/nptl/tst-eintr3.c ++++ b/nptl/tst-eintr3.c +@@ -23,6 +23,11 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" ++ + #include "eintr.c" + + +@@ -56,16 +61,9 @@ do_test (void) + exit (1); + } + ++ delayed_exit (1); + /* This call must never return. */ +- e = pthread_join (th, NULL); +- +- if (e == EINTR) +- puts ("pthread_join returned with EINTR"); +- +- return 0; ++ xpthread_join (th); ++ puts ("error: pthread_join returned"); ++ return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TIMEOUT 1 +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-eintr4.c +=================================================================== +--- a/nptl/tst-eintr4.c ++++ b/nptl/tst-eintr4.c +@@ -23,6 +23,11 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" ++ + #include "eintr.c" + + +@@ -40,16 +45,9 @@ do_test (void) + exit (1); + } + ++ delayed_exit (1); + /* This call must never return. */ +- int e = pthread_barrier_wait (&b); +- +- if (e == EINTR) +- puts ("pthread_join returned with EINTR"); +- +- return 0; ++ xpthread_barrier_wait (&b); ++ puts ("error: pthread_barrier_wait returned"); ++ return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TIMEOUT 1 +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-eintr5.c +=================================================================== +--- a/nptl/tst-eintr5.c ++++ b/nptl/tst-eintr5.c +@@ -24,6 +24,11 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" ++ + #include "eintr.c" + + +@@ -66,15 +71,9 @@ do_test (void) + exit (1); + } + ++ delayed_exit (3); + /* This call must never return. */ +- e = pthread_cond_wait (&c, &m); +- printf ("main: cond_wait returned: %s\n", +- strerror_r (e, buf, sizeof (buf))); +- +- return 0; ++ xpthread_cond_wait (&c, &m); ++ puts ("error: pthread_cond_wait returned"); ++ return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TIMEOUT 3 +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-exit2.c +=================================================================== +--- a/nptl/tst-exit2.c ++++ b/nptl/tst-exit2.c +@@ -4,6 +4,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static void * + tf (void *arg) +@@ -28,13 +32,11 @@ do_test (void) + return 1; + } + ++ delayed_exit (1); ++ + /* Terminate only this thread. */ + pthread_exit (NULL); + + /* NOTREACHED */ + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-exit3.c +=================================================================== +--- a/nptl/tst-exit3.c ++++ b/nptl/tst-exit3.c +@@ -5,6 +5,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static pthread_barrier_t b; + +@@ -69,13 +73,11 @@ do_test (void) + exit (1); + } + ++ delayed_exit (3); ++ + /* Terminate only this thread. */ + pthread_exit (NULL); + + /* NOTREACHED */ + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-mutex6.c +=================================================================== +--- a/nptl/tst-mutex6.c ++++ b/nptl/tst-mutex6.c +@@ -22,6 +22,11 @@ + #include + #include + ++#ifndef TEST_FUNCTION ++static int do_test (void); ++# define TEST_FUNCTION do_test () ++#endif ++#include "../test-skeleton.c" + + #ifndef ATTR + pthread_mutexattr_t *attr; +@@ -58,18 +63,10 @@ do_test (void) + return 1; + } + +- /* Set an alarm for 1 second. The wrapper will expect this. */ +- alarm (1); +- ++ delayed_exit (1); + /* This call should never return. */ +- pthread_mutex_lock (&m); ++ xpthread_mutex_lock (&m); + + puts ("2nd mutex_lock returned"); + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#ifndef TEST_FUNCTION +-# define TEST_FUNCTION do_test () +-#endif +-#include "../test-skeleton.c" +Index: b/nptl/tst-rwlock5.c +=================================================================== +--- a/nptl/tst-rwlock5.c ++++ b/nptl/tst-rwlock5.c +@@ -22,6 +22,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER; + static pthread_rwlock_t r; +@@ -65,22 +69,16 @@ do_test (void) + return 1; + } + +- /* Set an alarm for 1 second. The wrapper will expect this. */ +- alarm (1); +- + if (pthread_create (&th, NULL, tf, NULL) != 0) + { + puts ("create failed"); + return 1; + } + ++ delayed_exit (1); + /* This call should never return. */ +- pthread_mutex_lock (&m); ++ xpthread_mutex_lock (&m); + + puts ("2nd mutex_lock returned"); + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-sem2.c +=================================================================== +--- a/nptl/tst-sem2.c ++++ b/nptl/tst-sem2.c +@@ -17,11 +17,16 @@ + . */ + + #include ++#include + #include + #include + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static int + do_test (void) +@@ -34,8 +39,7 @@ do_test (void) + return 1; + } + +- /* Set an alarm for 1 second. The wrapper will expect this. */ +- alarm (1); ++ delayed_exit (1); + + if (TEMP_FAILURE_RETRY (sem_wait (&s)) == -1) + { +@@ -47,7 +51,3 @@ do_test (void) + puts ("wait succeeded"); + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-spin3.c +=================================================================== +--- a/nptl/tst-spin3.c ++++ b/nptl/tst-spin3.c +@@ -21,6 +21,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static int + do_test (void) +@@ -39,16 +43,11 @@ do_test (void) + return 1; + } + +- /* Set an alarm for 1 second. The wrapper will expect this. */ +- alarm (1); ++ delayed_exit (1); + + /* This call should never return. */ +- pthread_spin_lock (&s); ++ xpthread_spin_lock (&s); + + puts ("2nd spin_lock returned"); + return 1; + } +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/nptl/tst-stdio1.c +=================================================================== +--- a/nptl/tst-stdio1.c ++++ b/nptl/tst-stdio1.c +@@ -21,6 +21,10 @@ + #include + #include + ++static int do_test (void); ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" + + static void *tf (void *a) + { +@@ -43,14 +47,10 @@ do_test (void) + _exit (1); + } + +- pthread_join (th, NULL); ++ delayed_exit (1); ++ xpthread_join (th); + + puts ("join returned"); + +- return 0; ++ return 1; + } +- +- +-#define EXPECTED_SIGNAL SIGALRM +-#define TEST_FUNCTION do_test () +-#include "../test-skeleton.c" +Index: b/test-skeleton.c +=================================================================== +--- a/test-skeleton.c ++++ b/test-skeleton.c +@@ -427,3 +427,9 @@ main (int argc, char *argv[]) + return 0; + #endif + } ++ ++/* The following functionality is only available if was ++ included before this file. */ ++#ifdef _PTHREAD_H ++# include ++#endif /* _PTHREAD_H */ diff --git a/SOURCES/glibc-rh1372304-2.patch b/SOURCES/glibc-rh1372304-2.patch new file mode 100644 index 0000000..9660ed7 --- /dev/null +++ b/SOURCES/glibc-rh1372304-2.patch @@ -0,0 +1,46 @@ +The commit included in glibc-rh1372304-1.patch removes custom TIMEOUT +definitions from the tests it changes. Some of those tests are expected to +run for longer than the current default TIMEOUT (2 sec) set in +test-skeleton.c and so can time-out and fail when run. This commit avoids +the spurious failures by increasing the default TIMEOUT to 20 sec. Upstream, +this commit preceded the one included in glibc-rh1372304-1.patch. + +commit a28605b22946c708f0a5c4f06307e1a17650ced8 +Author: Mike Frysinger +Date: Tue Jan 19 09:18:00 2016 -0500 + + test-skeleton: increase default TIMEOUT to 20 seconds + + The vast majority of timeouts I've seen w/glibc tests are due to: + - slow system (e.g. <1 GHz cpu) + - loaded system (e.g. lots of parallelism) + Even then, I've seen timeouts on system I don't generally consider + slow, or even loaded, and considering TIMEOUT is set to <=10 in ~60 + tests (and <=20 in ~75 tests), it seems I'm not alone. I've just + gotten in the habit of doing `export TIMEOUTFACTOR=10` on all my + setups. + + In the edge case where there is a bug in the test and the timeout is + hit, I think we all agree that's either a problem with the test or a + real bug in the library somewhere. In either case, the incident rate + should be low, so catering to that seems like the wrong trade-off. + + Other developers too usually set large timeout factors. Increase the + default to 20 seconds to match reality. + +Index: b/test-skeleton.c +=================================================================== +--- a/test-skeleton.c ++++ b/test-skeleton.c +@@ -368,8 +368,9 @@ main (int argc, char *argv[]) + + /* Set timeout. */ + #ifndef TIMEOUT +- /* Default timeout is two seconds. */ +-# define TIMEOUT 2 ++ /* Default timeout is twenty seconds. Tests should normally complete faster ++ than this, but if they don't, that's abnormal (a bug) anyways. */ ++# define TIMEOUT 20 + #endif + signal (SIGALRM, signal_handler); + alarm (TIMEOUT * timeoutfactor); diff --git a/SOURCES/glibc-rh1401665-0.patch b/SOURCES/glibc-rh1401665-0.patch new file mode 100644 index 0000000..63d33a5 --- /dev/null +++ b/SOURCES/glibc-rh1401665-0.patch @@ -0,0 +1,107 @@ +commit 353683a22ed8a493a6bd1d78d63e144bc3e85d2f +Author: Torvald Riegel +Date: Thu Dec 15 16:06:28 2016 +0100 + + Robust mutexes: Fix lost wake-up. + + Assume that Thread 1 waits to acquire a robust mutex using futexes to + block (and thus sets the FUTEX_WAITERS flag), and is unblocked when this + mutex is released. If Thread 2 concurrently acquires the lock and is + killed, Thread 1 can recover from the died owner but fail to restore the + FUTEX_WAITERS flag. This can lead to a Thread 3 that also blocked using + futexes at the same time as Thread 1 to not get woken up because + FUTEX_WAITERS is not set anymore. + + The fix for this is to ensure that we continue to preserve the + FUTEX_WAITERS flag whenever we may have set it or shared it with another + thread. This is the same requirement as in the algorithm for normal + mutexes, only that the robust mutexes need additional handling for died + owners and thus preserving the FUTEX_WAITERS flag cannot be done just in + the futex slowpath code. + + [BZ #20973] + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock_full): Fix lost + wake-up in robust mutexes. + * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): Likewise. + +Index: glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_lock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +@@ -183,6 +183,11 @@ __pthread_mutex_lock_full (pthread_mutex + &mutex->__data.__list.__next); + + oldval = mutex->__data.__lock; ++ /* This is set to FUTEX_WAITERS iff we might have shared the ++ FUTEX_WAITERS flag with other threads, and therefore need to keep it ++ set to avoid lost wake-ups. We have the same requirement in the ++ simple mutex algorithm. */ ++ unsigned int assume_other_futex_waiters = 0; + do + { + again: +@@ -191,9 +196,11 @@ __pthread_mutex_lock_full (pthread_mutex + /* The previous owner died. Try locking the mutex. */ + int newval = id; + #ifdef NO_INCR ++ /* We are not taking assume_other_futex_waiters into accoount ++ here simply because we'll set FUTEX_WAITERS anyway. */ + newval |= FUTEX_WAITERS; + #else +- newval |= (oldval & FUTEX_WAITERS); ++ newval |= (oldval & FUTEX_WAITERS) | assume_other_futex_waiters; + #endif + + newval +@@ -254,7 +261,11 @@ __pthread_mutex_lock_full (pthread_mutex + } + } + +- oldval = LLL_ROBUST_MUTEX_LOCK (mutex, id); ++ oldval = LLL_ROBUST_MUTEX_LOCK (mutex, ++ id | assume_other_futex_waiters); ++ /* See above. We set FUTEX_WAITERS and might have shared this flag ++ with other threads; thus, we need to preserve it. */ ++ assume_other_futex_waiters = FUTEX_WAITERS; + + if (__builtin_expect (mutex->__data.__owner + == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) +Index: glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_timedlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +@@ -142,13 +142,19 @@ pthread_mutex_timedlock (pthread_mutex_t + &mutex->__data.__list.__next); + + oldval = mutex->__data.__lock; ++ /* This is set to FUTEX_WAITERS iff we might have shared the ++ FUTEX_WAITERS flag with other threads, and therefore need to keep it ++ set to avoid lost wake-ups. We have the same requirement in the ++ simple mutex algorithm. */ ++ unsigned int assume_other_futex_waiters = 0; + do + { + again: + if ((oldval & FUTEX_OWNER_DIED) != 0) + { + /* The previous owner died. Try locking the mutex. */ +- int newval = id | (oldval & FUTEX_WAITERS); ++ int newval = id | (oldval & FUTEX_WAITERS) ++ | assume_other_futex_waiters; + + newval + = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, +@@ -203,8 +209,12 @@ pthread_mutex_timedlock (pthread_mutex_t + } + } + +- result = lll_robust_timedlock (mutex->__data.__lock, abstime, id, ++ result = lll_robust_timedlock (mutex->__data.__lock, abstime, ++ id | assume_other_futex_waiters, + PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); ++ /* See above. We set FUTEX_WAITERS and might have shared this flag ++ with other threads; thus, we need to preserve it. */ ++ assume_other_futex_waiters = FUTEX_WAITERS; + + if (__builtin_expect (mutex->__data.__owner + == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) diff --git a/SOURCES/glibc-rh1401665-1a.patch b/SOURCES/glibc-rh1401665-1a.patch new file mode 100644 index 0000000..7097ecf --- /dev/null +++ b/SOURCES/glibc-rh1401665-1a.patch @@ -0,0 +1,35 @@ +Upstream x86_64 uses the generic lll_futex_timed_wait_bitset, but for +rhel-7 we have not yet backported the larger generic futex cleanups. +To keep x86_64 using the tested code paths we add a generic +lll_futex_timed_wait_bitset. We do not do the same for i686, where we +let the code use the lll_futex_timed_wait fallback. For i686 it would +be harder to add lll_futex_timed_wait_bitset because it requires more +complex 6-argument syscall handling backports, so we do not do that. + +Not needed upstream. + +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +@@ -223,6 +223,20 @@ LLL_STUB_UNWIND_INFO_END + __status; \ + }) + ++#define lll_futex_timed_wait_bitset(futexp, val, timespec, clockbit, private) \ ++ ({ \ ++ INTERNAL_SYSCALL_DECL (__err); \ ++ long int __ret; \ ++ int __op = FUTEX_WAIT_BITSET | clockbit; \ ++ \ ++ __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \ ++ __lll_private_flag (__op, private), \ ++ (val), (timespec), NULL /* Unused. */, \ ++ FUTEX_BITSET_MATCH_ANY); \ ++ (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (__ret, __err)) \ ++ ? -INTERNAL_SYSCALL_ERRNO (__ret, __err) : 0); \ ++ }) ++ + + #define lll_futex_wake(futex, nr, private) \ + ({ \ diff --git a/SOURCES/glibc-rh1401665-1b.patch b/SOURCES/glibc-rh1401665-1b.patch new file mode 100644 index 0000000..455b6c5 --- /dev/null +++ b/SOURCES/glibc-rh1401665-1b.patch @@ -0,0 +1,1642 @@ +commit 65810f0ef05e8c9e333f17a44e77808b163ca298 +Author: Torvald Riegel +Date: Thu Dec 22 10:20:43 2016 +0100 + + robust mutexes: Fix broken x86 assembly by removing it + + lll_robust_unlock on i386 and x86_64 first sets the futex word to + FUTEX_WAITERS|0 before calling __lll_unlock_wake, which will set the + futex word to 0. If the thread is killed between these steps, then the + futex word will be FUTEX_WAITERS|0, and the kernel (at least current + upstream) will not set it to FUTEX_OWNER_DIED|FUTEX_WAITERS because 0 is + not equal to the TID of the crashed thread. + + The lll_robust_lock assembly code on i386 and x86_64 is not prepared to + deal with this case because the fastpath tries to only CAS 0 to TID and + not FUTEX_WAITERS|0 to TID; the slowpath simply waits until it can CAS 0 + to TID or the futex_word has the FUTEX_OWNER_DIED bit set. + + This issue is fixed by removing the custom x86 assembly code and using + the generic C code instead. However, instead of adding more duplicate + code to the custom x86 lowlevellock.h, the code of the lll_robust* functions + is inlined into the single call sites that exist for each of these functions + in the pthread_mutex_* functions. The robust mutex paths in the latter + have been slightly reorganized to make them simpler. + + This patch is meant to be easy to backport, so C11-style atomics are not + used. + +Index: glibc-2.17-c758a686/nptl/Makefile +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/Makefile ++++ glibc-2.17-c758a686/nptl/Makefile +@@ -100,7 +100,7 @@ libpthread-routines = nptl-init vars eve + cleanup_defer_compat unwind \ + pt-longjmp pt-cleanup\ + cancellation \ +- lowlevellock lowlevelrobustlock \ ++ lowlevellock \ + pt-vfork \ + ptw-write ptw-read ptw-close ptw-fcntl ptw-accept \ + ptw-connect ptw-recv ptw-recvfrom ptw-recvmsg ptw-send \ +Index: glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_lock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +@@ -34,14 +34,14 @@ + #define lll_trylock_elision(a,t) lll_trylock(a) + #endif + ++/* Some of the following definitions differ when pthread_mutex_cond_lock.c ++ includes this file. */ + #ifndef LLL_MUTEX_LOCK + # define LLL_MUTEX_LOCK(mutex) \ + lll_lock ((mutex)->__data.__lock, PTHREAD_MUTEX_PSHARED (mutex)) + # define LLL_MUTEX_TRYLOCK(mutex) \ + lll_trylock ((mutex)->__data.__lock) +-# define LLL_ROBUST_MUTEX_LOCK(mutex, id) \ +- lll_robust_lock ((mutex)->__data.__lock, id, \ +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)) ++# define LLL_ROBUST_MUTEX_LOCK_MODIFIER 0 + # define LLL_MUTEX_LOCK_ELISION(mutex) \ + lll_lock_elision ((mutex)->__data.__lock, (mutex)->__data.__elision, \ + PTHREAD_MUTEX_PSHARED (mutex)) +@@ -186,11 +186,21 @@ __pthread_mutex_lock_full (pthread_mutex + /* This is set to FUTEX_WAITERS iff we might have shared the + FUTEX_WAITERS flag with other threads, and therefore need to keep it + set to avoid lost wake-ups. We have the same requirement in the +- simple mutex algorithm. */ +- unsigned int assume_other_futex_waiters = 0; +- do ++ simple mutex algorithm. ++ We start with value zero for a normal mutex, and FUTEX_WAITERS if we ++ are building the special case mutexes for use from within condition ++ variables. */ ++ unsigned int assume_other_futex_waiters = LLL_ROBUST_MUTEX_LOCK_MODIFIER; ++ while (1) + { +- again: ++ /* Try to acquire the lock through a CAS from 0 (not acquired) to ++ our TID | assume_other_futex_waiters. */ ++ if (__glibc_likely ((oldval == 0) ++ && (atomic_compare_and_exchange_bool_acq ++ (&mutex->__data.__lock, ++ id | assume_other_futex_waiters, 0) == 0))) ++ break; ++ + if ((oldval & FUTEX_OWNER_DIED) != 0) + { + /* The previous owner died. Try locking the mutex. */ +@@ -210,7 +220,7 @@ __pthread_mutex_lock_full (pthread_mutex + if (newval != oldval) + { + oldval = newval; +- goto again; ++ continue; + } + + /* We got the mutex. */ +@@ -261,24 +271,47 @@ __pthread_mutex_lock_full (pthread_mutex + } + } + +- oldval = LLL_ROBUST_MUTEX_LOCK (mutex, +- id | assume_other_futex_waiters); +- /* See above. We set FUTEX_WAITERS and might have shared this flag +- with other threads; thus, we need to preserve it. */ +- assume_other_futex_waiters = FUTEX_WAITERS; +- +- if (__builtin_expect (mutex->__data.__owner +- == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) ++ /* We cannot acquire the mutex nor has its owner died. Thus, try ++ to block using futexes. Set FUTEX_WAITERS if necessary so that ++ other threads are aware that there are potentially threads ++ blocked on the futex. Restart if oldval changed in the ++ meantime. */ ++ if ((oldval & FUTEX_WAITERS) == 0) + { +- /* This mutex is now not recoverable. */ +- mutex->__data.__count = 0; +- lll_unlock (mutex->__data.__lock, +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); +- THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); +- return ENOTRECOVERABLE; ++ if (atomic_compare_and_exchange_bool_acq (&mutex->__data.__lock, ++ oldval | FUTEX_WAITERS, ++ oldval) ++ != 0) ++ { ++ oldval = mutex->__data.__lock; ++ continue; ++ } ++ oldval |= FUTEX_WAITERS; + } ++ ++ /* It is now possible that we share the FUTEX_WAITERS flag with ++ another thread; therefore, update assume_other_futex_waiters so ++ that we do not forget about this when handling other cases ++ above and thus do not cause lost wake-ups. */ ++ assume_other_futex_waiters |= FUTEX_WAITERS; ++ ++ /* Block using the futex and reload current lock value. */ ++ lll_futex_wait (&mutex->__data.__lock, oldval, ++ PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); ++ oldval = mutex->__data.__lock; ++ } ++ ++ /* We have acquired the mutex; check if it is still consistent. */ ++ if (__builtin_expect (mutex->__data.__owner ++ == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) ++ { ++ /* This mutex is now not recoverable. */ ++ mutex->__data.__count = 0; ++ int private = PTHREAD_ROBUST_MUTEX_PSHARED (mutex); ++ lll_unlock (mutex->__data.__lock, private); ++ THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); ++ return ENOTRECOVERABLE; + } +- while ((oldval & FUTEX_OWNER_DIED) != 0); + + mutex->__data.__count = 1; + ENQUEUE_MUTEX (mutex); +Index: glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_timedlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +@@ -147,9 +147,16 @@ pthread_mutex_timedlock (pthread_mutex_t + set to avoid lost wake-ups. We have the same requirement in the + simple mutex algorithm. */ + unsigned int assume_other_futex_waiters = 0; +- do ++ while (1) + { +- again: ++ /* Try to acquire the lock through a CAS from 0 (not acquired) to ++ our TID | assume_other_futex_waiters. */ ++ if (__glibc_likely ((oldval == 0) ++ && (atomic_compare_and_exchange_bool_acq ++ (&mutex->__data.__lock, ++ id | assume_other_futex_waiters, 0) == 0))) ++ break; ++ + if ((oldval & FUTEX_OWNER_DIED) != 0) + { + /* The previous owner died. Try locking the mutex. */ +@@ -162,7 +169,7 @@ pthread_mutex_timedlock (pthread_mutex_t + if (newval != oldval) + { + oldval = newval; +- goto again; ++ continue; + } + + /* We got the mutex. */ +@@ -209,30 +216,87 @@ pthread_mutex_timedlock (pthread_mutex_t + } + } + +- result = lll_robust_timedlock (mutex->__data.__lock, abstime, +- id | assume_other_futex_waiters, +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); +- /* See above. We set FUTEX_WAITERS and might have shared this flag +- with other threads; thus, we need to preserve it. */ +- assume_other_futex_waiters = FUTEX_WAITERS; ++ /* We are about to block; check whether the timeout is invalid. */ ++ if (abstime->tv_nsec < 0 || abstime->tv_nsec >= 1000000000) ++ return EINVAL; ++ /* Work around the fact that the kernel rejects negative timeout ++ values despite them being valid. */ ++ if (__glibc_unlikely (abstime->tv_sec < 0)) ++ return ETIMEDOUT; ++#if (!defined __ASSUME_FUTEX_CLOCK_REALTIME \ ++ || !defined lll_futex_timed_wait_bitset) ++ struct timeval tv; ++ struct timespec rt; ++ ++ /* Get the current time. */ ++ (void) __gettimeofday (&tv, NULL); ++ ++ /* Compute relative timeout. */ ++ rt.tv_sec = abstime->tv_sec - tv.tv_sec; ++ rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; ++ if (rt.tv_nsec < 0) ++ { ++ rt.tv_nsec += 1000000000; ++ --rt.tv_sec; ++ } + +- if (__builtin_expect (mutex->__data.__owner +- == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) ++ /* Already timed out? */ ++ if (rt.tv_sec < 0) ++ return ETIMEDOUT; ++#endif ++ ++ /* We cannot acquire the mutex nor has its owner died. Thus, try ++ to block using futexes. Set FUTEX_WAITERS if necessary so that ++ other threads are aware that there are potentially threads ++ blocked on the futex. Restart if oldval changed in the ++ meantime. */ ++ if ((oldval & FUTEX_WAITERS) == 0) + { +- /* This mutex is now not recoverable. */ +- mutex->__data.__count = 0; +- lll_unlock (mutex->__data.__lock, +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); +- THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); +- return ENOTRECOVERABLE; ++ if (atomic_compare_and_exchange_bool_acq (&mutex->__data.__lock, ++ oldval | FUTEX_WAITERS, ++ oldval) ++ != 0) ++ { ++ oldval = mutex->__data.__lock; ++ continue; ++ } ++ oldval |= FUTEX_WAITERS; + } + +- if (result == ETIMEDOUT || result == EINVAL) +- goto out; ++ /* It is now possible that we share the FUTEX_WAITERS flag with ++ another thread; therefore, update assume_other_futex_waiters so ++ that we do not forget about this when handling other cases ++ above and thus do not cause lost wake-ups. */ ++ assume_other_futex_waiters |= FUTEX_WAITERS; ++ ++ /* Block using the futex. */ ++#if (!defined __ASSUME_FUTEX_CLOCK_REALTIME \ ++ || !defined lll_futex_timed_wait_bitset) ++ lll_futex_timed wait (&mutex->__data.__lock, oldval, ++ &rt, PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); ++#else ++ int err = lll_futex_timed_wait_bitset (&mutex->__data.__lock, ++ oldval, abstime, FUTEX_CLOCK_REALTIME, ++ PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); ++ /* The futex call timed out. */ ++ if (err == -ETIMEDOUT) ++ return -err; ++#endif ++ /* Reload current lock value. */ ++ oldval = mutex->__data.__lock; ++ } + +- oldval = result; ++ /* We have acquired the mutex; check if it is still consistent. */ ++ if (__builtin_expect (mutex->__data.__owner ++ == PTHREAD_MUTEX_NOTRECOVERABLE, 0)) ++ { ++ /* This mutex is now not recoverable. */ ++ mutex->__data.__count = 0; ++ int private = PTHREAD_ROBUST_MUTEX_PSHARED (mutex); ++ lll_unlock (mutex->__data.__lock, private); ++ THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); ++ return ENOTRECOVERABLE; + } +- while ((oldval & FUTEX_OWNER_DIED) != 0); + + mutex->__data.__count = 1; + ENQUEUE_MUTEX (mutex); +Index: glibc-2.17-c758a686/nptl/pthread_mutex_unlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_unlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_unlock.c +@@ -96,6 +96,7 @@ internal_function + __pthread_mutex_unlock_full (pthread_mutex_t *mutex, int decr) + { + int newowner = 0; ++ int private; + + switch (PTHREAD_MUTEX_TYPE (mutex)) + { +@@ -149,9 +150,14 @@ __pthread_mutex_unlock_full (pthread_mut + /* One less user. */ + --mutex->__data.__nusers; + +- /* Unlock. */ +- lll_robust_unlock (mutex->__data.__lock, +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); ++ /* Unlock by setting the lock to 0 (not acquired); if the lock had ++ FUTEX_WAITERS set previously, then wake any waiters. ++ The unlock operation must be the last access to the mutex to not ++ violate the mutex destruction requirements (see __lll_unlock). */ ++ private = PTHREAD_ROBUST_MUTEX_PSHARED (mutex); ++ if (__glibc_unlikely ((atomic_exchange_rel (&mutex->__data.__lock, 0) ++ & FUTEX_WAITERS) != 0)) ++ lll_futex_wake (&mutex->__data.__lock, 1, private); + + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + break; +@@ -233,9 +239,9 @@ __pthread_mutex_unlock_full (pthread_mut + tid))) + { + int robust = mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP; +- int private = (robust +- ? PTHREAD_ROBUST_MUTEX_PSHARED (mutex) +- : PTHREAD_MUTEX_PSHARED (mutex)); ++ private = (robust ++ ? PTHREAD_ROBUST_MUTEX_PSHARED (mutex) ++ : PTHREAD_MUTEX_PSHARED (mutex)); + INTERNAL_SYSCALL_DECL (__err); + INTERNAL_SYSCALL (futex, __err, 2, &mutex->__data.__lock, + __lll_private_flag (FUTEX_UNLOCK_PI, private)); +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevelrobustlock.S +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevelrobustlock.S ++++ /dev/null +@@ -1,232 +0,0 @@ +-/* Copyright (C) 2002, 2003, 2004, 2006, 2007 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Ulrich Drepper , 2002. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include +-#include +-#include +-#include +-#include +- +- .text +- +-#define FUTEX_WAITERS 0x80000000 +-#define FUTEX_OWNER_DIED 0x40000000 +- +-#ifdef __ASSUME_PRIVATE_FUTEX +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $(FUTEX_WAIT | FUTEX_PRIVATE_FLAG), reg +-#else +-# if FUTEX_WAIT == 0 +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $FUTEX_PRIVATE_FLAG, reg ; \ +- andl %gs:PRIVATE_FUTEX, reg +-# else +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $FUTEX_PRIVATE_FLAG, reg ; \ +- andl %gs:PRIVATE_FUTEX, reg ; \ +- orl $FUTEX_WAIT, reg +-# endif +-#endif +- +- .globl __lll_robust_lock_wait +- .type __lll_robust_lock_wait,@function +- .hidden __lll_robust_lock_wait +- .align 16 +-__lll_robust_lock_wait: +- cfi_startproc +- pushl %edx +- cfi_adjust_cfa_offset(4) +- pushl %ebx +- cfi_adjust_cfa_offset(4) +- pushl %esi +- cfi_adjust_cfa_offset(4) +- cfi_offset(%edx, -8) +- cfi_offset(%ebx, -12) +- cfi_offset(%esi, -16) +- +- movl %edx, %ebx +- xorl %esi, %esi /* No timeout. */ +- LOAD_FUTEX_WAIT (%ecx) +- +-4: movl %eax, %edx +- orl $FUTEX_WAITERS, %edx +- +- testl $FUTEX_OWNER_DIED, %eax +- jnz 3f +- +- cmpl %edx, %eax /* NB: %edx == 2 */ +- je 1f +- +- LOCK +- cmpxchgl %edx, (%ebx) +- jnz 2f +- +-1: movl $SYS_futex, %eax +- ENTER_KERNEL +- +- movl (%ebx), %eax +- +-2: test %eax, %eax +- jne 4b +- +- movl %gs:TID, %edx +- orl $FUTEX_WAITERS, %edx +- LOCK +- cmpxchgl %edx, (%ebx) +- jnz 4b +- /* NB: %eax == 0 */ +- +-3: popl %esi +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%esi) +- popl %ebx +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%ebx) +- popl %edx +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%edx) +- ret +- cfi_endproc +- .size __lll_robust_lock_wait,.-__lll_robust_lock_wait +- +- +- .globl __lll_robust_timedlock_wait +- .type __lll_robust_timedlock_wait,@function +- .hidden __lll_robust_timedlock_wait +- .align 16 +-__lll_robust_timedlock_wait: +- cfi_startproc +- /* Check for a valid timeout value. */ +- cmpl $1000000000, 4(%edx) +- jae 3f +- +- pushl %edi +- cfi_adjust_cfa_offset(4) +- pushl %esi +- cfi_adjust_cfa_offset(4) +- pushl %ebx +- cfi_adjust_cfa_offset(4) +- pushl %ebp +- cfi_adjust_cfa_offset(4) +- cfi_offset(%edi, -8) +- cfi_offset(%esi, -12) +- cfi_offset(%ebx, -16) +- cfi_offset(%ebp, -20) +- +- /* Stack frame for the timespec and timeval structs. */ +- subl $12, %esp +- cfi_adjust_cfa_offset(12) +- +- movl %ecx, %ebp +- movl %edx, %edi +- +-1: movl %eax, 8(%esp) +- +- /* Get current time. */ +- movl %esp, %ebx +- xorl %ecx, %ecx +- movl $__NR_gettimeofday, %eax +- ENTER_KERNEL +- +- /* Compute relative timeout. */ +- movl 4(%esp), %eax +- movl $1000, %edx +- mul %edx /* Milli seconds to nano seconds. */ +- movl (%edi), %ecx +- movl 4(%edi), %edx +- subl (%esp), %ecx +- subl %eax, %edx +- jns 4f +- addl $1000000000, %edx +- subl $1, %ecx +-4: testl %ecx, %ecx +- js 8f /* Time is already up. */ +- +- /* Store relative timeout. */ +- movl %ecx, (%esp) +- movl %edx, 4(%esp) +- +- movl %ebp, %ebx +- +- movl 8(%esp), %edx +- movl %edx, %eax +- orl $FUTEX_WAITERS, %edx +- +- testl $FUTEX_OWNER_DIED, %eax +- jnz 6f +- +- cmpl %eax, %edx +- je 2f +- +- LOCK +- cmpxchgl %edx, (%ebx) +- movl $0, %ecx /* Must use mov to avoid changing cc. */ +- jnz 5f +- +-2: +- /* Futex call. */ +- movl %esp, %esi +- movl 20(%esp), %ecx +- LOAD_FUTEX_WAIT (%ecx) +- movl $SYS_futex, %eax +- ENTER_KERNEL +- movl %eax, %ecx +- +- movl (%ebx), %eax +- +-5: testl %eax, %eax +- jne 7f +- +- movl %gs:TID, %edx +- orl $FUTEX_WAITERS, %edx +- LOCK +- cmpxchgl %edx, (%ebx) +- jnz 7f +- +-6: addl $12, %esp +- cfi_adjust_cfa_offset(-12) +- popl %ebp +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%ebp) +- popl %ebx +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%ebx) +- popl %esi +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%esi) +- popl %edi +- cfi_adjust_cfa_offset(-4) +- cfi_restore(%edi) +- ret +- +-3: movl $EINVAL, %eax +- ret +- +- cfi_adjust_cfa_offset(28) +- cfi_offset(%edi, -8) +- cfi_offset(%esi, -12) +- cfi_offset(%ebx, -16) +- cfi_offset(%ebp, -20) +- /* Check whether the time expired. */ +-7: cmpl $-ETIMEDOUT, %ecx +- jne 1b +- +-8: movl $ETIMEDOUT, %eax +- jmp 6b +- cfi_endproc +- .size __lll_robust_timedlock_wait,.-__lll_robust_timedlock_wait +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/i386/i586/lowlevelrobustlock.S +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/i386/i586/lowlevelrobustlock.S ++++ /dev/null +@@ -1,19 +0,0 @@ +-/* Copyright (C) 2002, 2006 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Ulrich Drepper , 2002. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include "../i486/lowlevelrobustlock.S" +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/i386/i686/lowlevelrobustlock.S +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/i386/i686/lowlevelrobustlock.S ++++ /dev/null +@@ -1,19 +0,0 @@ +-/* Copyright (C) 2002, 2006 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Ulrich Drepper , 2002. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include "../i486/lowlevelrobustlock.S" +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h +@@ -338,27 +338,6 @@ LLL_STUB_UNWIND_INFO_END + } \ + }) + +-#define lll_robust_lock(futex, id, private) \ +- ({ int result, ignore1, ignore2; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %1, %2\n\t" \ +- "jnz _L_robust_lock_%=\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_lock_%=,@function\n" \ +- "_L_robust_lock_%=:\n" \ +- "1:\tleal %2, %%edx\n" \ +- "0:\tmovl %7, %%ecx\n" \ +- "2:\tcall __lll_robust_lock_wait\n" \ +- "3:\tjmp 18f\n" \ +- "4:\t.size _L_robust_lock_%=, 4b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_4 \ +- "18:" \ +- : "=a" (result), "=c" (ignore1), "=m" (futex), \ +- "=&d" (ignore2) \ +- : "0" (0), "1" (id), "m" (futex), "g" ((int) (private))\ +- : "memory"); \ +- result; }) +- + + /* Special version of lll_lock which causes the unlock function to + always wakeup waiters. */ +@@ -384,30 +363,6 @@ LLL_STUB_UNWIND_INFO_END + : "memory"); \ + }) + +- +-#define lll_robust_cond_lock(futex, id, private) \ +- ({ int result, ignore1, ignore2; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %1, %2\n\t" \ +- "jnz _L_robust_cond_lock_%=\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_cond_lock_%=,@function\n" \ +- "_L_robust_cond_lock_%=:\n" \ +- "1:\tleal %2, %%edx\n" \ +- "0:\tmovl %7, %%ecx\n" \ +- "2:\tcall __lll_robust_lock_wait\n" \ +- "3:\tjmp 18f\n" \ +- "4:\t.size _L_robust_cond_lock_%=, 4b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_4 \ +- "18:" \ +- : "=a" (result), "=c" (ignore1), "=m" (futex), \ +- "=&d" (ignore2) \ +- : "0" (0), "1" (id | FUTEX_WAITERS), "m" (futex), \ +- "g" ((int) (private)) \ +- : "memory"); \ +- result; }) +- +- + #define lll_timedlock(futex, timeout, private) \ + ({ int result, ignore1, ignore2, ignore3; \ + __asm __volatile (LOCK_INSTR "cmpxchgl %1, %3\n\t" \ +@@ -437,28 +392,6 @@ extern int __lll_timedlock_elision (int + #define lll_timedlock_elision(futex, adapt_count, timeout, private) \ + __lll_timedlock_elision(&(futex), &(adapt_count), timeout, private) + +-#define lll_robust_timedlock(futex, timeout, id, private) \ +- ({ int result, ignore1, ignore2, ignore3; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %1, %3\n\t" \ +- "jnz _L_robust_timedlock_%=\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_timedlock_%=,@function\n" \ +- "_L_robust_timedlock_%=:\n" \ +- "1:\tleal %3, %%ecx\n" \ +- "0:\tmovl %8, %%edx\n" \ +- "2:\tcall __lll_robust_timedlock_wait\n" \ +- "3:\tjmp 18f\n" \ +- "4:\t.size _L_robust_timedlock_%=, 4b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_4 \ +- "18:" \ +- : "=a" (result), "=c" (ignore1), "=&d" (ignore2), \ +- "=m" (futex), "=S" (ignore3) \ +- : "0" (0), "1" (id), "m" (futex), "m" (timeout), \ +- "4" ((int) (private)) \ +- : "memory"); \ +- result; }) +- + #if !IS_IN (libc) || defined UP + # define __lll_unlock_asm LOCK_INSTR "subl $1, %0\n\t" + #else +@@ -510,29 +443,6 @@ extern int __lll_timedlock_elision (int + } \ + }) + +-#define lll_robust_unlock(futex, private) \ +- (void) \ +- ({ int ignore, ignore2; \ +- __asm __volatile (LOCK_INSTR "andl %3, %0\n\t" \ +- "jne _L_robust_unlock_%=\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_unlock_%=,@function\n" \ +- "_L_robust_unlock_%=:\n\t" \ +- "1:\tleal %0, %%eax\n" \ +- "0:\tmovl %5, %%ecx\n" \ +- "2:\tcall __lll_unlock_wake\n" \ +- "3:\tjmp 18f\n" \ +- "4:\t.size _L_robust_unlock_%=, 4b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_4 \ +- "18:" \ +- : "=m" (futex), "=&a" (ignore), "=&c" (ignore2) \ +- : "i" (FUTEX_WAITERS), "m" (futex), \ +- "g" ((int) (private)) \ +- : "memory"); \ +- }) +- +- + #define lll_robust_dead(futex, private) \ + (void) \ + ({ int __ignore; \ +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevelrobustlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/lowlevelrobustlock.c ++++ /dev/null +@@ -1,127 +0,0 @@ +-/* Copyright (C) 2006-2012 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Jakub Jelinek , 2006. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include +-#include +-#include +-#include +-#include +- +- +-int +-__lll_robust_lock_wait (int *futex, int private) +-{ +- int oldval = *futex; +- int tid = THREAD_GETMEM (THREAD_SELF, tid); +- +- /* If the futex changed meanwhile try locking again. */ +- if (oldval == 0) +- goto try; +- +- do +- { +- if (__builtin_expect (oldval & FUTEX_OWNER_DIED, 0)) +- return oldval; +- +- int newval = oldval | FUTEX_WAITERS; +- if (oldval != newval +- && atomic_compare_and_exchange_bool_acq (futex, newval, oldval)) +- continue; +- +- lll_futex_wait (futex, newval, private); +- +- try: +- ; +- } +- while ((oldval = atomic_compare_and_exchange_val_acq (futex, +- tid | FUTEX_WAITERS, +- 0)) != 0); +- return 0; +-} +- +- +-int +-__lll_robust_timedlock_wait (int *futex, const struct timespec *abstime, +- int private) +-{ +- /* Reject invalid timeouts. */ +- if (abstime->tv_nsec < 0 || abstime->tv_nsec >= 1000000000) +- return EINVAL; +- +- int tid = THREAD_GETMEM (THREAD_SELF, tid); +- int oldval = *futex; +- +- /* If the futex changed meanwhile try locking again. */ +- if (oldval == 0) +- goto try; +- +- /* Work around the fact that the kernel rejects negative timeout values +- despite them being valid. */ +- if (__builtin_expect (abstime->tv_sec < 0, 0)) +- return ETIMEDOUT; +- +- do +- { +-#if (!defined __ASSUME_FUTEX_CLOCK_REALTIME \ +- || !defined lll_futex_timed_wait_bitset) +- struct timeval tv; +- struct timespec rt; +- +- /* Get the current time. */ +- (void) __gettimeofday (&tv, NULL); +- +- /* Compute relative timeout. */ +- rt.tv_sec = abstime->tv_sec - tv.tv_sec; +- rt.tv_nsec = abstime->tv_nsec - tv.tv_usec * 1000; +- if (rt.tv_nsec < 0) +- { +- rt.tv_nsec += 1000000000; +- --rt.tv_sec; +- } +- +- /* Already timed out? */ +- if (rt.tv_sec < 0) +- return ETIMEDOUT; +-#endif +- +- /* Wait. */ +- if (__builtin_expect (oldval & FUTEX_OWNER_DIED, 0)) +- return oldval; +- +- int newval = oldval | FUTEX_WAITERS; +- if (oldval != newval +- && atomic_compare_and_exchange_bool_acq (futex, newval, oldval)) +- continue; +- +-#if (!defined __ASSUME_FUTEX_CLOCK_REALTIME \ +- || !defined lll_futex_timed_wait_bitset) +- lll_futex_timed_wait (futex, newval, &rt, private); +-#else +- lll_futex_timed_wait_bitset (futex, newval, abstime, +- FUTEX_CLOCK_REALTIME, private); +-#endif +- +- try: +- ; +- } +- while ((oldval = atomic_compare_and_exchange_val_acq (futex, +- tid | FUTEX_WAITERS, +- 0)) != 0); +- +- return 0; +-} +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/lowlevelrobustlock.sym +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/lowlevelrobustlock.sym ++++ /dev/null +@@ -1,6 +0,0 @@ +-#include +-#include +- +--- +- +-TID offsetof (struct pthread, tid) +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c +@@ -11,9 +11,9 @@ + lll_cond_trylock ((mutex)->__data.__lock) + #define LLL_MUTEX_TRYLOCK_ELISION(mutex) LLL_MUTEX_TRYLOCK(mutex) + +-#define LLL_ROBUST_MUTEX_LOCK(mutex, id) \ +- lll_robust_cond_lock ((mutex)->__data.__lock, id, \ +- PTHREAD_ROBUST_MUTEX_PSHARED (mutex)) ++/* We need to assume that there are other threads blocked on the futex. ++ See __pthread_mutex_lock_full for further details. */ ++#define LLL_ROBUST_MUTEX_LOCK_MODIFIER FUTEX_WAITERS + #define __pthread_mutex_lock internal_function __pthread_mutex_cond_lock + #define __pthread_mutex_lock_full __pthread_mutex_cond_lock_full + #define NO_INCR +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +@@ -349,28 +349,6 @@ LLL_STUB_UNWIND_INFO_END + : "cx", "r11", "cc", "memory"); \ + }) \ + +-#define lll_robust_lock(futex, id, private) \ +- ({ int result, ignore1, ignore2; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %4, %2\n\t" \ +- "jnz 1f\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_lock_%=, @function\n" \ +- "_L_robust_lock_%=:\n" \ +- "1:\tlea %2, %%" RDI_LP "\n" \ +- "2:\tsub $128, %%" RSP_LP "\n" \ +- "3:\tcallq __lll_robust_lock_wait\n" \ +- "4:\tadd $128, %%" RSP_LP "\n" \ +- "5:\tjmp 24f\n" \ +- "6:\t.size _L_robust_lock_%=, 6b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_5 \ +- "24:" \ +- : "=S" (ignore1), "=D" (ignore2), "=m" (futex), \ +- "=a" (result) \ +- : "1" (id), "m" (futex), "3" (0), "0" (private) \ +- : "cx", "r11", "cc", "memory"); \ +- result; }) +- + #define lll_cond_lock(futex, private) \ + (void) \ + ({ int ignore1, ignore2, ignore3; \ +@@ -394,29 +372,6 @@ LLL_STUB_UNWIND_INFO_END + : "cx", "r11", "cc", "memory"); \ + }) + +-#define lll_robust_cond_lock(futex, id, private) \ +- ({ int result, ignore1, ignore2; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %4, %2\n\t" \ +- "jnz 1f\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_cond_lock_%=, @function\n" \ +- "_L_robust_cond_lock_%=:\n" \ +- "1:\tlea %2, %%" RDI_LP "\n" \ +- "2:\tsub $128, %%" RSP_LP "\n" \ +- "3:\tcallq __lll_robust_lock_wait\n" \ +- "4:\tadd $128, %%" RSP_LP "\n" \ +- "5:\tjmp 24f\n" \ +- "6:\t.size _L_robust_cond_lock_%=, 6b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_5 \ +- "24:" \ +- : "=S" (ignore1), "=D" (ignore2), "=m" (futex), \ +- "=a" (result) \ +- : "1" (id | FUTEX_WAITERS), "m" (futex), "3" (0), \ +- "0" (private) \ +- : "cx", "r11", "cc", "memory"); \ +- result; }) +- + #define lll_timedlock(futex, timeout, private) \ + ({ int result, ignore1, ignore2, ignore3; \ + __asm __volatile (LOCK_INSTR "cmpxchgl %1, %4\n\t" \ +@@ -448,30 +403,6 @@ extern int __lll_timedlock_elision (int + #define lll_timedlock_elision(futex, adapt_count, timeout, private) \ + __lll_timedlock_elision(&(futex), &(adapt_count), timeout, private) + +-#define lll_robust_timedlock(futex, timeout, id, private) \ +- ({ int result, ignore1, ignore2, ignore3; \ +- __asm __volatile (LOCK_INSTR "cmpxchgl %1, %4\n\t" \ +- "jnz 1f\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_timedlock_%=, @function\n" \ +- "_L_robust_timedlock_%=:\n" \ +- "1:\tlea %4, %%" RDI_LP "\n" \ +- "0:\tmov %8, %%" RDX_LP "\n" \ +- "2:\tsub $128, %%" RSP_LP "\n" \ +- "3:\tcallq __lll_robust_timedlock_wait\n" \ +- "4:\tadd $128, %%" RSP_LP "\n" \ +- "5:\tjmp 24f\n" \ +- "6:\t.size _L_robust_timedlock_%=, 6b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_6 \ +- "24:" \ +- : "=a" (result), "=D" (ignore1), "=S" (ignore2), \ +- "=&d" (ignore3), "=m" (futex) \ +- : "0" (0), "1" (id), "m" (futex), "m" (timeout), \ +- "2" (private) \ +- : "memory", "cx", "cc", "r10", "r11"); \ +- result; }) +- + #if !IS_IN (libc) || defined UP + # define __lll_unlock_asm_start LOCK_INSTR "decl %0\n\t" \ + "jne 1f\n\t" +@@ -524,31 +455,6 @@ extern int __lll_timedlock_elision (int + : "ax", "cx", "r11", "cc", "memory"); \ + }) + +-#define lll_robust_unlock(futex, private) \ +- do \ +- { \ +- int ignore; \ +- __asm __volatile (LOCK_INSTR "andl %2, %0\n\t" \ +- "jne 1f\n\t" \ +- ".subsection 1\n\t" \ +- ".type _L_robust_unlock_%=, @function\n" \ +- "_L_robust_unlock_%=:\n" \ +- "1:\tlea %0, %%" RDI_LP "\n" \ +- "2:\tsub $128, %%" RSP_LP "\n" \ +- "3:\tcallq __lll_unlock_wake\n" \ +- "4:\tadd $128, %%" RSP_LP "\n" \ +- "5:\tjmp 24f\n" \ +- "6:\t.size _L_robust_unlock_%=, 6b-1b\n\t" \ +- ".previous\n" \ +- LLL_STUB_UNWIND_INFO_5 \ +- "24:" \ +- : "=m" (futex), "=&D" (ignore) \ +- : "i" (FUTEX_WAITERS), "m" (futex), \ +- "S" (private) \ +- : "ax", "cx", "r11", "cc", "memory"); \ +- } \ +- while (0) +- + #define lll_robust_dead(futex, private) \ + do \ + { \ +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelrobustlock.S +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelrobustlock.S ++++ /dev/null +@@ -1,306 +0,0 @@ +-/* Copyright (C) 2002, 2011=2007, 2009, 2010 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Ulrich Drepper , 2002. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include +-#include +-#include +-#include +-#include +- +- .text +- +-#define FUTEX_WAITERS 0x80000000 +-#define FUTEX_OWNER_DIED 0x40000000 +- +-#ifdef __ASSUME_PRIVATE_FUTEX +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $(FUTEX_WAIT | FUTEX_PRIVATE_FLAG), reg +-# define LOAD_FUTEX_WAIT_ABS(reg) \ +- xorl $(FUTEX_WAIT_BITSET | FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME), reg +-#else +-# if FUTEX_WAIT == 0 +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $FUTEX_PRIVATE_FLAG, reg ; \ +- andl %fs:PRIVATE_FUTEX, reg +-# else +-# define LOAD_FUTEX_WAIT(reg) \ +- xorl $FUTEX_PRIVATE_FLAG, reg ; \ +- andl %fs:PRIVATE_FUTEX, reg ; \ +- orl $FUTEX_WAIT, reg +-# endif +-# define LOAD_FUTEX_WAIT_ABS(reg) \ +- xorl $FUTEX_PRIVATE_FLAG, reg ; \ +- andl %fs:PRIVATE_FUTEX, reg ; \ +- orl $FUTEX_WAIT_BITSET | FUTEX_CLOCK_REALTIME, reg +-#endif +- +- +- .globl __lll_robust_lock_wait +- .type __lll_robust_lock_wait,@function +- .hidden __lll_robust_lock_wait +- .align 16 +-__lll_robust_lock_wait: +- cfi_startproc +- pushq %r10 +- cfi_adjust_cfa_offset(8) +- pushq %rdx +- cfi_adjust_cfa_offset(8) +- cfi_offset(%r10, -16) +- cfi_offset(%rdx, -24) +- +- xorq %r10, %r10 /* No timeout. */ +- LOAD_FUTEX_WAIT (%esi) +- +-4: movl %eax, %edx +- orl $FUTEX_WAITERS, %edx +- +- testl $FUTEX_OWNER_DIED, %eax +- jnz 3f +- +- cmpl %edx, %eax +- je 1f +- +- LOCK +- cmpxchgl %edx, (%rdi) +- jnz 2f +- +-1: movl $SYS_futex, %eax +- syscall +- +- movl (%rdi), %eax +- +-2: testl %eax, %eax +- jne 4b +- +- movl %fs:TID, %edx +- orl $FUTEX_WAITERS, %edx +- LOCK +- cmpxchgl %edx, (%rdi) +- jnz 4b +- /* NB: %rax == 0 */ +- +-3: popq %rdx +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%rdx) +- popq %r10 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r10) +- retq +- cfi_endproc +- .size __lll_robust_lock_wait,.-__lll_robust_lock_wait +- +- +- .globl __lll_robust_timedlock_wait +- .type __lll_robust_timedlock_wait,@function +- .hidden __lll_robust_timedlock_wait +- .align 16 +-__lll_robust_timedlock_wait: +- cfi_startproc +-# ifndef __ASSUME_FUTEX_CLOCK_REALTIME +-# ifdef PIC +- cmpl $0, __have_futex_clock_realtime(%rip) +-# else +- cmpl $0, __have_futex_clock_realtime +-# endif +- je .Lreltmo +-# endif +- +- cmpq $0, (%rdx) +- js 7f +- +- pushq %r9 +- cfi_adjust_cfa_offset(8) +- cfi_rel_offset(%r9, 0) +- movq %rdx, %r10 +- movl $0xffffffff, %r9d +- LOAD_FUTEX_WAIT_ABS (%esi) +- +-1: testl $FUTEX_OWNER_DIED, %eax +- jnz 3f +- +- movl %eax, %edx +- orl $FUTEX_WAITERS, %edx +- +- cmpl %eax, %edx +- je 5f +- +- LOCK +- cmpxchgl %edx, (%rdi) +- movq $0, %rcx /* Must use mov to avoid changing cc. */ +- jnz 6f +- +-5: movl $SYS_futex, %eax +- syscall +- movl %eax, %ecx +- +- movl (%rdi), %eax +- +-6: testl %eax, %eax +- jne 2f +- +- movl %fs:TID, %edx +- orl $FUTEX_WAITERS, %edx +- LOCK +- cmpxchgl %edx, (%rdi) +- jnz 2f +- +-3: popq %r9 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r9) +- retq +- +- cfi_adjust_cfa_offset(8) +- cfi_rel_offset(%r9, 0) +- /* Check whether the time expired. */ +-2: cmpl $-ETIMEDOUT, %ecx +- je 4f +- cmpl $-EINVAL, %ecx +- jne 1b +- +-4: movl %ecx, %eax +- negl %eax +- jmp 3b +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r9) +- +-7: movl $ETIMEDOUT, %eax +- retq +- +- +-# ifndef __ASSUME_FUTEX_CLOCK_REALTIME +-.Lreltmo: +- /* Check for a valid timeout value. */ +- cmpq $1000000000, 8(%rdx) +- jae 3f +- +- pushq %r8 +- cfi_adjust_cfa_offset(8) +- pushq %r9 +- cfi_adjust_cfa_offset(8) +- pushq %r12 +- cfi_adjust_cfa_offset(8) +- pushq %r13 +- cfi_adjust_cfa_offset(8) +- cfi_offset(%r8, -16) +- cfi_offset(%r9, -24) +- cfi_offset(%r12, -32) +- cfi_offset(%r13, -40) +- pushq %rsi +- cfi_adjust_cfa_offset(8) +- +- /* Stack frame for the timespec and timeval structs. */ +- subq $32, %rsp +- cfi_adjust_cfa_offset(32) +- +- movq %rdi, %r12 +- movq %rdx, %r13 +- +-1: movq %rax, 16(%rsp) +- +- /* Get current time. */ +- movq %rsp, %rdi +- xorl %esi, %esi +- /* This call works because we directly jump to a system call entry +- which preserves all the registers. */ +- call JUMPTARGET(__gettimeofday) +- +- /* Compute relative timeout. */ +- movq 8(%rsp), %rax +- movl $1000, %edi +- mul %rdi /* Milli seconds to nano seconds. */ +- movq (%r13), %rdi +- movq 8(%r13), %rsi +- subq (%rsp), %rdi +- subq %rax, %rsi +- jns 4f +- addq $1000000000, %rsi +- decq %rdi +-4: testq %rdi, %rdi +- js 8f /* Time is already up. */ +- +- /* Futex call. */ +- movq %rdi, (%rsp) /* Store relative timeout. */ +- movq %rsi, 8(%rsp) +- +- movq 16(%rsp), %rdx +- movl %edx, %eax +- orl $FUTEX_WAITERS, %edx +- +- testl $FUTEX_OWNER_DIED, %eax +- jnz 6f +- +- cmpl %eax, %edx +- je 2f +- +- LOCK +- cmpxchgl %edx, (%r12) +- movq $0, %rcx /* Must use mov to avoid changing cc. */ +- jnz 5f +- +-2: movq %rsp, %r10 +- movl 32(%rsp), %esi +- LOAD_FUTEX_WAIT (%esi) +- movq %r12, %rdi +- movl $SYS_futex, %eax +- syscall +- movq %rax, %rcx +- +- movl (%r12), %eax +- +-5: testl %eax, %eax +- jne 7f +- +- movl %fs:TID, %edx +- orl $FUTEX_WAITERS, %edx +- LOCK +- cmpxchgl %edx, (%r12) +- jnz 7f +- +-6: addq $40, %rsp +- cfi_adjust_cfa_offset(-40) +- popq %r13 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r13) +- popq %r12 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r12) +- popq %r9 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r9) +- popq %r8 +- cfi_adjust_cfa_offset(-8) +- cfi_restore(%r8) +- retq +- +-3: movl $EINVAL, %eax +- retq +- +- cfi_adjust_cfa_offset(72) +- cfi_offset(%r8, -16) +- cfi_offset(%r9, -24) +- cfi_offset(%r12, -32) +- cfi_offset(%r13, -40) +- /* Check whether the time expired. */ +-7: cmpl $-ETIMEDOUT, %ecx +- jne 1b +- +-8: movl $ETIMEDOUT, %eax +- jmp 6b +-#endif +- cfi_endproc +- .size __lll_robust_timedlock_wait,.-__lll_robust_timedlock_wait +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S ++++ /dev/null +@@ -1,278 +0,0 @@ +-/* Copyright (C) 2003-2012 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#include +-#include +-#include +-#include +-#include +-#include "lowlevel-atomic.h" +- +- .text +- +-#define FUTEX_WAITERS 0x80000000 +-#define FUTEX_OWNER_DIED 0x40000000 +- +-#ifdef __ASSUME_PRIVATE_FUTEX +-# define LOAD_FUTEX_WAIT(reg,tmp,tmp2) \ +- mov #(FUTEX_WAIT | FUTEX_PRIVATE_FLAG), tmp; \ +- extu.b tmp, tmp; \ +- xor tmp, reg +-#else +-# if FUTEX_WAIT == 0 +-# define LOAD_FUTEX_WAIT(reg,tmp,tmp2) \ +- stc gbr, tmp ; \ +- mov.w 99f, tmp2 ; \ +- add tmp2, tmp ; \ +- mov.l @tmp, tmp2 ; \ +- bra 98f ; \ +- mov #FUTEX_PRIVATE_FLAG, tmp ; \ +-99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \ +-98: extu.b tmp, tmp ; \ +- xor tmp, reg ; \ +- and tmp2, reg +-# else +-# define LOAD_FUTEX_WAIT(reg,tmp,tmp2) \ +- stc gbr, tmp ; \ +- mov.w 99f, tmp2 ; \ +- add tmp2, tmp ; \ +- mov.l @tmp, tmp2 ; \ +- bra 98f ; \ +- mov #FUTEX_PRIVATE_FLAG, tmp ; \ +-99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \ +-98: extu.b tmp, tmp ; \ +- xor tmp, reg ; \ +- and tmp2, reg ; \ +- mov #FUTEX_WAIT, tmp ; \ +- or tmp, reg +-# endif +-#endif +- +- .globl __lll_robust_lock_wait +- .type __lll_robust_lock_wait,@function +- .hidden __lll_robust_lock_wait +- .align 5 +- cfi_startproc +-__lll_robust_lock_wait: +- mov.l r8, @-r15 +- cfi_adjust_cfa_offset(4) +- cfi_rel_offset (r8, 0) +- mov r5, r8 +- mov #0, r7 /* No timeout. */ +- mov r6, r5 +- LOAD_FUTEX_WAIT (r5, r0, r1) +- +-4: +- mov r4, r6 +- mov.l .L_FUTEX_WAITERS, r0 +- or r0, r6 +- shlr r0 /* r0 = FUTEX_OWNER_DIED */ +- tst r0, r4 +- bf/s 3f +- cmp/eq r4, r6 +- bt 1f +- +- CMPXCHG (r4, @r8, r6, r2) +- bf 2f +- +-1: +- mov r8, r4 +- mov #SYS_futex, r3 +- extu.b r3, r3 +- trapa #0x14 +- SYSCALL_INST_PAD +- +- mov.l @r8, r2 +- +-2: +- tst r2, r2 +- bf/s 4b +- mov r2, r4 +- +- stc gbr, r1 +- mov.w .Ltidoff, r2 +- add r2, r1 +- mov.l @r1, r6 +- mov #0, r3 +- CMPXCHG (r3, @r8, r6, r4) +- bf 4b +- mov #0, r4 +- +-3: +- mov.l @r15+, r8 +- cfi_adjust_cfa_offset (-4) +- cfi_restore (r8) +- ret +- mov r4, r0 +- cfi_endproc +- .align 2 +-.L_FUTEX_WAITERS: +- .long FUTEX_WAITERS +-.Ltidoff: +- .word TID - TLS_PRE_TCB_SIZE +- .size __lll_robust_lock_wait,.-__lll_robust_lock_wait +- +- +- .globl __lll_robust_timedlock_wait +- .type __lll_robust_timedlock_wait,@function +- .hidden __lll_robust_timedlock_wait +- .align 5 +- cfi_startproc +-__lll_robust_timedlock_wait: +- /* Check for a valid timeout value. */ +- mov.l @(4,r6), r1 +- mov.l .L1g, r0 +- cmp/hs r0, r1 +- bt 3f +- +- cfi_remember_state +- +- mov.l r11, @-r15 +- cfi_adjust_cfa_offset(4) +- cfi_rel_offset (r11, 0) +- mov.l r10, @-r15 +- cfi_adjust_cfa_offset(4) +- cfi_rel_offset (r10, 0) +- mov.l r9, @-r15 +- cfi_adjust_cfa_offset(4) +- cfi_rel_offset (r9, 0) +- mov.l r8, @-r15 +- cfi_adjust_cfa_offset(4) +- cfi_rel_offset (r8, 0) +- mov r7, r11 +- mov r4, r10 +- mov r6, r9 +- mov r5, r8 +- +- /* Stack frame for the timespec and timeval structs. */ +- add #-8, r15 +- cfi_adjust_cfa_offset(8) +- +-1: +- /* Get current time. */ +- mov r15, r4 +- mov #0, r5 +- mov #__NR_gettimeofday, r3 +- trapa #0x12 +- SYSCALL_INST_PAD +- +- /* Compute relative timeout. */ +- mov.l @(4,r15), r0 +- mov.w .L1k, r1 +- dmulu.l r0, r1 /* Micro seconds to nano seconds. */ +- mov.l @r9, r2 +- mov.l @(4,r9), r3 +- mov.l @r15, r0 +- sts macl, r1 +- sub r0, r2 +- clrt +- subc r1, r3 +- bf 4f +- mov.l .L1g, r1 +- add r1, r3 +- add #-1, r2 +-4: +- cmp/pz r2 +- bf 8f /* Time is already up. */ +- +- mov.l r2, @r15 /* Store relative timeout. */ +- mov.l r3, @(4,r15) +- +- mov r10, r6 +- mov.l .L_FUTEX_WAITERS2, r0 +- or r0, r6 +- shlr r0 /* r0 = FUTEX_OWNER_DIED */ +- tst r0, r4 +- bf/s 6f +- cmp/eq r4, r6 +- bt 2f +- +- CMPXCHG (r4, @r8, r6, r2) +- bf/s 5f +- mov #0, r5 +- +-2: +- mov r8, r4 +- mov r11, r5 +- LOAD_FUTEX_WAIT (r5, r0, r1) +- mov r10, r6 +- mov r15, r7 +- mov #SYS_futex, r3 +- extu.b r3, r3 +- trapa #0x14 +- SYSCALL_INST_PAD +- mov r0, r5 +- +- mov.l @r8, r2 +- +-5: +- tst r2, r2 +- bf/s 7f +- mov r2, r10 +- +- stc gbr, r1 +- mov.w .Ltidoff2, r2 +- add r2, r1 +- mov.l @r1, r4 +- mov #0, r3 +- CMPXCHG (r3, @r8, r4, r10) +- bf 7f +- mov #0, r0 +- +-6: +- cfi_remember_state +- add #8, r15 +- cfi_adjust_cfa_offset (-8) +- mov.l @r15+, r8 +- cfi_adjust_cfa_offset (-4) +- cfi_restore (r8) +- mov.l @r15+, r9 +- cfi_adjust_cfa_offset (-4) +- cfi_restore (r9) +- mov.l @r15+, r10 +- cfi_adjust_cfa_offset (-4) +- cfi_restore (r10) +- rts +- mov.l @r15+, r11 +- /* Omit CFI for restore in delay slot. */ +- cfi_restore_state +- +-7: +- /* Check whether the time expired. */ +- mov #-ETIMEDOUT, r1 +- cmp/eq r5, r1 +- bf 1b +- +-8: +- bra 6b +- mov #ETIMEDOUT, r0 +- +- cfi_restore_state +-3: +- rts +- mov #EINVAL, r0 +- cfi_endproc +- .align 2 +-.L_FUTEX_WAITERS2: +- .long FUTEX_WAITERS +-.L1g: +- .long 1000000000 +-.Ltidoff2: +- .word TID - TLS_PRE_TCB_SIZE +-.L1k: +- .word 1000 +- .size __lll_robust_timedlock_wait,.-__lll_robust_timedlock_wait +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/Makefile +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/Makefile ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/Makefile +@@ -24,7 +24,7 @@ libpthread-sysdep_routines += pt-fork pt + + gen-as-const-headers += lowlevelcond.sym lowlevelrwlock.sym \ + lowlevelbarrier.sym unwindbuf.sym \ +- lowlevelrobustlock.sym pthread-pi-defines.sym ++ pthread-pi-defines.sym + endif + + ifeq ($(subdir),posix) diff --git a/SOURCES/glibc-rh1401665-1c.patch b/SOURCES/glibc-rh1401665-1c.patch new file mode 100644 index 0000000..d628c2c --- /dev/null +++ b/SOURCES/glibc-rh1401665-1c.patch @@ -0,0 +1,26 @@ +This is needed for i686 which doesn't have futex_timed_wait_bitset. + +commit 35df5a77f3ad2a35761631928440d2994a9e4bc5 +Author: Carlos O'Donell +Date: Tue Jun 12 16:17:05 2018 -0400 + + Fix fallback path in __pthread_mutex_timedlock (). + + Fix the typo in the fallback path in __pthread_mutex_timedlock () + whic hcalls lll_futex_timed_wait (). This is only useful for cases + where the patch is being backported to older distributions where + only lll_futex_timed_wait () is available. + +Index: glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_timedlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +@@ -272,7 +272,7 @@ pthread_mutex_timedlock (pthread_mutex_t + /* Block using the futex. */ + #if (!defined __ASSUME_FUTEX_CLOCK_REALTIME \ + || !defined lll_futex_timed_wait_bitset) +- lll_futex_timed wait (&mutex->__data.__lock, oldval, ++ lll_futex_timed_wait (&mutex->__data.__lock, oldval, + &rt, PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); + #else + int err = lll_futex_timed_wait_bitset (&mutex->__data.__lock, diff --git a/SOURCES/glibc-rh1401665-2.patch b/SOURCES/glibc-rh1401665-2.patch new file mode 100644 index 0000000..c2a8419 --- /dev/null +++ b/SOURCES/glibc-rh1401665-2.patch @@ -0,0 +1,49 @@ +commit 8e31cafb268938729a1314806a924d73fb1991c5 +Author: Torvald Riegel +Date: Wed Dec 21 13:37:19 2016 +0100 + + Clear list of acquired robust mutexes in the child process after forking. + + Robust mutexes acquired at the time of a call to fork() do not remain + acquired by the forked child process. We have to clear the list of + acquired robust mutexes before registering this list with the kernel; + otherwise, if some of the robust mutexes are process-shared, the parent + process can alter the child's robust mutex list, which can lead to + deadlocks or even modification of memory that may not be occupied by a + mutex anymore. + + [BZ #19402] + * sysdeps/nptl/fork.c (__libc_fork): Clear list of acquired robust + mutexes. + +Index: glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/fork.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/sysdeps/unix/sysv/linux/fork.c ++++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/fork.c +@@ -161,12 +161,20 @@ __libc_fork (void) + #endif + + #ifdef __NR_set_robust_list +- /* Initialize the robust mutex list which has been reset during +- the fork. We do not check for errors since if it fails here +- it failed at process start as well and noone could have used +- robust mutexes. We also do not have to set +- self->robust_head.futex_offset since we inherit the correct +- value from the parent. */ ++ /* Initialize the robust mutex list setting in the kernel which has ++ been reset during the fork. We do not check for errors because if ++ it fails here, it must have failed at process startup as well and ++ nobody could have used robust mutexes. ++ Before we do that, we have to clear the list of robust mutexes ++ because we do not inherit ownership of mutexes from the parent. ++ We do not have to set self->robust_head.futex_offset since we do ++ inherit the correct value from the parent. We do not need to clear ++ the pending operation because it must have been zero when fork was ++ called. */ ++# ifdef __PTHREAD_MUTEX_HAVE_PREV ++ self->robust_prev = &self->robust_head; ++# endif ++ self->robust_head.list = &self->robust_head; + # ifdef SHARED + if (__builtin_expect (__libc_pthread_functions_init, 0)) + PTHFCT_CALL (ptr_set_robust, (self)); diff --git a/SOURCES/glibc-rh1401665-3.patch b/SOURCES/glibc-rh1401665-3.patch new file mode 100644 index 0000000..5d698d1 --- /dev/null +++ b/SOURCES/glibc-rh1401665-3.patch @@ -0,0 +1,406 @@ +commit 8f9450a0b7a9e78267e8ae1ab1000ebca08e473e +Author: Torvald Riegel +Date: Sat Dec 24 00:40:46 2016 +0100 + + Add compiler barriers around modifications of the robust mutex list. + + Any changes to the per-thread list of robust mutexes currently acquired as + well as the pending-operations entry are not simply sequential code but + basically concurrent with any actions taken by the kernel when it tries + to clean up after a crash. This is not quite like multi-thread concurrency + but more like signal-handler concurrency. + This patch fixes latent bugs by adding compiler barriers where necessary so + that it is ensured that the kernel crash handling sees consistent data. + + This is meant to be easy to backport, so we do not use C11-style signal + fences yet. + + * nptl/descr.h (ENQUEUE_MUTEX_BOTH, DEQUEUE_MUTEX): Add compiler + barriers and comments. + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock_full): Likewise. + * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): Likewise. + * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_full): Likewise. + +Index: glibc-2.17-c758a686/nptl/descr.h +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/descr.h ++++ glibc-2.17-c758a686/nptl/descr.h +@@ -180,7 +180,16 @@ struct pthread + but the pointer to the next/previous element of the list points + in the middle of the object, the __next element. Whenever + casting to __pthread_list_t we need to adjust the pointer +- first. */ ++ first. ++ These operations are effectively concurrent code in that the thread ++ can get killed at any point in time and the kernel takes over. Thus, ++ the __next elements are a kind of concurrent list and we need to ++ enforce using compiler barriers that the individual operations happen ++ in such a way that the kernel always sees a consistent list. The ++ backward links (ie, the __prev elements) are not used by the kernel. ++ FIXME We should use relaxed MO atomic operations here and signal fences ++ because this kind of concurrency is similar to synchronizing with a ++ signal handler. */ + # define QUEUE_PTR_ADJUST (offsetof (__pthread_list_t, __next)) + + # define ENQUEUE_MUTEX_BOTH(mutex, val) \ +@@ -192,6 +201,8 @@ struct pthread + mutex->__data.__list.__next = THREAD_GETMEM (THREAD_SELF, \ + robust_head.list); \ + mutex->__data.__list.__prev = (void *) &THREAD_SELF->robust_head; \ ++ /* Ensure that the new list entry is ready before we insert it. */ \ ++ __asm ("" ::: "memory"); \ + THREAD_SETMEM (THREAD_SELF, robust_head.list, \ + (void *) (((uintptr_t) &mutex->__data.__list.__next) \ + | val)); \ +@@ -206,6 +217,9 @@ struct pthread + ((char *) (((uintptr_t) mutex->__data.__list.__prev) & ~1ul) \ + - QUEUE_PTR_ADJUST); \ + prev->__next = mutex->__data.__list.__next; \ ++ /* Ensure that we remove the entry from the list before we change the \ ++ __next pointer of the entry, which is read by the kernel. */ \ ++ __asm ("" ::: "memory"); \ + mutex->__data.__list.__prev = NULL; \ + mutex->__data.__list.__next = NULL; \ + } while (0) +@@ -220,6 +234,8 @@ struct pthread + do { \ + mutex->__data.__list.__next \ + = THREAD_GETMEM (THREAD_SELF, robust_list.__next); \ ++ /* Ensure that the new list entry is ready before we insert it. */ \ ++ __asm ("" ::: "memory"); \ + THREAD_SETMEM (THREAD_SELF, robust_list.__next, \ + (void *) (((uintptr_t) &mutex->__data.__list) | val)); \ + } while (0) +@@ -240,6 +256,9 @@ struct pthread + } \ + \ + runp->__next = next->__next; \ ++ /* Ensure that we remove the entry from the list before we change the \ ++ __next pointer of the entry, which is read by the kernel. */ \ ++ __asm ("" ::: "memory"); \ + mutex->__data.__list.__next = NULL; \ + } \ + } while (0) +Index: glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_lock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +@@ -181,6 +181,9 @@ __pthread_mutex_lock_full (pthread_mutex + case PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP: + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + &mutex->__data.__list.__next); ++ /* We need to set op_pending before starting the operation. Also ++ see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + + oldval = mutex->__data.__lock; + /* This is set to FUTEX_WAITERS iff we might have shared the +@@ -228,7 +231,12 @@ __pthread_mutex_lock_full (pthread_mutex + /* But it is inconsistent unless marked otherwise. */ + mutex->__data.__owner = PTHREAD_MUTEX_INCONSISTENT; + ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Note that we deliberately exit here. If we fall +@@ -250,6 +258,8 @@ __pthread_mutex_lock_full (pthread_mutex + int kind = PTHREAD_MUTEX_TYPE (mutex); + if (kind == PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. Also see comments at ENQUEUE_MUTEX. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + NULL); + return EDEADLK; +@@ -257,6 +267,8 @@ __pthread_mutex_lock_full (pthread_mutex + + if (kind == PTHREAD_MUTEX_ROBUST_RECURSIVE_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + NULL); + +@@ -309,12 +321,19 @@ __pthread_mutex_lock_full (pthread_mutex + mutex->__data.__count = 0; + int private = PTHREAD_ROBUST_MUTEX_PSHARED (mutex); + lll_unlock (mutex->__data.__lock, private); ++ /* FIXME This violates the mutex destruction requirements. See ++ __pthread_mutex_unlock_full. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return ENOTRECOVERABLE; + } + + mutex->__data.__count = 1; ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + break; + +@@ -331,10 +350,15 @@ __pthread_mutex_lock_full (pthread_mutex + int robust = mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP; + + if (robust) +- /* Note: robust PI futexes are signaled by setting bit 0. */ +- THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, +- (void *) (((uintptr_t) &mutex->__data.__list.__next) +- | 1)); ++ { ++ /* Note: robust PI futexes are signaled by setting bit 0. */ ++ THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, ++ (void *) (((uintptr_t) &mutex->__data.__list.__next) ++ | 1)); ++ /* We need to set op_pending before starting the operation. Also ++ see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); ++ } + + oldval = mutex->__data.__lock; + +@@ -343,12 +367,16 @@ __pthread_mutex_lock_full (pthread_mutex + { + if (kind == PTHREAD_MUTEX_ERRORCHECK_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return EDEADLK; + } + + if (kind == PTHREAD_MUTEX_RECURSIVE_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Just bump the counter. */ +@@ -411,7 +439,12 @@ __pthread_mutex_lock_full (pthread_mutex + /* But it is inconsistent unless marked otherwise. */ + mutex->__data.__owner = PTHREAD_MUTEX_INCONSISTENT; + ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX_PI (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Note that we deliberately exit here. If we fall +@@ -439,6 +472,8 @@ __pthread_mutex_lock_full (pthread_mutex + PTHREAD_ROBUST_MUTEX_PSHARED (mutex)), + 0, 0); + ++ /* To the kernel, this will be visible after the kernel has ++ acquired the mutex in the syscall. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return ENOTRECOVERABLE; + } +@@ -446,7 +481,12 @@ __pthread_mutex_lock_full (pthread_mutex + mutex->__data.__count = 1; + if (robust) + { ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX_PI (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + } + } +Index: glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_timedlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +@@ -140,6 +140,9 @@ pthread_mutex_timedlock (pthread_mutex_t + case PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP: + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + &mutex->__data.__list.__next); ++ /* We need to set op_pending before starting the operation. Also ++ see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + + oldval = mutex->__data.__lock; + /* This is set to FUTEX_WAITERS iff we might have shared the +@@ -177,7 +180,12 @@ pthread_mutex_timedlock (pthread_mutex_t + /* But it is inconsistent unless marked otherwise. */ + mutex->__data.__owner = PTHREAD_MUTEX_INCONSISTENT; + ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Note that we deliberately exit here. If we fall +@@ -193,6 +201,8 @@ pthread_mutex_timedlock (pthread_mutex_t + int kind = PTHREAD_MUTEX_TYPE (mutex); + if (kind == PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. Also see comments at ENQUEUE_MUTEX. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + NULL); + return EDEADLK; +@@ -200,6 +210,8 @@ pthread_mutex_timedlock (pthread_mutex_t + + if (kind == PTHREAD_MUTEX_ROBUST_RECURSIVE_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + NULL); + +@@ -294,12 +306,19 @@ pthread_mutex_timedlock (pthread_mutex_t + mutex->__data.__count = 0; + int private = PTHREAD_ROBUST_MUTEX_PSHARED (mutex); + lll_unlock (mutex->__data.__lock, private); ++ /* FIXME This violates the mutex destruction requirements. See ++ __pthread_mutex_unlock_full. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return ENOTRECOVERABLE; + } + + mutex->__data.__count = 1; ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + break; + +@@ -316,10 +335,15 @@ pthread_mutex_timedlock (pthread_mutex_t + int robust = mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP; + + if (robust) +- /* Note: robust PI futexes are signaled by setting bit 0. */ +- THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, +- (void *) (((uintptr_t) &mutex->__data.__list.__next) +- | 1)); ++ { ++ /* Note: robust PI futexes are signaled by setting bit 0. */ ++ THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, ++ (void *) (((uintptr_t) &mutex->__data.__list.__next) ++ | 1)); ++ /* We need to set op_pending before starting the operation. Also ++ see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); ++ } + + oldval = mutex->__data.__lock; + +@@ -328,12 +352,16 @@ pthread_mutex_timedlock (pthread_mutex_t + { + if (kind == PTHREAD_MUTEX_ERRORCHECK_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return EDEADLK; + } + + if (kind == PTHREAD_MUTEX_RECURSIVE_NP) + { ++ /* We do not need to ensure ordering wrt another memory ++ access. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Just bump the counter. */ +@@ -420,7 +448,12 @@ pthread_mutex_timedlock (pthread_mutex_t + /* But it is inconsistent unless marked otherwise. */ + mutex->__data.__owner = PTHREAD_MUTEX_INCONSISTENT; + ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX_PI (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + + /* Note that we deliberately exit here. If we fall +@@ -443,6 +476,8 @@ pthread_mutex_timedlock (pthread_mutex_t + PTHREAD_ROBUST_MUTEX_PSHARED (mutex)), + 0, 0); + ++ /* To the kernel, this will be visible after the kernel has ++ acquired the mutex in the syscall. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + return ENOTRECOVERABLE; + } +@@ -450,7 +485,12 @@ pthread_mutex_timedlock (pthread_mutex_t + mutex->__data.__count = 1; + if (robust) + { ++ /* We must not enqueue the mutex before we have acquired it. ++ Also see comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + ENQUEUE_MUTEX_PI (mutex); ++ /* We need to clear op_pending after we enqueue the mutex. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + } + } +Index: glibc-2.17-c758a686/nptl/pthread_mutex_unlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_unlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_unlock.c +@@ -143,6 +143,9 @@ __pthread_mutex_unlock_full (pthread_mut + /* Remove mutex from the list. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + &mutex->__data.__list.__next); ++ /* We must set op_pending before we dequeue the mutex. Also see ++ comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + DEQUEUE_MUTEX (mutex); + + mutex->__data.__owner = newowner; +@@ -159,6 +162,14 @@ __pthread_mutex_unlock_full (pthread_mut + & FUTEX_WAITERS) != 0)) + lll_futex_wake (&mutex->__data.__lock, 1, private); + ++ /* We must clear op_pending after we release the mutex. ++ FIXME However, this violates the mutex destruction requirements ++ because another thread could acquire the mutex, destroy it, and ++ reuse the memory for something else; then, if this thread crashes, ++ and the memory happens to have a value equal to the TID, the kernel ++ will believe it is still related to the mutex (which has been ++ destroyed already) and will modify some other random object. */ ++ __asm ("" ::: "memory"); + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + break; + +@@ -223,6 +234,9 @@ __pthread_mutex_unlock_full (pthread_mut + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, + (void *) (((uintptr_t) &mutex->__data.__list.__next) + | 1)); ++ /* We must set op_pending before we dequeue the mutex. Also see ++ comments at ENQUEUE_MUTEX. */ ++ __asm ("" ::: "memory"); + DEQUEUE_MUTEX (mutex); + } + +@@ -247,6 +261,9 @@ __pthread_mutex_unlock_full (pthread_mut + __lll_private_flag (FUTEX_UNLOCK_PI, private)); + } + ++ /* This happens after the kernel releases the mutex but violates the ++ mutex destruction requirements; see comments in the code handling ++ PTHREAD_MUTEX_ROBUST_NORMAL_NP. */ + THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL); + break; + diff --git a/SOURCES/glibc-rh1401665-4.patch b/SOURCES/glibc-rh1401665-4.patch new file mode 100644 index 0000000..c4bc4ea --- /dev/null +++ b/SOURCES/glibc-rh1401665-4.patch @@ -0,0 +1,208 @@ +commit faf0e9c84119742dd9ebb79060faa22c52ae80a1 +Author: Florian Weimer +Date: Fri Jan 27 06:53:19 2017 +0100 + + nptl: Add tst-robust-fork + +Index: glibc-2.17-c758a686/nptl/Makefile +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/Makefile ++++ glibc-2.17-c758a686/nptl/Makefile +@@ -271,7 +271,7 @@ tests = tst-typesizes \ + tst-initializers1 $(patsubst %,tst-initializers1-%,c89 gnu89 c99 gnu99) \ + tst-mutex-errorcheck \ + tst-minstack-cancel tst-minstack-exit tst-minstack-throw \ +- tst-thread-exit-clobber ++ tst-thread-exit-clobber tst-robust-fork + xtests = tst-setuid1 tst-setuid1-static tst-mutexpp1 tst-mutexpp6 tst-mutexpp10 + test-srcs = tst-oddstacklimit + +Index: glibc-2.17-c758a686/nptl/tst-robust-fork.c +=================================================================== +--- /dev/null ++++ glibc-2.17-c758a686/nptl/tst-robust-fork.c +@@ -0,0 +1,184 @@ ++/* Test the interaction of fork and robust mutexes. ++ Copyright (C) 2017 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++/* Data shared between processes. */ ++struct shared ++{ ++ pthread_mutex_t parent_mutex; ++ pthread_mutex_t child_mutex; ++}; ++ ++/* These flags control which mutex settings are enabled in the parent ++ and child (separately). */ ++enum mutex_bits ++ { ++ mutex_pshared = 1, ++ mutex_robust = 2, ++ mutex_pi = 4, ++ mutex_check = 8, ++ ++ /* All bits combined. */ ++ mutex_all_bits = 15, ++ }; ++ ++static void ++mutex_init (pthread_mutex_t *mutex, int bits) ++{ ++ pthread_mutexattr_t attr; ++ xpthread_mutexattr_init (&attr); ++ if (bits & mutex_pshared) ++ xpthread_mutexattr_setpshared (&attr, PTHREAD_PROCESS_SHARED); ++ if (bits & mutex_robust) ++ xpthread_mutexattr_setrobust (&attr, PTHREAD_MUTEX_ROBUST); ++ if (bits & mutex_pi) ++ xpthread_mutexattr_setprotocol (&attr, PTHREAD_PRIO_INHERIT); ++ if (bits & mutex_check) ++ xpthread_mutexattr_settype (&attr, PTHREAD_MUTEX_ERRORCHECK); ++ xpthread_mutex_init (mutex, &attr); ++ xpthread_mutexattr_destroy (&attr); ++} ++ ++static void ++one_test (int parent_bits, int child_bits, int nonshared_bits, ++ bool lock_nonshared, bool lock_child) ++{ ++ ++ struct shared *shared = xmmap (NULL, sizeof (*shared), ++ PROT_READ | PROT_WRITE, ++ MAP_ANONYMOUS | MAP_SHARED, -1); ++ mutex_init (&shared->parent_mutex, parent_bits); ++ mutex_init (&shared->child_mutex, child_bits); ++ ++ /* Acquire the parent mutex in the parent. */ ++ xpthread_mutex_lock (&shared->parent_mutex); ++ ++ pthread_mutex_t nonshared_mutex; ++ mutex_init (&nonshared_mutex, nonshared_bits); ++ if (lock_nonshared) ++ xpthread_mutex_lock (&nonshared_mutex); ++ ++ pid_t pid = xfork (); ++ if (pid == 0) ++ { ++ /* Child process. */ ++ if (lock_child) ++ xpthread_mutex_lock (&shared->child_mutex); ++ else ++ xmunmap (shared, sizeof (*shared)); ++ if (lock_nonshared) ++ /* Reinitialize the non-shared mutex if it was locked in the ++ parent. */ ++ mutex_init (&nonshared_mutex, nonshared_bits); ++ xpthread_mutex_lock (&nonshared_mutex); ++ /* For robust mutexes, the _exit call will perform the unlock ++ instead. */ ++ if (lock_child && !(child_bits & mutex_robust)) ++ xpthread_mutex_unlock (&shared->child_mutex); ++ _exit (0); ++ } ++ /* Parent process. */ ++ { ++ int status; ++ xwaitpid (pid, &status, 0); ++ TEST_VERIFY (status == 0); ++ } ++ ++ if (parent_bits & mutex_check) ++ /* Test for expected self-deadlock. This is only possible to ++ detect if the mutex is error-checking. */ ++ TEST_VERIFY_EXIT (pthread_mutex_lock (&shared->parent_mutex) == EDEADLK); ++ ++ pid = xfork (); ++ if (pid == 0) ++ { ++ /* Child process. We can perform some checks only if we are ++ dealing with process-shared mutexes. */ ++ if (parent_bits & mutex_pshared) ++ /* It must not be possible to acquire the parent mutex. ++ ++ NB: This check touches a mutex which has been acquired in ++ the parent at fork time, so it might be deemed undefined ++ behavior, pending the resolution of Austin Groups issue ++ 1112. */ ++ TEST_VERIFY_EXIT (pthread_mutex_trylock (&shared->parent_mutex) ++ == EBUSY); ++ if (lock_child && (child_bits & mutex_robust)) ++ { ++ if (!(child_bits & mutex_pshared)) ++ /* No further tests possible. */ ++ _exit (0); ++ TEST_VERIFY_EXIT (pthread_mutex_lock (&shared->child_mutex) ++ == EOWNERDEAD); ++ xpthread_mutex_consistent (&shared->child_mutex); ++ } ++ else ++ /* We did not acquire the lock in the first child process, or ++ we unlocked the mutex again because the mutex is not a ++ robust mutex. */ ++ xpthread_mutex_lock (&shared->child_mutex); ++ xpthread_mutex_unlock (&shared->child_mutex); ++ _exit (0); ++ } ++ /* Parent process. */ ++ { ++ int status; ++ xwaitpid (pid, &status, 0); ++ TEST_VERIFY (status == 0); ++ } ++ ++ if (lock_nonshared) ++ xpthread_mutex_unlock (&nonshared_mutex); ++ xpthread_mutex_unlock (&shared->parent_mutex); ++ xpthread_mutex_destroy (&shared->parent_mutex); ++ xpthread_mutex_destroy (&shared->child_mutex); ++ xpthread_mutex_destroy (&nonshared_mutex); ++ xmunmap (shared, sizeof (*shared)); ++} ++ ++static int ++do_test (void) ++{ ++ for (int parent_bits = 0; parent_bits <= mutex_all_bits; ++parent_bits) ++ for (int child_bits = 0; child_bits <= mutex_all_bits; ++child_bits) ++ for (int nonshared_bits = 0; nonshared_bits <= mutex_all_bits; ++ ++nonshared_bits) ++ for (int lock_nonshared = 0; lock_nonshared < 2; ++lock_nonshared) ++ for (int lock_child = 0; lock_child < 2; ++lock_child) ++ { ++ if (test_verbose) ++ printf ("info: parent_bits=0x%x child_bits=0x%x" ++ " nonshared_bits=0x%x%s%s\n", ++ parent_bits, child_bits, nonshared_bits, ++ lock_nonshared ? " lock_nonshared" : "", ++ lock_child ? " lock_child" : ""); ++ one_test (parent_bits, child_bits, nonshared_bits, ++ lock_nonshared, lock_child); ++ } ++ return 0; ++} ++ ++#include diff --git a/SOURCES/glibc-rh1401665-5.patch b/SOURCES/glibc-rh1401665-5.patch new file mode 100644 index 0000000..c9b5411 --- /dev/null +++ b/SOURCES/glibc-rh1401665-5.patch @@ -0,0 +1,176 @@ +commit 5920a4a624b1f4db310d1c44997b640e2a4653e5 +Author: Carlos O'Donell +Date: Sat Jul 29 00:02:03 2017 -0400 + + mutex: Fix robust mutex lock acquire (Bug 21778) + + 65810f0ef05e8c9e333f17a44e77808b163ca298 fixed a robust mutex bug but + introduced BZ 21778: if the CAS used to try to acquire a lock fails, the + expected value is not updated, which breaks other cases in the loce + acquisition loop. The fix is to simply update the expected value with + the value returned by the CAS, which ensures that behavior is as if the + first case with the CAS never happened (if the CAS fails). + + This is a regression introduced in the last release. + + Tested on x86_64, i686, ppc64, ppc64le, s390x, aarch64, armv7hl. + +Index: glibc-2.17-c758a686/nptl/Makefile +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/Makefile ++++ glibc-2.17-c758a686/nptl/Makefile +@@ -204,7 +204,7 @@ CFLAGS-tst-thread-exit-clobber.o = -std= + tests = tst-typesizes \ + tst-attr1 tst-attr2 tst-attr3 tst-default-attr \ + tst-mutex1 tst-mutex2 tst-mutex3 tst-mutex4 tst-mutex5 tst-mutex6 \ +- tst-mutex7 tst-mutex8 tst-mutex9 tst-mutex5a tst-mutex7a \ ++ tst-mutex7 tst-mutex8 tst-mutex9 tst-mutex5a tst-mutex7a tst-mutex7robust \ + tst-mutexpi1 tst-mutexpi2 tst-mutexpi3 tst-mutexpi4 tst-mutexpi5 \ + tst-mutexpi5a tst-mutexpi6 tst-mutexpi7 tst-mutexpi7a tst-mutexpi8 \ + tst-mutexpi9 \ +Index: glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_lock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_lock.c +@@ -198,11 +198,14 @@ __pthread_mutex_lock_full (pthread_mutex + { + /* Try to acquire the lock through a CAS from 0 (not acquired) to + our TID | assume_other_futex_waiters. */ +- if (__glibc_likely ((oldval == 0) +- && (atomic_compare_and_exchange_bool_acq +- (&mutex->__data.__lock, +- id | assume_other_futex_waiters, 0) == 0))) +- break; ++ if (__glibc_likely (oldval == 0)) ++ { ++ oldval ++ = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, ++ id | assume_other_futex_waiters, 0); ++ if (__glibc_likely (oldval == 0)) ++ break; ++ } + + if ((oldval & FUTEX_OWNER_DIED) != 0) + { +Index: glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/pthread_mutex_timedlock.c ++++ glibc-2.17-c758a686/nptl/pthread_mutex_timedlock.c +@@ -154,11 +154,14 @@ pthread_mutex_timedlock (pthread_mutex_t + { + /* Try to acquire the lock through a CAS from 0 (not acquired) to + our TID | assume_other_futex_waiters. */ +- if (__glibc_likely ((oldval == 0) +- && (atomic_compare_and_exchange_bool_acq +- (&mutex->__data.__lock, +- id | assume_other_futex_waiters, 0) == 0))) +- break; ++ if (__glibc_likely (oldval == 0)) ++ { ++ oldval ++ = atomic_compare_and_exchange_val_acq (&mutex->__data.__lock, ++ id | assume_other_futex_waiters, 0); ++ if (__glibc_likely (oldval == 0)) ++ break; ++ } + + if ((oldval & FUTEX_OWNER_DIED) != 0) + { +Index: glibc-2.17-c758a686/nptl/tst-mutex7.c +=================================================================== +--- glibc-2.17-c758a686.orig/nptl/tst-mutex7.c ++++ glibc-2.17-c758a686/nptl/tst-mutex7.c +@@ -22,25 +22,41 @@ + #include + #include + +- ++/* This test is a template for other tests to use. Other tests define ++ the following macros to change the behaviour of the template test. ++ The test is very simple, it configures N threads given the parameters ++ below and then proceeds to go through mutex lock and unlock ++ operations in each thread as described before for the thread ++ function. */ + #ifndef TYPE + # define TYPE PTHREAD_MUTEX_DEFAULT + #endif +- ++#ifndef ROBUST ++# define ROBUST PTHREAD_MUTEX_STALLED ++#endif ++#ifndef DELAY_NSEC ++# define DELAY_NSEC 11000 ++#endif ++#ifndef ROUNDS ++# define ROUNDS 1000 ++#endif ++#ifndef N ++# define N 100 ++#endif + + static pthread_mutex_t lock; + +- +-#define ROUNDS 1000 +-#define N 100 +- +- ++/* Each thread locks and the subsequently unlocks the lock, yielding ++ the smallest critical section possible. After the unlock the thread ++ waits DELAY_NSEC nanoseconds before doing the lock and unlock again. ++ Every thread does this ROUNDS times. The lock and unlock are ++ checked for errors. */ + static void * + tf (void *arg) + { + int nr = (long int) arg; + int cnt; +- struct timespec ts = { .tv_sec = 0, .tv_nsec = 11000 }; ++ struct timespec ts = { .tv_sec = 0, .tv_nsec = DELAY_NSEC }; + + for (cnt = 0; cnt < ROUNDS; ++cnt) + { +@@ -56,13 +72,16 @@ tf (void *arg) + return (void *) 1l; + } + +- nanosleep (&ts, NULL); ++ if ((ts.tv_sec > 0) || (ts.tv_nsec > 0)) ++ nanosleep (&ts, NULL); + } + + return NULL; + } + +- ++/* Setup and run N threads, where each thread does as described ++ in the above thread function. The threads are given a minimal 1MiB ++ stack since they don't do anything between the lock and unlock. */ + static int + do_test (void) + { +@@ -80,6 +99,12 @@ do_test (void) + exit (1); + } + ++ if (pthread_mutexattr_setrobust (&a, ROBUST) != 0) ++ { ++ puts ("mutexattr_setrobust failed"); ++ exit (1); ++ } ++ + #ifdef ENABLE_PI + if (pthread_mutexattr_setprotocol (&a, PTHREAD_PRIO_INHERIT) != 0) + { +Index: glibc-2.17-c758a686/nptl/tst-mutex7robust.c +=================================================================== +--- /dev/null ++++ glibc-2.17-c758a686/nptl/tst-mutex7robust.c +@@ -0,0 +1,7 @@ ++/* Bug 21778: Fix oversight in robust mutex lock acquisition. */ ++#define TYPE PTHREAD_MUTEX_NORMAL ++#define ROBUST PTHREAD_MUTEX_ROBUST ++#define DELAY_NSEC 0 ++#define ROUNDS 1000 ++#define N 32 ++#include "tst-mutex7.c" diff --git a/SOURCES/glibc-rh1447808-0.patch b/SOURCES/glibc-rh1447808-0.patch new file mode 100644 index 0000000..3eb8143 --- /dev/null +++ b/SOURCES/glibc-rh1447808-0.patch @@ -0,0 +1,28 @@ +Partial backport. Only the i686 piece is needed in glibc 2.17, and +the x86_64 piece doesn't apply anyway because we lack the multiarch +implementations present in upstream. Instead the the x86_64 piece +is fixed by glibc-rh1447808-2.patch. + +commit e826574c985a15a500262f2fbd21c7e9259d3d11 (origin/master, origin/HEAD) +Author: Florian Weimer +Date: Tue Jun 12 15:00:33 2018 +0200 + + x86: Make strncmp usable from rtld + + Due to the way the conditions were written, the rtld build of strncmp + ended up with no definition of the strncmp symbol at all: The + implementations were renamed for use within an IFUNC resolver, but the + IFUNC resolver itself was missing (because rtld does not use IFUNCs). + + Reviewed-by: Carlos O'Donell + +Index: glibc-2.17-c758a686/sysdeps/i386/i686/multiarch/strncmp-c.c +=================================================================== +--- glibc-2.17-c758a686.orig/sysdeps/i386/i686/multiarch/strncmp-c.c ++++ glibc-2.17-c758a686/sysdeps/i386/i686/multiarch/strncmp-c.c +@@ -1,4 +1,4 @@ +-#ifdef SHARED ++#if defined (SHARED) && IS_IN (libc) + # define STRNCMP __strncmp_ia32 + # undef libc_hidden_builtin_def + # define libc_hidden_builtin_def(name) \ diff --git a/SOURCES/glibc-rh1447808-1.patch b/SOURCES/glibc-rh1447808-1.patch new file mode 100644 index 0000000..e9ef0ff --- /dev/null +++ b/SOURCES/glibc-rh1447808-1.patch @@ -0,0 +1,404 @@ +commit 5aad5f617892e75d91d4c8fb7594ff35b610c042 +Author: Carlos O'Donell +Date: Tue Jun 5 23:55:17 2018 -0400 + + Improve DST handling (Bug 23102, Bug 21942, Bug 18018, Bug 23259). + + This commit improves DST handling significantly in the following + ways: firstly is_dst () is overhauled to correctly process DST + sequences that would be accepted given the ELF gABI. This means that + we actually now accept slightly more sequences than before. Now we + accept $ORIGIN$ORIGIN, but in the past we accepted only $ORIGIN\0 or + $ORIGIN/..., but this kind of behaviour results in unexpected + and uninterpreted DST sequences being used as literal search paths + leading to security defects. Therefore the first step in correcting + this defect is making is_dst () properly account for all DSTs + and making the function context free in the sense that it counts + DSTs without knowledge of path, or AT_SECURE. Next, _dl_dst_count () + is also simplified to count all DSTs regardless of context. + Then in _dl_dst_substitute () we reintroduce context-dependent + processing for such things as AT_SECURE handling. At the level of + _dl_dst_substitute we can have access to things like the true start + of the string sequence to validate $ORIGIN-based paths rooted in + trusted directories. Lastly, we tighten up the accepted sequences + in AT_SECURE, and avoid leaving known unexpanded DSTs, this is + noted in the NEWS entry. + + Verified with a sequence of 68 tests on x86_64 that cover + non-AT_SECURE and AT_SECURE testing using a sysroot (requires root + to run). The tests cover cases for bug 23102, bug 21942, bug 18018, + and bug 23259. These tests are not yet appropriate for the glibc + regression testsuite, but with the upcoming test-in-container testing + framework it should be possible to include these tests upstream soon. + + See the mailing list for the tests: + https://www.sourceware.org/ml/libc-alpha/2018-06/msg00251.html + +Index: glibc-2.17-c758a686/elf/dl-deps.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-deps.c ++++ glibc-2.17-c758a686/elf/dl-deps.c +@@ -101,7 +101,7 @@ struct list + ({ \ + const char *__str = (str); \ + const char *__result = __str; \ +- size_t __dst_cnt = DL_DST_COUNT (__str); \ ++ size_t __dst_cnt = _dl_dst_count (__str); \ + \ + if (__dst_cnt != 0) \ + { \ +Index: glibc-2.17-c758a686/elf/dl-dst.h +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-dst.h ++++ glibc-2.17-c758a686/elf/dl-dst.h +@@ -18,19 +18,6 @@ + + #include "trusted-dirs.h" + +-/* Determine the number of DST elements in the name. Only if IS_PATH is +- nonzero paths are recognized (i.e., multiple, ':' separated filenames). */ +-#define DL_DST_COUNT(name) \ +- ({ \ +- size_t __cnt = 0; \ +- const char *__sf = strchr (name, '$'); \ +- \ +- if (__builtin_expect (__sf != NULL, 0)) \ +- __cnt = _dl_dst_count (__sf); \ +- \ +- __cnt; }) +- +- + #ifdef SHARED + # define IS_RTLD(l) (l) == &GL(dl_rtld_map) + #else +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -174,12 +174,6 @@ is_trusted_path_normalize (const char *p + if (len == 0) + return false; + +- if (*path == ':') +- { +- ++path; +- --len; +- } +- + char *npath = (char *) alloca (len + 2); + char *wnp = npath; + while (*path != '\0') +@@ -230,120 +224,172 @@ is_trusted_path_normalize (const char *p + return false; + } + ++/* Given a substring starting at INPUT, just after the DST '$' start ++ token, determine if INPUT contains DST token REF, following the ++ ELF gABI rules for DSTs: ++ ++ * Longest possible sequence using the rules (greedy). ++ ++ * Must start with a $ (enforced by caller). ++ ++ * Must follow $ with one underscore or ASCII [A-Za-z] (caller ++ follows these rules for REF) or '{' (start curly quoted name). ++ ++ * Must follow first two characters with zero or more [A-Za-z0-9_] ++ (enforced by caller) or '}' (end curly quoted name). + ++ If the sequence is a DST matching REF then the length of the DST ++ (excluding the $ sign but including curly braces, if any) is ++ returned, otherwise 0. */ + static size_t +-is_dst (const char *start, const char *name, const char *str, int secure) ++is_dst (const char *input, const char *ref) + { +- size_t len; + bool is_curly = false; + +- if (name[0] == '{') ++ /* Is a ${...} input sequence? */ ++ if (input[0] == '{') + { + is_curly = true; +- ++name; ++ ++input; + } + +- len = 0; +- while (name[len] == str[len] && name[len] != '\0') +- ++len; +- +- if (is_curly) +- { +- if (name[len] != '}') +- return 0; +- +- /* Point again at the beginning of the name. */ +- --name; +- /* Skip over closing curly brace and adjust for the --name. */ +- len += 2; +- } +- else if (name[len] != '\0' && name[len] != '/') +- return 0; +- +- if (__builtin_expect (secure, 0) +- && ((name[len] != '\0' && name[len] != '/') +- || (name != start + 1))) ++ /* Check for matching name, following closing curly brace (if ++ required), or trailing characters which are part of an ++ identifier. */ ++ size_t rlen = strlen (ref); ++ if (strncmp (input, ref, rlen) != 0 ++ || (is_curly && input[rlen] != '}') ++ || ((input[rlen] >= 'A' && input[rlen] <= 'Z') ++ || (input[rlen] >= 'a' && input[rlen] <= 'z') ++ || (input[rlen] >= '0' && input[rlen] <= '9') ++ || (input[rlen] == '_'))) + return 0; + +- return len; ++ if (is_curly) ++ /* Count the two curly braces. */ ++ return rlen + 2; ++ else ++ return rlen; + } + +- ++/* INPUT is the start of a DST sequence at the first '$' occurrence. ++ If there is a DST we call into _dl_dst_count to count the number of ++ DSTs. We count all known DSTs regardless of __libc_enable_secure; ++ the caller is responsible for enforcing the security of the ++ substitution rules (usually _dl_dst_substitute). */ + size_t +-_dl_dst_count (const char *name) ++_dl_dst_count (const char *input) + { +- const char *const start = name; + size_t cnt = 0; + ++ input = strchr (input, '$'); ++ ++ /* Most likely there is no DST. */ ++ if (__glibc_likely (input == NULL)) ++ return 0; ++ + do + { + size_t len; + +- /* $ORIGIN is not expanded for SUID/GUID programs (except if it +- is $ORIGIN alone) and it must always appear first in path. */ +- ++name; +- if ((len = is_dst (start, name, "ORIGIN", INTUSE(__libc_enable_secure))) != 0 +- || (len = is_dst (start, name, "PLATFORM", 0)) != 0 +- || (len = is_dst (start, name, "LIB", 0)) != 0) ++ ++input; ++ /* All DSTs must follow ELF gABI rules, see is_dst (). */ ++ if ((len = is_dst (input, "ORIGIN")) != 0 ++ || (len = is_dst (input, "PLATFORM")) != 0 ++ || (len = is_dst (input, "LIB")) != 0) + ++cnt; + +- name = strchr (name + len, '$'); ++ /* There may be more than one DST in the input. */ ++ input = strchr (input + len, '$'); + } +- while (name != NULL); ++ while (input != NULL); + + return cnt; + } + +- ++/* Process INPUT for DSTs and store in RESULT using the information ++ from link map L to resolve the DSTs. This function only handles one ++ path at a time and does not handle colon-separated path lists (see ++ fillin_rpath ()). Lastly the size of result in bytes should be at ++ least equal to the value returned by DL_DST_REQUIRED. Note that it ++ is possible for a DT_NEEDED, DT_AUXILIARY, and DT_FILTER entries to ++ have colons, but we treat those as literal colons here, not as path ++ list delimeters. */ + char * +-_dl_dst_substitute (struct link_map *l, const char *name, char *result) ++_dl_dst_substitute (struct link_map *l, const char *input, char *result) + { +- const char *const start = name; +- +- /* Now fill the result path. While copying over the string we keep +- track of the start of the last path element. When we come accross +- a DST we copy over the value or (if the value is not available) +- leave the entire path element out. */ ++ /* Copy character-by-character from input into the working pointer ++ looking for any DSTs. We track the start of input and if we are ++ going to check for trusted paths, all of which are part of $ORIGIN ++ handling in SUID/SGID cases (see below). In some cases, like when ++ a DST cannot be replaced, we may set result to an empty string and ++ return. */ + char *wp = result; +- char *last_elem = result; ++ const char *start = input; + bool check_for_trusted = false; + + do + { +- if (__builtin_expect (*name == '$', 0)) ++ if (__glibc_unlikely (*input == '$')) + { + const char *repl = NULL; + size_t len; + +- ++name; +- if ((len = is_dst (start, name, "ORIGIN", INTUSE(__libc_enable_secure))) != 0) ++ ++input; ++ if ((len = is_dst (input, "ORIGIN")) != 0) + { +-#ifndef SHARED +- if (l == NULL) +- repl = _dl_get_origin (); ++ /* For SUID/GUID programs we normally ignore the path with ++ $ORIGIN in DT_RUNPATH, or DT_RPATH. However, there is ++ one exception to this rule, and it is: ++ ++ * $ORIGIN appears as the first path element, and is ++ the only string in the path or is immediately ++ followed by a path separator and the rest of the ++ path. ++ ++ * The path is rooted in a trusted directory. ++ ++ This exception allows such programs to reference ++ shared libraries in subdirectories of trusted ++ directories. The use case is one of general ++ organization and deployment flexibility. ++ Trusted directories are usually such paths as "/lib64" ++ or "/usr/lib64", and the usual RPATHs take the form of ++ [$ORIGIN/../$LIB/somedir]. */ ++ if (__glibc_unlikely (__libc_enable_secure) ++ && !(input == start + 1 ++ && (input[len] == '\0' || input[len] == '/'))) ++ repl = (const char *) -1; + else ++ { ++#ifndef SHARED ++ if (l == NULL) ++ repl = _dl_get_origin (); ++ else + #endif +- repl = l->l_origin; ++ repl = l->l_origin; ++ } + + check_for_trusted = (INTUSE(__libc_enable_secure) + && l->l_type == lt_executable); + } +- else if ((len = is_dst (start, name, "PLATFORM", 0)) != 0) ++ else if ((len = is_dst (input, "PLATFORM")) != 0) + repl = GLRO(dl_platform); +- else if ((len = is_dst (start, name, "LIB", 0)) != 0) ++ else if ((len = is_dst (input, "LIB")) != 0) + repl = DL_DST_LIB; + + if (repl != NULL && repl != (const char *) -1) + { + wp = __stpcpy (wp, repl); +- name += len; ++ input += len; + } +- else if (len > 1) ++ else if (len != 0) + { +- /* We cannot use this path element, the value of the +- replacement is unknown. */ +- wp = last_elem; +- break; ++ /* We found a valid DST that we know about, but we could ++ not find a replacement value for it, therefore we ++ cannot use this path and discard it. */ ++ *result = '\0'; ++ return result; + } + else + /* No DST we recognize. */ +@@ -351,16 +397,26 @@ _dl_dst_substitute (struct link_map *l, + } + else + { +- *wp++ = *name++; ++ *wp++ = *input++; + } + } +- while (*name != '\0'); ++ while (*input != '\0'); + + /* In SUID/SGID programs, after $ORIGIN expansion the normalized +- path must be rooted in one of the trusted directories. */ +- if (__builtin_expect (check_for_trusted, false) +- && !is_trusted_path_normalize (last_elem, wp - last_elem)) +- wp = last_elem; ++ path must be rooted in one of the trusted directories. The $LIB ++ and $PLATFORM DST cannot in any way be manipulated by the caller ++ because they are fixed values that are set by the dynamic loader ++ and therefore any paths using just $LIB or $PLATFORM need not be ++ checked for trust, the authors of the binaries themselves are ++ trusted to have designed this correctly. Only $ORIGIN is tested in ++ this way because it may be manipulated in some ways with hard ++ links. */ ++ if (__glibc_unlikely (check_for_trusted) ++ && !is_trusted_path_normalize (result, wp - result)) ++ { ++ *result = '\0'; ++ return result; ++ } + + *wp = '\0'; + +@@ -368,13 +424,13 @@ _dl_dst_substitute (struct link_map *l, + } + + +-/* Return copy of argument with all recognized dynamic string tokens +- ($ORIGIN and $PLATFORM for now) replaced. On some platforms it +- might not be possible to determine the path from which the object +- belonging to the map is loaded. In this case the path element +- containing $ORIGIN is left out. */ ++/* Return a malloc allocated copy of INPUT with all recognized DSTs ++ replaced. On some platforms it might not be possible to determine the ++ path from which the object belonging to the map is loaded. In this ++ case the path containing the DST is left out. On error NULL ++ is returned. */ + static char * +-expand_dynamic_string_token (struct link_map *l, const char *s) ++expand_dynamic_string_token (struct link_map *l, const char *input) + { + /* We make two runs over the string. First we determine how large the + resulting string is and then we copy it over. Since this is no +@@ -384,22 +440,22 @@ expand_dynamic_string_token (struct link + size_t total; + char *result; + +- /* Determine the number of DST elements. */ +- cnt = DL_DST_COUNT (s); ++ /* Determine the number of DSTs. */ ++ cnt = _dl_dst_count (input); + + /* If we do not have to replace anything simply copy the string. */ + if (__builtin_expect (cnt, 0) == 0) +- return local_strdup (s); ++ return local_strdup (input); + + /* Determine the length of the substituted string. */ +- total = DL_DST_REQUIRED (l, s, strlen (s), cnt); ++ total = DL_DST_REQUIRED (l, input, strlen (input), cnt); + + /* Allocate the necessary memory. */ + result = (char *) malloc (total + 1); + if (result == NULL) + return NULL; + +- return _dl_dst_substitute (l, s, result); ++ return _dl_dst_substitute (l, input, result); + } + + diff --git a/SOURCES/glibc-rh1447808-2.patch b/SOURCES/glibc-rh1447808-2.patch new file mode 100644 index 0000000..4265a95 --- /dev/null +++ b/SOURCES/glibc-rh1447808-2.patch @@ -0,0 +1,18 @@ +Fix strncmp in rtld for x86-64 by using the generic implementation. Not +needed upstream since upstream uses +d8725b1fba769a89ce2c902a2091d01faa946b66 to enable strncmp from +strncmp.S, but this introduces SSE registers into rtld for RHEL7 and +this would be the first instance of such a change. While we have done +everything we can to save/restore such registers (see the xsave work) it +isn't clear if everything is fixed, so to play it safe in RHEL we just +use the C version of strncmp for rtld. + +Not needed upstream. + +diff --git a/sysdeps/x86_64/multiarch/rtld-strncmp.c b/sysdeps/x86_64/multiarch/rtld-strncmp.c +new file mode 100644 +index 0000000000000000..5bb3cfb974b9a95d +--- /dev/null ++++ b/sysdeps/x86_64/multiarch/rtld-strncmp.c +@@ -0,0 +1 @@ ++#include diff --git a/SOURCES/glibc-rh1448107.patch b/SOURCES/glibc-rh1448107.patch new file mode 100644 index 0000000..c9bc107 --- /dev/null +++ b/SOURCES/glibc-rh1448107.patch @@ -0,0 +1,418 @@ +This patch adds support for el_GR@euro. It also updates el_GR, +ur_IN and wal_ET to i18n:2012. +These changes are a *subset* of this upstream patch and, therefore, should +not be pushed upstream. + +commit 1a06eee86989d7058d317f3643355f8ec5e87efb +Author: Mike Frysinger +Date: Wed Apr 13 11:22:00 2016 -0400 + + localedata: LC_IDENTIFICATION.category: set to ISO 30112 2014 standard + + The ISO 30112 standard defines the valid values for the category + keyword as only a few options: + posix:1993 + i18n:2004 + i18n:2012 + + The vast majority of locales had changed the "i18n" string to the + name of its own locale (e.g. "ak_GH:2013") as well as tweaking the + date (presumably thinking it should be the date of submission). + + Convert all of them to "i18n:2012" for consistency. A follow up + change will update localedef to actually check/validate the field. + + +diff -Nrup a/localedata/locales/el_GR b/localedata/locales/el_GR +--- a/localedata/locales/el_GR 2012-12-24 22:02:13.000000000 -0500 ++++ b/localedata/locales/el_GR 2018-06-10 10:23:23.156283677 -0400 +@@ -1,6 +1,13 @@ + comment_char % +-escape_char / +-% ++escape_char / ++ ++% This file is part of the GNU C Library and contains locale data. ++% The Free Software Foundation does not claim any copyright interest ++% in the locale data contained in this file. The foregoing does not ++% affect the license of the GNU C Library as a whole. It does not ++% exempt you from the conditions of the license if your use would ++% otherwise be governed by that license. ++ + % Greek Language Locale for Greece + % Source: RAP + % Address: Sankt Jo//rgens Alle 8 +@@ -15,8 +22,6 @@ escape_char / + % Date: 1996-10-15 + % Users: general + % Charset: ISO-8859-7 +-% Distribution and use is free, also +-% for commercial purposes. + + LC_IDENTIFICATION + title "Greek locale for Greece" +@@ -30,19 +35,19 @@ language "Greek" + territory "Greece" + revision "1.0" + date "2000-06-29" +-% +-category "el_GR:2000";LC_IDENTIFICATION +-category "el_GR:2000";LC_CTYPE +-category "el_GR:2000";LC_COLLATE +-category "el_GR:2000";LC_TIME +-category "el_GR:2000";LC_NUMERIC +-category "el_GR:2000";LC_MONETARY +-category "el_GR:2000";LC_MESSAGES +-category "el_GR:2000";LC_PAPER +-category "el_GR:2000";LC_NAME +-category "el_GR:2000";LC_ADDRESS +-category "el_GR:2000";LC_TELEPHONE + ++category "i18n:2012";LC_IDENTIFICATION ++category "i18n:2012";LC_CTYPE ++category "i18n:2012";LC_COLLATE ++category "i18n:2012";LC_TIME ++category "i18n:2012";LC_NUMERIC ++category "i18n:2012";LC_MONETARY ++category "i18n:2012";LC_MESSAGES ++category "i18n:2012";LC_PAPER ++category "i18n:2012";LC_NAME ++category "i18n:2012";LC_ADDRESS ++category "i18n:2012";LC_TELEPHONE ++category "i18n:2012";LC_MEASUREMENT + END LC_IDENTIFICATION + + LC_COLLATE +@@ -58,8 +63,10 @@ translit_end + END LC_CTYPE + + LC_MESSAGES +-yesexpr "" +-noexpr "" ++yesexpr "" ++noexpr "" ++yesstr "" ++nostr "" + END LC_MESSAGES + + LC_MONETARY +@@ -139,15 +146,12 @@ t_fmt_ampm " + % + % Appropriate date representation (date(1)) "%a %d %b %Y %r %Z" + date_fmt "" +-first_workday 2 ++week 7;19971130;4 + first_weekday 2 + END LC_TIME + + LC_PAPER +-% FIXME +-height 297 +-% FIXME +-width 210 ++copy "i18n" + END LC_PAPER + + LC_TELEPHONE +@@ -158,8 +162,7 @@ int_select "" + END LC_TELEPHONE + + LC_MEASUREMENT +-% FIXME +-measurement 1 ++copy "i18n" + END LC_MEASUREMENT + + LC_NAME +@@ -173,7 +176,18 @@ postal_fmt "/ + / + " ++country_name "" + country_ab2 "" + country_ab3 "" + country_num 300 ++% GR ++country_car "" ++% ελληνικά ++lang_name "" ++% el ++lang_ab "" ++% ell ++lang_term "" ++% gre ++lang_lib "" + END LC_ADDRESS +diff -Nrup a/localedata/locales/el_GR@euro b/localedata/locales/el_GR@euro +--- a/localedata/locales/el_GR@euro 2012-12-24 22:02:13.000000000 -0500 ++++ b/localedata/locales/el_GR@euro 2018-06-08 14:34:49.809871475 -0400 +@@ -1,5 +1,12 @@ +-escape_char / + comment_char % ++escape_char / ++ ++% This file is part of the GNU C Library and contains locale data. ++% The Free Software Foundation does not claim any copyright interest ++% in the locale data contained in this file. The foregoing does not ++% affect the license of the GNU C Library as a whole. It does not ++% exempt you from the conditions of the license if your use would ++% otherwise be governed by that license. + + LC_IDENTIFICATION + title "Greek locale for Greece with Euro" +@@ -13,19 +20,19 @@ language "Greek" + territory "Greece" + revision "1.0" + date "2000-06-24" +-% +-category "el_GR@euro:2000";LC_IDENTIFICATION +-category "el_GR@euro:2000";LC_CTYPE +-category "el_GR@euro:2000";LC_COLLATE +-category "el_GR@euro:2000";LC_TIME +-category "el_GR@euro:2000";LC_NUMERIC +-category "el_GR@euro:2000";LC_MONETARY +-category "el_GR@euro:2000";LC_MESSAGES +-category "el_GR@euro:2000";LC_PAPER +-category "el_GR@euro:2000";LC_NAME +-category "el_GR@euro:2000";LC_ADDRESS +-category "el_GR@euro:2000";LC_TELEPHONE + ++category "i18n:2012";LC_IDENTIFICATION ++category "i18n:2012";LC_CTYPE ++category "i18n:2012";LC_COLLATE ++category "i18n:2012";LC_TIME ++category "i18n:2012";LC_NUMERIC ++category "i18n:2012";LC_MONETARY ++category "i18n:2012";LC_MESSAGES ++category "i18n:2012";LC_PAPER ++category "i18n:2012";LC_NAME ++category "i18n:2012";LC_ADDRESS ++category "i18n:2012";LC_TELEPHONE ++category "i18n:2012";LC_MEASUREMENT + END LC_IDENTIFICATION + + LC_CTYPE +@@ -63,7 +70,6 @@ LC_NAME + copy "el_GR" + END LC_NAME + +- + LC_ADDRESS + copy "el_GR" + END LC_ADDRESS +diff -Nrup a/localedata/locales/ur_IN b/localedata/locales/ur_IN +--- a/localedata/locales/ur_IN 2018-06-08 14:15:14.876886162 -0400 ++++ b/localedata/locales/ur_IN 2018-06-08 15:20:51.893461943 -0400 +@@ -1,5 +1,13 @@ +-comment_char % +-escape_char / ++comment_char % ++escape_char / ++ ++% This file is part of the GNU C Library and contains locale data. ++% The Free Software Foundation does not claim any copyright interest ++% in the locale data contained in this file. The foregoing does not ++% affect the license of the GNU C Library as a whole. It does not ++% exempt you from the conditions of the license if your use would ++% otherwise be governed by that license. ++ + % Urdu language locale for India. + % Contributed by Pravin Satpute and + % Mrs. Nasreen Khan +@@ -17,20 +25,19 @@ language "Urdu" + territory "India" + revision "1.0" + date "2009,June,09" +-% +-category "ur_IN:2009";LC_IDENTIFICATION +-category "ur_IN:2009";LC_CTYPE +-category "ur_IN:2009";LC_COLLATE +-category "ur_IN:2009";LC_TIME +-category "ur_IN:2009";LC_NUMERIC +-category "ur_IN:2009";LC_MONETARY +-category "ur_IN:2009";LC_MESSAGES +-category "ur_IN:2009";LC_PAPER +-category "ur_IN:2009";LC_NAME +-category "ur_IN:2009";LC_ADDRESS +-category "ur_IN:2009";LC_TELEPHONE +- + ++category "i18n:2012";LC_IDENTIFICATION ++category "i18n:2012";LC_CTYPE ++category "i18n:2012";LC_COLLATE ++category "i18n:2012";LC_TIME ++category "i18n:2012";LC_NUMERIC ++category "i18n:2012";LC_MONETARY ++category "i18n:2012";LC_MESSAGES ++category "i18n:2012";LC_PAPER ++category "i18n:2012";LC_NAME ++category "i18n:2012";LC_ADDRESS ++category "i18n:2012";LC_TELEPHONE ++category "i18n:2012";LC_MEASUREMENT + END LC_IDENTIFICATION + + +@@ -132,20 +139,15 @@ t_fmt "/ + " +-% +-% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y" +-date_fmt "/ +-/ +-" ++week 7;19971130;1 + END LC_TIME + + + LC_MESSAGES +-yesexpr "" +-noexpr "" +- +-yesstr "" +-nostr "" ++yesexpr "" ++noexpr "" ++yesstr "" ++nostr "" + END LC_MESSAGES + + +@@ -170,7 +172,20 @@ END LC_NAME + + + LC_ADDRESS +-copy "hi_IN" ++postal_fmt "/ ++" ++country_name "" ++country_ab2 "" ++country_ab3 "" ++country_num 356 ++% IND ++country_car "" ++% ur ++lang_ab "" ++% urd ++lang_term "" ++% urd ++lang_lib "" + END LC_ADDRESS + + +diff -Nrup a/localedata/locales/wal_ET b/localedata/locales/wal_ET +--- a/localedata/locales/wal_ET 2012-12-24 22:02:13.000000000 -0500 ++++ b/localedata/locales/wal_ET 2018-06-08 14:34:16.440637977 -0400 +@@ -1,10 +1,16 @@ +-comment_char % +-escape_char / ++comment_char % ++escape_char / + ++% This file is part of the GNU C Library and contains locale data. ++% The Free Software Foundation does not claim any copyright interest ++% in the locale data contained in this file. The foregoing does not ++% affect the license of the GNU C Library as a whole. It does not ++% exempt you from the conditions of the license if your use would ++% otherwise be governed by that license. + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % +-% Sidama language locale for Ethiopia. ++% Walaita language locale for Ethiopia. + % + % Charset: UTF-8 + % +@@ -27,24 +33,23 @@ contact "" + email "locales@geez.org" + tel "" + fax "" +-language "wal" +-territory "ET" ++language "Wolaytta" ++territory "Ethiopia" + revision "0.10" + date "2004-04-25" +-% +-category "i18n:2000";LC_IDENTIFICATION +-category "i18n:2000";LC_COLLATE +-category "i18n:2000";LC_CTYPE +-category "i18n:2000";LC_MEASUREMENT +-category "i18n:2000";LC_MONETARY +-category "posix:1993";LC_NUMERIC +-category "i18n:2000";LC_PAPER +-category "i18n:2000";LC_TELEPHONE +-category "i18n:2000";LC_ADDRESS +-category "i18n:2000";LC_MESSAGES +-category "i18n:2000";LC_NAME +-category "i18n:2000";LC_TIME +-% ++ ++category "i18n:2012";LC_IDENTIFICATION ++category "i18n:2012";LC_COLLATE ++category "i18n:2012";LC_CTYPE ++category "i18n:2012";LC_MEASUREMENT ++category "i18n:2012";LC_MONETARY ++category "i18n:2012";LC_NUMERIC ++category "i18n:2012";LC_PAPER ++category "i18n:2012";LC_TELEPHONE ++category "i18n:2012";LC_ADDRESS ++category "i18n:2012";LC_MESSAGES ++category "i18n:2012";LC_NAME ++category "i18n:2012";LC_TIME + END LC_IDENTIFICATION + + +@@ -65,7 +70,7 @@ END LC_CTYPE + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % +-% Ethiopia Specifc and Shared Data: ++% Ethiopia Specific and Shared Data: + % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +@@ -92,7 +97,7 @@ END LC_TELEPHONE + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % +-% Sidama Specific Data: ++% Walaita Specific Data: + % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +@@ -107,14 +112,12 @@ country_post "" + country_ab2 "" + country_ab3 "" + country_num 231 % 210 found in at least one ISO 3166 doc +-% country_car unknown ++% ETH ++country_car "" + % country_isbn unknown, Need ISO 2108 + lang_name "" + lang_term "" + lang_lib "" +- +- +-% + END LC_ADDRESS + + +@@ -232,5 +235,5 @@ date_fmt "/ + / + " ++week 7;19971130;1 + END LC_TIME +-% +diff -Nrup a/localedata/SUPPORTED b/localedata/SUPPORTED +--- a/localedata/SUPPORTED 2018-06-08 14:15:13.059877630 -0400 ++++ b/localedata/SUPPORTED 2018-06-08 16:07:15.349302352 -0400 +@@ -109,6 +109,7 @@ dv_MV/UTF-8 \ + dz_BT/UTF-8 \ + el_GR.UTF-8/UTF-8 \ + el_GR/ISO-8859-7 \ ++el_GR@euro/ISO-8859-7 \ + el_CY.UTF-8/UTF-8 \ + el_CY/ISO-8859-7 \ + en_AG/UTF-8 \ diff --git a/SOURCES/glibc-rh1457479-1.patch b/SOURCES/glibc-rh1457479-1.patch new file mode 100644 index 0000000..ca3d47b --- /dev/null +++ b/SOURCES/glibc-rh1457479-1.patch @@ -0,0 +1,339 @@ +commit 521c6785e1fc94d1f501743e9a40af9e02797df3 +Author: Andreas Jaeger +Date: Thu Jul 4 09:45:12 2013 +0200 + + Sync sys/ptrace with Linux 3.10 + +diff -rup a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h 2018-05-08 22:10:50.628796132 -0400 ++++ b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h 2018-05-08 22:33:59.528930354 -0400 +@@ -21,6 +21,7 @@ + #define _SYS_PTRACE_H 1 + + #include ++#include + + __BEGIN_DECLS + +@@ -123,7 +124,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -159,6 +164,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h b/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h 2018-05-08 22:10:51.979794763 -0400 ++++ b/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h 2018-05-08 22:33:59.532930337 -0400 +@@ -21,6 +21,7 @@ + + #include + #include ++#include + + __BEGIN_DECLS + +@@ -128,7 +129,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -179,6 +184,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h 2012-12-24 22:02:13.000000000 -0500 ++++ b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h 2018-05-08 22:33:59.539930307 -0400 +@@ -20,6 +20,7 @@ + #define _SYS_PTRACE_H 1 + + #include ++#include + + __BEGIN_DECLS + +@@ -115,7 +116,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -151,6 +156,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h 2012-12-24 22:02:13.000000000 -0500 ++++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h 2018-05-08 22:33:59.542930293 -0400 +@@ -21,6 +21,7 @@ + #define _SYS_PTRACE_H 1 + + #include ++#include + + __BEGIN_DECLS + #ifdef _LINUX_PTRACE_H +@@ -154,7 +155,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -190,6 +195,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h b/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h 2012-12-24 22:02:13.000000000 -0500 ++++ b/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h 2018-05-08 22:33:59.546930276 -0400 +@@ -20,7 +20,7 @@ + #define _SYS_PTRACE_H 1 + + #include +- ++#include + #include + + /* Linux/SPARC kernels up to 2.3.18 do not care much +@@ -198,7 +198,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -234,6 +238,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/sys/ptrace.h b/sysdeps/unix/sysv/linux/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/sys/ptrace.h 2012-12-24 22:02:13.000000000 -0500 ++++ b/sysdeps/unix/sysv/linux/sys/ptrace.h 2018-05-08 22:33:59.550930259 -0400 +@@ -20,6 +20,7 @@ + #define _SYS_PTRACE_H 1 + + #include ++#include + + __BEGIN_DECLS + +@@ -145,7 +146,11 @@ enum __ptrace_request + #define PTRACE_INTERRUPT PTRACE_INTERRUPT + + /* Wait for next group event. */ +- PTRACE_LISTEN = 0x4208 ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -181,6 +186,20 @@ enum __ptrace_eventcodes + PTRAVE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++}; ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be +diff -rup a/sysdeps/unix/sysv/linux/tile/sys/ptrace.h b/sysdeps/unix/sysv/linux/tile/sys/ptrace.h +--- a/sysdeps/unix/sysv/linux/tile/sys/ptrace.h 2018-05-08 22:10:48.688798100 -0400 ++++ b/sysdeps/unix/sysv/linux/tile/sys/ptrace.h 2018-05-08 22:33:59.535930324 -0400 +@@ -20,6 +20,7 @@ + #define _SYS_PTRACE_H 1 + + #include ++#include + + __BEGIN_DECLS + +@@ -101,8 +102,28 @@ enum __ptrace_request + #define PT_GETSIGINFO PTRACE_GETSIGINFO + + /* Set new siginfo for process. */ +- PTRACE_SETSIGINFO = 0x4203 ++ PTRACE_SETSIGINFO = 0x4203, + #define PT_SETSIGINFO PTRACE_SETSIGINFO ++ ++ /* Set register content. */ ++ PTRACE_SETREGSET = 0x4205, ++#define PTRACE_SETREGSET PTRACE_SETREGSET ++ ++ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect ++ signal or group stop state. */ ++ PTRACE_SEIZE = 0x4206, ++#define PTRACE_SEIZE PTRACE_SEIZE ++ ++ /* Trap seized tracee. */ ++ PTRACE_INTERRUPT = 0x4207, ++#define PTRACE_INTERRUPT PTRACE_INTERRUPT ++ ++ /* Wait for next group event. */ ++ PTRACE_LISTEN = 0x4208, ++#define PTRACE_LISTEN PTRACE_LISTEN ++ ++ PTRACE_PEEKSIGINFO = 0x4209 ++#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO + }; + + +@@ -132,6 +153,20 @@ enum __ptrace_eventcodes + PTRACE_EVENT_SECCOMP = 7 + }; + ++/* Arguments for PTRACE_PEEKSIGINFO. */ ++struct __ptrace_peeksiginfo_args ++{ ++ __uint64_t off; /* From which siginfo to start. */ ++ __uint32_t flags; /* Flags for peeksiginfo. */ ++ __int32_t nr; /* How many siginfos to take. */ ++}; ++ ++enum __ptrace_peeksiginfo_flags ++{ ++ /* Read signals from a shared (process wide) queue. */ ++ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) ++} ++ + /* Perform process tracing functions. REQUEST is one of the values + above, and determines the action to be taken. + For all requests except PTRACE_TRACEME, PID specifies the process to be diff --git a/SOURCES/glibc-rh1457479-2.patch b/SOURCES/glibc-rh1457479-2.patch new file mode 100644 index 0000000..0b7b3c0 --- /dev/null +++ b/SOURCES/glibc-rh1457479-2.patch @@ -0,0 +1,215 @@ +commit fb53a27c57417104069f128963bf6f26dc02b0bd +Author: Joseph Myers +Date: Tue Jan 12 12:42:55 2016 +0000 + + Add new header definitions from Linux 4.4 (plus older ptrace definitions). + + This patch adds some new header definitions from Linux 4.4: + + * MCL_ONFAULT is added to bits/mman.h / bits/mman-linux.h (this was + already done for hppa). + + * PTRACE_SECCOMP_GET_FILTER is added to sys/ptrace.h. Along with it, + the older PTRACE_GETSIGMASK and PTRACE_SETSIGMASK, added in Linux + 3.11 but missed at the time, are also added. + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). + + * bits/mman-linux.h [!MCL_CURRENT] (MCL_ONFAULT): New macro. + * sysdeps/unix/sysv/linux/alpha/bits/mman.h (MCL_ONFAULT): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h (MCL_ONFAULT): + Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/mman.h (MCL_ONFAULT): + Likewise. + * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_GETSIGMASK): New + enum constant and macro. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h + (PTRACE_GETSIGMASK): Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_GETSIGMASK): + Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h + (PTRACE_GETSIGMASK): Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_GETSIGMASK): + Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_GETSIGMASK): + Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + * sysdeps/unix/sysv/linux/tile/sys/ptrace.h (PTRACE_GETSIGMASK): + Likewise. + (PTRACE_SETSIGMASK): Likewise. + (PTRACE_SECCOMP_GET_FILTER): Likewise. + +diff --git a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +index 1ef1c5f..506ecce 100644 +--- a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +@@ -127,8 +127,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h b/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +index d082d05..b568a66 100644 +--- a/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +@@ -132,8 +132,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h +index 20d60aa..b9ddee0 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h +@@ -119,8 +119,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +index 07b118d..15991f3 100644 +--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +@@ -158,8 +158,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h b/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h +index dd57c7f..4b88152 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h +@@ -201,8 +201,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/sys/ptrace.h b/sysdeps/unix/sysv/linux/sys/ptrace.h +index cb4f6a1..ee88271 100644 +--- a/sysdeps/unix/sysv/linux/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/sys/ptrace.h +@@ -149,8 +149,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + +diff --git a/sysdeps/unix/sysv/linux/tile/sys/ptrace.h b/sysdeps/unix/sysv/linux/tile/sys/ptrace.h +index bb921c8..46b5efa 100644 +--- a/sysdeps/unix/sysv/linux/tile/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/tile/sys/ptrace.h +@@ -122,8 +122,17 @@ enum __ptrace_request + PTRACE_LISTEN = 0x4208, + #define PTRACE_LISTEN PTRACE_LISTEN + +- PTRACE_PEEKSIGINFO = 0x4209 ++ PTRACE_PEEKSIGINFO = 0x4209, + #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO ++ ++ PTRACE_GETSIGMASK = 0x420a, ++#define PTRACE_GETSIGMASK PTRACE_GETSIGMASK ++ ++ PTRACE_SETSIGMASK = 0x420b, ++#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK ++ ++ PTRACE_SECCOMP_GET_FILTER = 0x420c ++#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER + }; + + diff --git a/SOURCES/glibc-rh1457479-3.patch b/SOURCES/glibc-rh1457479-3.patch new file mode 100644 index 0000000..bb86e24 --- /dev/null +++ b/SOURCES/glibc-rh1457479-3.patch @@ -0,0 +1,128 @@ +commit b08a6a0dea63742313ed3d9577c1e2d83436b196 +Author: Stefan Liebler +Date: Mon Jun 19 16:27:25 2017 +0200 + + S390: Sync ptrace.h with kernel. [BZ #21539] + + This patch removes PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS + and PTRACE_SETFPREGS as these requests does not exist on s390 kernel. + + But the kernel has support for PTRACE_SINGLEBLOCK, + PTRACE_SECCOMP_GET_FILTER, PTRACE_PEEKUSR_AREA, PTRACE_POKEUSR_AREA, + PTRACE_GET_LAST_BREAK, PTRACE_ENABLE_TE, PTRACE_DISABLE_TE and + PTRACE_TE_ABORT_RAND. Thus those are defined now. + + The current kernel s390 specific ptrace.h file also defines + PTRACE_PEEKTEXT_AREA, PTRACE_PEEKDATA_AREA, PTRACE_POKETEXT_AREA, + PTRACE_POKEDATA_AREA, PTRACE_PEEK_SYSTEM_CALL, PTRACE_POKE_SYSTEM_CALL + and PTRACE_PROT, but those requests are not supported. + Thus those defines are skipped in glibc ptrace.h. + + There were old includes of ptrace.h in sysdeps/s390/fpu/fesetenv.c. + The ptrace feature isn't used there anymore, thus I removed the includes. + + Before this patch, /sysdeps/unix/sysv/linux/s390/sys/ptrace.h + uses ptrace-request 12 for PTRACE_GETREGS, + but /include/uapi/linux/ptrace.h uses 12 for PTRACE_SINGLEBLOCK. + + The s390 kernel has never had support for PTRACE_GETREGS! + Thus glibc ptrace.h is adjusted to match kernel ptrace.h. + + The new s390 specific test ensures, that PTRACE_SINGLEBLOCK defined + in glibc works as expected. If the kernel would interpret it as + PTRACE_GETREGS, then the testcase will not make any progress + and will time out. + + ChangeLog: + + [BZ #21539] + * NEWS: Mention s390 ptrace request changes. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h + (PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS, + PTRACE_SETFPREGS): Remove enum constant. + (PT_GETREGS, PT_SETREGS, PT_GETFPREGS, T_SETFPREGS): + Remove defines. + (PTRACE_SINGLEBLOCK): New enum constant. + (PT_STEPBLOCK): New define. + (PTRACE_PEEKUSR_AREA, PTRACE_POKEUSR_AREA, + PTRACE_GET_LAST_BREAK, PTRACE_ENABLE_TE, PTRACE_DISABLE_TE, + PTRACE_TE_ABORT_RAND): New enum constant and define. + * sysdeps/s390/fpu/fesetenv.c: Remove ptrace.h includes. + * sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c: + New file. + * sysdeps/unix/sysv/linux/s390/Makefile: Add test. + +diff --git a/sysdeps/s390/fpu/fesetenv.c b/sysdeps/s390/fpu/fesetenv.c +index 4c9bcf0..0f64a3f 100644 +--- a/sysdeps/s390/fpu/fesetenv.c ++++ b/sysdeps/s390/fpu/fesetenv.c +@@ -20,8 +20,6 @@ + #include + #include + #include +-#include +-#include + #include + + int +diff --git a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +index 7caf101..88079fc 100644 +--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +@@ -89,25 +89,9 @@ enum __ptrace_request + PTRACE_SINGLESTEP = 9, + #define PT_STEP PTRACE_SINGLESTEP + +- /* Get all general purpose registers used by a processes. +- This is not supported on all machines. */ +- PTRACE_GETREGS = 12, +-#define PT_GETREGS PTRACE_GETREGS +- +- /* Set all general purpose registers used by a processes. +- This is not supported on all machines. */ +- PTRACE_SETREGS = 13, +-#define PT_SETREGS PTRACE_SETREGS +- +- /* Get all floating point registers used by a processes. +- This is not supported on all machines. */ +- PTRACE_GETFPREGS = 14, +-#define PT_GETFPREGS PTRACE_GETFPREGS +- +- /* Set all floating point registers used by a processes. +- This is not supported on all machines. */ +- PTRACE_SETFPREGS = 15, +-#define PT_SETFPREGS PTRACE_SETFPREGS ++ /* Execute process until next taken branch. */ ++ PTRACE_SINGLEBLOCK = 12, ++#define PT_STEPBLOCK PTRACE_SINGLEBLOCK + + /* Attach to a process that is already running. */ + PTRACE_ATTACH = 16, +@@ -167,8 +151,26 @@ enum __ptrace_request + PTRACE_SETSIGMASK = 0x420b, + #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK + +- PTRACE_SECCOMP_GET_FILTER = 0x420c ++ PTRACE_SECCOMP_GET_FILTER = 0x420c, + #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER ++ ++ PTRACE_PEEKUSR_AREA = 0x5000, ++#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA ++ ++ PTRACE_POKEUSR_AREA = 0x5001, ++#define PTRACE_POKEUSR_AREA PTRACE_POKEUSR_AREA ++ ++ PTRACE_GET_LAST_BREAK = 0x5006, ++#define PTRACE_GET_LAST_BREAK PTRACE_GET_LAST_BREAK ++ ++ PTRACE_ENABLE_TE = 0x5009, ++#define PTRACE_ENABLE_TE PTRACE_ENABLE_TE ++ ++ PTRACE_DISABLE_TE = 0x5010, ++#define PTRACE_DISABLE_TE PTRACE_DISABLE_TE ++ ++ PTRACE_TE_ABORT_RAND = 0x5011 ++#define PTRACE_TE_ABORT_RAND PTRACE_TE_ABORT_RAND + }; + + diff --git a/SOURCES/glibc-rh1457479-4.patch b/SOURCES/glibc-rh1457479-4.patch new file mode 100644 index 0000000..8bc8705 --- /dev/null +++ b/SOURCES/glibc-rh1457479-4.patch @@ -0,0 +1,98 @@ +commit cab91f947a6059907a314a91f4c90abcccfb0262 +Author: Dmitry V. Levin +Date: Sun Jul 23 23:22:53 2017 +0000 + + S390: fix sys/ptrace.h to make it includible again after asm/ptrace.h + + sys/ptrace.h on S390 used to be includible both before and after + asm/ptrace.h, until commit b08a6a0dea63742313ed3d9577c1e2d83436b196 + among other changes introduced PTRACE_SINGLEBLOCK enum constant which + is also defined in asm/ptrace.h as a macro, making sys/ptrace.h fail + to compile when included after asm/ptrace.h. + + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h [_LINUX_PTRACE_H || + _S390_PTRACE_H]: Undefine all PTRACE_* macro constants defined + later as enum constants, except PTRACE_PEEKUSER, PTRACE_POKEUSER, + and PTRACE_SEIZE_DEVEL that are not defined by Linux headers. + +diff --git a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +index 88079fc..e913647 100644 +--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h ++++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h +@@ -24,24 +24,60 @@ + #include + + __BEGIN_DECLS +-#ifdef _LINUX_PTRACE_H ++#if defined _LINUX_PTRACE_H || defined _S390_PTRACE_H + /* Kludge to stop stuff gdb & strace compiles from getting upset + */ +-#undef PTRACE_TRACEME +-#undef PTRACE_PEEKTEXT +-#undef PTRACE_PEEKDATA +-#undef PTRACE_PEEKUSR +-#undef PTRACE_POKETEXT +-#undef PTRACE_POKEDATA +-#undef PTRACE_POKEUSR +-#undef PTRACE_CONT +-#undef PTRACE_KILL +-#undef PTRACE_SINGLESTEP +- +-#undef PTRACE_ATTACH +-#undef PTRACE_DETACH +- +-#undef PTRACE_SYSCALL ++# undef PTRACE_TRACEME ++# undef PTRACE_PEEKTEXT ++# undef PTRACE_PEEKDATA ++# undef PTRACE_POKETEXT ++# undef PTRACE_POKEDATA ++# undef PTRACE_CONT ++# undef PTRACE_KILL ++# undef PTRACE_SINGLESTEP ++# undef PTRACE_SINGLEBLOCK ++# undef PTRACE_ATTACH ++# undef PTRACE_DETACH ++# undef PTRACE_SYSCALL ++# undef PTRACE_SETOPTIONS ++# undef PTRACE_GETEVENTMSG ++# undef PTRACE_GETSIGINFO ++# undef PTRACE_SETSIGINFO ++# undef PTRACE_GETREGSET ++# undef PTRACE_SETREGSET ++# undef PTRACE_SEIZE ++# undef PTRACE_INTERRUPT ++# undef PTRACE_LISTEN ++# undef PTRACE_PEEKSIGINFO ++# undef PTRACE_GETSIGMASK ++# undef PTRACE_SETSIGMASK ++# undef PTRACE_SECCOMP_GET_FILTER ++# undef PTRACE_PEEKUSR_AREA ++# undef PTRACE_POKEUSR_AREA ++# undef PTRACE_GET_LAST_BREAK ++# undef PTRACE_ENABLE_TE ++# undef PTRACE_DISABLE_TE ++# undef PTRACE_TE_ABORT_RAND ++# undef PTRACE_O_TRACESYSGOOD ++# undef PTRACE_O_TRACEFORK ++# undef PTRACE_O_TRACEVFORK ++# undef PTRACE_O_TRACECLONE ++# undef PTRACE_O_TRACEEXEC ++# undef PTRACE_O_TRACEVFORKDONE ++# undef PTRACE_O_TRACEEXIT ++# undef PTRACE_O_TRACESECCOMP ++# undef PTRACE_O_EXITKILL ++# undef PTRACE_O_SUSPEND_SECCOMP ++# undef PTRACE_O_MASK ++# undef PTRACE_EVENT_FORK ++# undef PTRACE_EVENT_VFORK ++# undef PTRACE_EVENT_CLONE ++# undef PTRACE_EVENT_EXEC ++# undef PTRACE_EVENT_VFORK_DONE ++# undef PTRACE_EVENT_EXIT ++# undef PTRACE_EVENT_SECCOMP ++# undef PTRACE_EVENT_STOP ++# undef PTRACE_PEEKSIGINFO_SHARED + #endif + /* Type of the REQUEST argument to `ptrace.' */ + enum __ptrace_request diff --git a/SOURCES/glibc-rh1461231.patch b/SOURCES/glibc-rh1461231.patch new file mode 100644 index 0000000..b7773b8 --- /dev/null +++ b/SOURCES/glibc-rh1461231.patch @@ -0,0 +1,43 @@ +commit 0961f7e1e300ef633b0c1ad95d0999fb5c169f4e +Author: Jeff Layton +Date: Wed Jul 23 14:21:05 2014 -0400 + + fcntl-linux.h: add new definitions and manual updates for open file description locks + + Open file description locks have been merged into the Linux kernel for + v3.15. Add the appropriate command-value definitions and an update to + the manual that describes their usage. + +Note by DJ: the implementation doesn't work correctly for 32-bit file +offsets. Upstream changed the ABI to compensate but RHEL can't, so we +enable these only for when file offsets are 64 bits. + +diff -rup a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h +--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 18:38:24.000000000 -0400 ++++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 20:05:21.743234360 -0400 +@@ -117,6 +117,25 @@ + # define F_SETLKW64 14 /* Set record locking info (blocking). */ + #endif + ++#ifdef __USE_FILE_OFFSET64 ++/* open file description locks. ++ ++ Usually record locks held by a process are released on *any* close and are ++ not inherited across a fork. ++ ++ These cmd values will set locks that conflict with process-associated record ++ locks, but are "owned" by the opened file description, not the process. ++ This means that they are inherited across fork or clone with CLONE_FILES ++ like BSD (flock) locks, and they are only released automatically when the ++ last reference to the the file description against which they were acquired ++ is put. */ ++#ifdef __USE_GNU ++# define F_OFD_GETLK 36 ++# define F_OFD_SETLK 37 ++# define F_OFD_SETLKW 38 ++#endif ++#endif ++ + #ifdef __USE_LARGEFILE64 + # define O_LARGEFILE __O_LARGEFILE + #endif diff --git a/SOURCES/glibc-rh1471405.patch b/SOURCES/glibc-rh1471405.patch new file mode 100644 index 0000000..f177ef4 --- /dev/null +++ b/SOURCES/glibc-rh1471405.patch @@ -0,0 +1,12 @@ +diff -rup a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h +--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 17:49:11.000000000 -0400 ++++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 17:58:48.234289426 -0400 +@@ -131,6 +131,7 @@ + # define O_DIRECT __O_DIRECT /* Direct disk access. */ + # define O_NOATIME __O_NOATIME /* Do not set atime. */ + # define O_PATH __O_PATH /* Resolve pathname but do not open file. */ ++# define O_TMPFILE __O_TMPFILE /* Atomically create nameless file. */ + #endif + + /* For now, Linux has no separate synchronicitiy options for read +Only in b/sysdeps/unix/sysv/linux/bits: fcntl-linux.h~ diff --git a/SOURCES/glibc-rh1476120.patch b/SOURCES/glibc-rh1476120.patch new file mode 100644 index 0000000..4207f6e --- /dev/null +++ b/SOURCES/glibc-rh1476120.patch @@ -0,0 +1,33 @@ +commit 257dabc059447934a90be6fce4b5d2a5f4b63dfd +Author: Joseph Myers +Date: Wed Dec 14 18:23:15 2016 +0000 + + Include in bits/fcntl-linux.h. + + This patch makes bits/fcntl-linux.h include to define + the FALLOC_* flags under __USE_GNU (linux/falloc.h defines only those + bits, nothing else). + + Tested for x86_64 and x86. + + * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU]: Include + . + (FALLOC_FL_KEEP_SIZE): Remove. + (FALLOC_FL_PUNCH_HOLE): Likewise. + (FALLOC_FL_COLLAPSE_RANGE): Likewise. + (FALLOC_FL_ZERO_RANGE): Likewise. + +diff -rup a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h +--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 18:27:53.000000000 -0400 ++++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h 2018-04-13 18:29:27.108482182 -0400 +@@ -300,6 +300,10 @@ struct f_owner_ex + # define SPLICE_F_GIFT 8 /* Pages passed in are a gift. */ + + ++/* Flags for fallocate. */ ++# include ++ ++ + /* File handle structure. */ + struct file_handle + { diff --git a/SOURCES/glibc-rh1505451.patch b/SOURCES/glibc-rh1505451.patch new file mode 100644 index 0000000..b08fb6d --- /dev/null +++ b/SOURCES/glibc-rh1505451.patch @@ -0,0 +1,21 @@ +commit 12c3bb770dd3ea11215baf23b385dbf297a2a85c +Author: Torvald Riegel +Date: Fri Jan 15 22:40:50 2016 +0100 + + Fix pthread_barrier_init typo. + + Applies Paul Eggert's fix for BZ 18868. + +Index: b/nptl/pthread_barrier_init.c +=================================================================== +--- a/nptl/pthread_barrier_init.c ++++ b/nptl/pthread_barrier_init.c +@@ -39,7 +39,7 @@ pthread_barrier_init (pthread_barrier_t + + const struct pthread_barrierattr *iattr + = (attr != NULL +- ? iattr = (struct pthread_barrierattr *) attr ++ ? (struct pthread_barrierattr *) attr + : &default_barrierattr); + + if (iattr->pshared != PTHREAD_PROCESS_PRIVATE diff --git a/SOURCES/glibc-rh1505477.patch b/SOURCES/glibc-rh1505477.patch new file mode 100644 index 0000000..76a2c9e --- /dev/null +++ b/SOURCES/glibc-rh1505477.patch @@ -0,0 +1,71 @@ +commit e4043b84c49e1cf9bcf1e8320233343ecc34f8eb +Author: Joseph Myers +Date: Tue Jun 27 17:12:13 2017 +0000 + + Fix strftime build with GCC 8. + + Building with current GCC mainline fails with: + + strftime_l.c: In function '__strftime_internal': + strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros] + digits = d > width ? d : width; \ + ^ + strftime_l.c:1260:6: note: in expansion of macro 'DO_NUMBER' + DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); + ^~~~~~~~~ + strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this 'else' clause + else + ^~~~ + + In fact this particular instance is harmless; the code looks like: + + if (modifier == L_('O')) + goto bad_format; + else + DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE); + + and because of the goto, it doesn't matter that part of the expansion + isn't under the "else" conditional. But it's also clearly bad style + to rely on that. This patch changes DO_NUMBER and DO_NUMBER_SPACEPAD + to use do { } while (0) to avoid such problems. + + Tested (full testsuite) for x86_64 (GCC 6), and with + build-many-glibcs.py with GCC mainline, in conjunction with my libgcc + patch . + + * time/strftime_l.c (DO_NUMBER): Define using do { } while (0). + (DO_NUMBER_SPACEPAD): Likewise. + +Index: b/time/strftime_l.c +=================================================================== +--- a/time/strftime_l.c ++++ b/time/strftime_l.c +@@ -715,12 +715,22 @@ __strftime_internal (CHAR_T *s, size_t m + format_char = *f; + switch (format_char) + { +-#define DO_NUMBER(d, v) \ +- digits = d > width ? d : width; \ +- number_value = v; goto do_number +-#define DO_NUMBER_SPACEPAD(d, v) \ +- digits = d > width ? d : width; \ +- number_value = v; goto do_number_spacepad ++#define DO_NUMBER(d, v) \ ++ do \ ++ { \ ++ digits = d > width ? d : width; \ ++ number_value = v; \ ++ goto do_number; \ ++ } \ ++ while (0) ++#define DO_NUMBER_SPACEPAD(d, v) \ ++ do \ ++ { \ ++ digits = d > width ? d : width; \ ++ number_value = v; \ ++ goto do_number_spacepad; \ ++ } \ ++ while (0) + + case L_('%'): + if (modifier != 0) diff --git a/SOURCES/glibc-rh1505492-address.patch b/SOURCES/glibc-rh1505492-address.patch new file mode 100644 index 0000000..26afcf9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-address.patch @@ -0,0 +1,75 @@ +commit 4e0b901601038c863b97e68b18ae50a82e10a157 +Author: Joseph Myers +Date: Tue Dec 2 22:33:57 2014 +0000 + + Fix -Waddress warnings in nptl/tst-mutex1.c. + + This patch fixes -Waddress warnings in nptl/tst-mutex1.c from + comparing the address of an object with NULL (ATTR may either be NULL, + or the address of an object when included from other tests, and the + warning arises in the latter case). A macro ATTR_NULL is defined + alongside ATTR and used for the tests. + + Tested for x86_64. + + * nptl/tst-mutex1.c: Include . + [!ATTR] (ATTR_NULL): New macro. + (do_test): Test !ATTR_NULL instead of ATTR != NULL. + * nptl/tst-mutexpi1.c (ATTR_NULL): New macro. + * nptl/tst-mutexpp1.c (ATTR_NULL): New macro. + +diff --git a/nptl/tst-mutex1.c b/nptl/tst-mutex1.c +index 830c9d1f74076c5d..0f2ae0bf67cfa414 100644 +--- a/nptl/tst-mutex1.c ++++ b/nptl/tst-mutex1.c +@@ -19,10 +19,12 @@ + #include + #include + #include ++#include + + + #ifndef ATTR + # define ATTR NULL ++# define ATTR_NULL true + #endif + + +@@ -32,7 +34,7 @@ do_test (void) + pthread_mutex_t m; + + int e = pthread_mutex_init (&m, ATTR); +- if (ATTR != NULL && e == ENOTSUP) ++ if (!ATTR_NULL && e == ENOTSUP) + { + puts ("cannot support selected type of mutexes"); + return 0; +@@ -43,7 +45,7 @@ do_test (void) + return 1; + } + +- if (ATTR != NULL && pthread_mutexattr_destroy (ATTR) != 0) ++ if (!ATTR_NULL && pthread_mutexattr_destroy (ATTR) != 0) + { + puts ("mutexattr_destroy failed"); + return 1; +diff --git a/nptl/tst-mutexpi1.c b/nptl/tst-mutexpi1.c +index 623ede9fa5a2f1ca..d768664d026b047f 100644 +--- a/nptl/tst-mutexpi1.c ++++ b/nptl/tst-mutexpi1.c +@@ -24,4 +24,5 @@ prepare (void) + + + #define ATTR &a ++#define ATTR_NULL false + #include "tst-mutex1.c" +diff --git a/nptl/tst-mutexpp1.c b/nptl/tst-mutexpp1.c +index 9b7d7fe2634a8337..8ec4673f1a8c81fe 100644 +--- a/nptl/tst-mutexpp1.c ++++ b/nptl/tst-mutexpp1.c +@@ -42,4 +42,5 @@ do_test_wrapper (void) + #define TEST_FUNCTION do_test_wrapper () + + #define ATTR &a ++#define ATTR_NULL false + #include "tst-mutex1.c" diff --git a/SOURCES/glibc-rh1505492-bounded-1.patch b/SOURCES/glibc-rh1505492-bounded-1.patch new file mode 100644 index 0000000..2cf7bca --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-1.patch @@ -0,0 +1,304 @@ +commit c2d549290d24aeae30a328a6b4061f60f095dea2 +Author: Joseph Myers +Date: Thu Jan 31 22:57:06 2013 +0000 + + Remove bp-thunks code. + +Conflicts: + sysdeps/generic/bp-thunks.h + +Copyright header change; file removed manually. + +diff --git a/Makerules b/Makerules +index 9e572f48728b0f56..9bd7d603fc28a4de 100644 +--- a/Makerules ++++ b/Makerules +@@ -419,19 +419,15 @@ static-only-routines = + endif + endif + +-# Bounded pointer thunks are only built for *.ob +-elide-bp-thunks = $(addprefix $(bppfx),$(bp-thunks)) +- + elide-routines.oS += $(filter-out $(static-only-routines),\ +- $(routines) $(aux) $(sysdep_routines)) \ +- $(elide-bp-thunks) +-elide-routines.os += $(static-only-routines) $(elide-bp-thunks) ++ $(routines) $(aux) $(sysdep_routines)) ++elide-routines.os += $(static-only-routines) + + # If we have versioned code we don't need the old versions in any of the + # static libraries. +-elide-routines.o += $(shared-only-routines) $(elide-bp-thunks) +-elide-routines.op += $(shared-only-routines) $(elide-bp-thunks) +-elide-routines.og += $(shared-only-routines) $(elide-bp-thunks) ++elide-routines.o += $(shared-only-routines) ++elide-routines.op += $(shared-only-routines) ++elide-routines.og += $(shared-only-routines) + elide-routines.ob += $(shared-only-routines) + + # Shared library building. +@@ -639,11 +635,7 @@ headers := $(headers) $(sysdep_headers) + + # This is the list of all object files, gotten by + # replacing every ".c" in `sources' with a ".o". +-# We also add bounded-pointer thunks, which are later +-# elided for all suffixes except for `.ob'. +-override objects := $(addprefix $(objpfx),$(sources:.c=.o) \ +- $(patsubst %,$(bppfx)%.o,\ +- $(filter $(routines) $(sysdep_routines),$(bp-thunks)))) ++override objects := $(addprefix $(objpfx),$(sources:.c=.o)) + + + # The makefile may define $(extra-libs) with `libfoo libbar' +diff --git a/sysdeps/generic/bp-thunks.h b/sysdeps/generic/bp-thunks.h +deleted file mode 100644 +index 1c9bba21c80387a5..0000000000000000 +--- a/sysdeps/generic/bp-thunks.h ++++ /dev/null +@@ -1,69 +0,0 @@ +-/* Bounded-pointer syscall thunk support. +- Copyright (C) 2000, 2003 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Greg McGary +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#ifndef _bpthunks_h_ +-#define _bpthunks_h_ +- +-#ifndef __ASSEMBLER__ +- +-/* This header is included by the syscall BP thunks defined in +- sysd-syscalls, as created by sysdeps/unix/make-syscalls.sh. It +- includes all headers that contain prototype declarations for system +- call functions. */ +- +-#include +-#include +-#include +- +-/* Get `struct timeval' definition for select. */ +-#define __need_timeval +-#include +- +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +- +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +- +-#endif /* Not __ASSEMBLER__. */ +- +-#endif /* _bpthunks_h_ */ +diff --git a/sysdeps/unix/Makefile b/sysdeps/unix/Makefile +index 0ba5dcbcac323bb0..b369128d0cb6c2e7 100644 +--- a/sysdeps/unix/Makefile ++++ b/sysdeps/unix/Makefile +@@ -89,21 +89,10 @@ $(common-objpfx)sysd-syscalls: $(..)sysdeps/unix/make-syscalls.sh \ + mv -f $@T $@ + endif + +-# The $(bppfx)syscall.ob objects depend on s-proto-bp.d, which are +-# generated to specify dependencies generated BP stubs have on headers. +-# These deps use file names relative to a subdir, so don't +-# include them in the parent directory. +-ifneq (,$(filter $(unix-syscalls),$(routines) $(sysdep_routines) $(aux))) +-ifndef no_deps +--include $(common-objpfx)s-proto-bp.d +-endif +-endif +- + $(common-objpfx)s-%.d: $(..)sysdeps/unix/s-%.S \ + $(wildcard $(+sysdep_dirs:%=%/syscalls.list)) + $(+make-deps) + +-common-generated += s-proto-bp.d + postclean-generated += sysd-syscalls + + endif +diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh +index 2c701a2bf59183b2..4ec17c99bc16eaee 100644 +--- a/sysdeps/unix/make-syscalls.sh ++++ b/sysdeps/unix/make-syscalls.sh +@@ -36,10 +36,6 @@ + # W: wait status, optionally-NULL pointer to int (e.g., 2nd arg of wait4) + # + +-ptr='[abBfFINpPsSWV]' # all pointer keyletters +-int='[inv]' # all scalar keyletters +-typ='[ifnNpP]' # typed-arg keyletters: we capture type for use in thunk +- + ############################################################################## + + thisdir=$1; shift +@@ -313,114 +309,4 @@ while read file srcfile caller syscall args strong weak; do + ;; + esac + +- case x"$callnum",$srcfile,$args in +- x[_-],-,* | x*,*.[sS],*V*) ;; +- x*,-,*$ptr* | x*,*.[sS],*$ptr*) +- +- nv_weak=`for name in $weak; do +- case $name in +- *@*) ;; +- *) echo $name;; +- esac; done` +- +- # choose the name with the fewest leading underscores, preferably none +- set `echo $strong $nv_weak |tr '@ \t' ' \n\n' |sort -r` +- callname=$1 +- +- # convert signature string to individual numbered arg names +- # e.g., i:ipbN -> i0 i1 p2 b3 N4 +- set `echo $args | +- sed -e 's/^\(.\):\(.*\)/\2 <\10>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\11>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\12>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\13>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\14>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\15>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\16>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\17>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\18>/' \ +- -e 's/^\([^ ]\)\(.*\)/\2 <\19>/'` +- rtn=$1; shift +- args=$* +- arglist=`echo $* |sed 's/ /, /g'` +- +- # The best way to understand what's going on here is to examine +- # the output in BUILDDIR/sysd-syscalls. +- +- # generate makefile envelope & rule head +- echo "ifeq (,\$(filter $file,\$(bp-thunks)))" +- echo "bp-thunks += $file" +- echo "\$(objpfx)\$(bppfx)$file.ob: \$(common-objpfx)s-proto-bp.d" +- +- # generate macro head +- echo " (echo '#define $callname(`echo $arglist | \ +- sed -e 's/[<>]//g'`) `echo $rtn | \ +- sed -e 's/<\('$typ'0\)>/\1v;/g' \ +- -e 's/<\(b0\)>/x0; extern char \1v;/g'` \\'; \\" +- +- # generate extern decls of dummy variables for each arg +- echo " echo '`echo $args | \ +- sed -e 's/<\('$typ'[1-9]\)>/extern \1, \1v;/g' \ +- -e 's/<\([abBFIsSV][1-9]\)>/extern char \1v;/g' \ +- -e 's/<\([Wv][1-9]\)>/extern int \1v;/g'` \\'; \\" +- +- # generate bounded-pointer thunk declarator +- echo " echo '`echo $rtn | \ +- sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__bounded/g' \ +- -e 's/<\('$int'0\)>/__typeof (\1v)/g'` BP_SYM ($strong) (`echo $arglist | \ +- sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__bounded \1a/g' \ +- -e 's/<\('$int'[1-9]\)>/__typeof (\1v) \1a/g'`) { \\'; \\" +- +- # generate extern primitive syscall declaration +- echo " echo ' extern `echo $rtn | \ +- sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__unbounded/g' \ +- -e 's/<\('$int'0\)>/__typeof (\1v)/g'` ($callname) (`echo $arglist | \ +- sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__unbounded/g' \ +- -e 's/<\('$int'[1-9]\)>/__typeof (\1v)/g'`); \\'; \\" +- +- # generate call the primtive system call, optionally wrapping bounds +- # around the result if the signature's return keyletter is `b'. +- echo " echo ' return `echo $rtn | +- sed -e 's//BOUNDED_N (/' \ +- -e 's/<.0>//'`($callname) (`echo $arglist | \ +- sed -e 's/<\(a[1-9]\)>/__ptrvalue (\1a)/g' \ +- -e 's/<\(n[1-9]\)>, <\(V[1-9]\)>/\1a, CHECK_N_PAGES (\2a, \1a)/g' \ +- -e 's/<\(b[1-9]\)>, <\(n[1-9]\)>/CHECK_N (\1a, \2a), \2a/g' \ +- -e 's/<\(b[1-9]\)>, <\(N[1-9]\)>/CHECK_N (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \ +- -e 's/<\(B[1-9]\)>, <\(n[1-9]\)>/CHECK_N_NULL_OK (\1a, \2a), \2a/g' \ +- -e 's/<\(B[1-9]\)>, <\(N[1-9]\)>/CHECK_N_NULL_OK (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \ +- -e 's/<\(f[1-9]\)>/CHECK_N (\1a, 2)/g' \ +- -e 's/<\(i[1-9]\)>, <\(F[1-9]\)>/\1a, CHECK_FCNTL (\2a, \1a)/g' \ +- -e 's/<\(i[1-9]\)>, <\(I[1-9]\)>/\1a, CHECK_IOCTL (\2a, \1a)/g' \ +- -e 's/<\(p[1-9]\)>/CHECK_1 (\1a)/g' \ +- -e 's/<\([PW][1-9]\)>/CHECK_1_NULL_OK (\1a)/g' \ +- -e 's/<\(s[1-9]\)>/CHECK_STRING (\1a)/g' \ +- -e 's/<\(S[1-9]\)>/CHECK_STRING_NULL_OK (\1a)/g' \ +- -e 's/<\([ivn][1-9]\)>/\1a/g'`)`echo $rtn $args | +- sed -e 's/.*<\(n[1-9]\)>.*/, \1a)/' \ +- -e 's/<.0>.*//'`; \\'; \\" +- +- echo " echo '} \\'; \\" +- +- echo " echo 'libc_hidden_def (BP_SYM ($strong)) \\'; \\" +- +- # generate thunk aliases +- for name in $nv_weak; do +- echo " echo 'weak_alias (BP_SYM ($strong), BP_SYM ($name)) \\'; \\" +- echo " echo 'libc_hidden_weak (BP_SYM ($name)) \\'; \\" +- done +- +- # wrap up +- echo "\ +- echo ''; \\ +- echo '#include '; \\ +- ) | \$(COMPILE.c) -x c -o \$@ -" +-### Use this for debugging intermediate output: +-### ) >\$(@:.ob=.c) +-### \$(subst -c,-E,\$(COMPILE.c)) -o \$(@:.ob=.ib) \$(@:.ob=.c) +-### \$(COMPILE.c) -x cpp-output -o \$@ \$(@:.ob=.ib)" +- echo endif +- ;; +- esac +- + done +diff --git a/sysdeps/unix/s-proto-bp.S b/sysdeps/unix/s-proto-bp.S +deleted file mode 100644 +index ba0363e16ffc4bd8..0000000000000000 +--- a/sysdeps/unix/s-proto-bp.S ++++ /dev/null +@@ -1,4 +0,0 @@ +-/* This file exists just to have its dependencies determined. +- Those dependencies are then used for the bp thunk objects. */ +- +-#include +diff --git a/sysdeps/unix/sysv/linux/i386/bp-thunks.h b/sysdeps/unix/sysv/linux/i386/bp-thunks.h +deleted file mode 100644 +index 59a42ddefe8ed33e..0000000000000000 +--- a/sysdeps/unix/sysv/linux/i386/bp-thunks.h ++++ /dev/null +@@ -1,4 +0,0 @@ +-#ifndef __ASSEMBLER__ +-# include +-# include +-#endif diff --git a/SOURCES/glibc-rh1505492-bounded-10.patch b/SOURCES/glibc-rh1505492-bounded-10.patch new file mode 100644 index 0000000..f628551 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-10.patch @@ -0,0 +1,985 @@ +commit 70d9946a44ba381f81eb08c71cc150315cc112ad +Author: Joseph Myers +Date: Wed Feb 13 23:30:40 2013 +0000 + + Remove __ptrvalue, __bounded and __unbounded. + +Conflicts: + sysdeps/sparc/backtrace.c + +The changes to that file have been applied to +sysdeps/sparc/sparc64/backtrace.c instead. + +The installed header is not changed, so the +misc/sys/cdefs.h change is excluded from the backport. + +diff --git a/csu/libc-start.c b/csu/libc-start.c +index 2fab8556a5e2cb26..63757062c730c81a 100644 +--- a/csu/libc-start.c ++++ b/csu/libc-start.c +@@ -107,14 +107,14 @@ apply_irel (void) + STATIC int LIBC_START_MAIN (int (*main) (int, char **, char ** + MAIN_AUXVEC_DECL), + int argc, +- char *__unbounded *__unbounded ubp_av, ++ char **argv, + #ifdef LIBC_START_MAIN_AUXVEC_ARG +- ElfW(auxv_t) *__unbounded auxvec, ++ ElfW(auxv_t) *auxvec, + #endif + __typeof (main) init, + void (*fini) (void), + void (*rtld_fini) (void), +- void *__unbounded stack_end) ++ void *stack_end) + __attribute__ ((noreturn)); + + +@@ -123,29 +123,23 @@ STATIC int LIBC_START_MAIN (int (*main) (int, char **, char ** + finalizers were called in more than one place. */ + STATIC int + LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), +- int argc, char *__unbounded *__unbounded ubp_av, ++ int argc, char **argv, + #ifdef LIBC_START_MAIN_AUXVEC_ARG +- ElfW(auxv_t) *__unbounded auxvec, ++ ElfW(auxv_t) *auxvec, + #endif + __typeof (main) init, + void (*fini) (void), +- void (*rtld_fini) (void), void *__unbounded stack_end) ++ void (*rtld_fini) (void), void *stack_end) + { +-#if __BOUNDED_POINTERS__ +- char **argv; +-#else +-# define argv ubp_av +-#endif +- + /* Result of the 'main' function. */ + int result; + + __libc_multiple_libcs = &_dl_starting_up && !_dl_starting_up; + + #ifndef SHARED +- char *__unbounded *__unbounded ubp_ev = &ubp_av[argc + 1]; ++ char **ev = &argv[argc + 1]; + +- __environ = ubp_ev; ++ __environ = ev; + + /* Store the lowest stack address. This is done in ld.so if this is + the code for the DSO. */ +@@ -155,12 +149,12 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), + /* First process the auxiliary vector since we need to find the + program header to locate an eventually present PT_TLS entry. */ + # ifndef LIBC_START_MAIN_AUXVEC_ARG +- ElfW(auxv_t) *__unbounded auxvec; ++ ElfW(auxv_t) *auxvec; + { +- char *__unbounded *__unbounded evp = ubp_ev; ++ char **evp = ev; + while (*evp++ != NULL) + ; +- auxvec = (ElfW(auxv_t) *__unbounded) evp; ++ auxvec = (ElfW(auxv_t) *) evp; + } + # endif + _dl_aux_init (auxvec); +diff --git a/debug/backtrace.c b/debug/backtrace.c +index d0785329a2514e20..0537f6655e62be49 100644 +--- a/debug/backtrace.c ++++ b/debug/backtrace.c +@@ -63,8 +63,8 @@ __backtrace (array, size) + int size; + { + struct layout *current; +- void *__unbounded top_frame; +- void *__unbounded top_stack; ++ void *top_frame; ++ void *top_stack; + int cnt = 0; + + top_frame = FIRST_FRAME_POINTER; +diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c +index 19543aa44b84cac2..de55b2676fc80645 100644 +--- a/elf/dl-runtime.c ++++ b/elf/dl-runtime.c +@@ -62,9 +62,7 @@ _dl_fixup ( + # ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS + ELF_MACHINE_RUNTIME_FIXUP_ARGS, + # endif +- /* GKM FIXME: Fix trampoline to pass bounds so we can do +- without the `__unbounded' qualifier. */ +- struct link_map *__unbounded l, ElfW(Word) reloc_arg) ++ struct link_map *l, ElfW(Word) reloc_arg) + { + const ElfW(Sym) *const symtab + = (const void *) D_PTR (l, l_info[DT_SYMTAB]); +diff --git a/include/set-hooks.h b/include/set-hooks.h +index 74c03acb0d81acdc..8c902fa18195fa46 100644 +--- a/include/set-hooks.h ++++ b/include/set-hooks.h +@@ -41,7 +41,7 @@ + + # define RUN_HOOK(NAME, ARGS) \ + do { \ +- void *const *__unbounded ptr; \ ++ void *const *ptr; \ + for (ptr = (void *const *) symbol_set_first_element (NAME); \ + ! symbol_set_end_p (NAME, ptr); ++ptr) \ + (*(__##NAME##_hook_function_t *) *ptr) ARGS; \ +diff --git a/ports/sysdeps/am33/dl-machine.h b/ports/sysdeps/am33/dl-machine.h +index 52278c0a4e006563..90083c7dc45fc602 100644 +--- a/ports/sysdeps/am33/dl-machine.h ++++ b/ports/sysdeps/am33/dl-machine.h +@@ -63,9 +63,7 @@ elf_machine_load_address (void) + + We cannot use this scheme for profiling because the _mcount call + destroys the passed register information. */ +-/* GKM FIXME: Fix trampoline to pass bounds so we can do +- without the `__unbounded' qualifier. */ +-static ElfW(Addr) fixup (struct link_map *__unbounded l, ElfW(Word) reloc_offset) ++static ElfW(Addr) fixup (struct link_map *l, ElfW(Word) reloc_offset) + __attribute__ ((unused)); + static ElfW(Addr) profile_fixup (struct link_map *l, ElfW(Word) reloc_offset, + ElfW(Addr) retaddr) +diff --git a/ports/sysdeps/arm/frame.h b/ports/sysdeps/arm/frame.h +index a98729b6887722ed..268f8b250f033f0f 100644 +--- a/ports/sysdeps/arm/frame.h ++++ b/ports/sysdeps/arm/frame.h +@@ -19,9 +19,9 @@ + /* This is the APCS stack backtrace structure. */ + struct layout + { +- struct layout *__unbounded next; +- void *__unbounded sp; +- void *__unbounded return_address; ++ struct layout *next; ++ void *sp; ++ void *return_address; + }; + + #define FIRST_FRAME_POINTER ADVANCE_STACK_FRAME (__builtin_frame_address (0)) +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c b/ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c +index 811230a1fdec983f..1db848f06e9fb072 100644 +--- a/ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c ++++ b/ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c +@@ -51,8 +51,8 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + } + + result = INLINE_SYSCALL (rt_sigaction, 4, sig, +- act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, _NSIG / 8); ++ act ? &kact : NULL, ++ oact ? &koact : NULL, _NSIG / 8); + if (result >= 0 || errno != ENOSYS) + { + if (oact && result >= 0) +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sigaction.c b/ports/sysdeps/unix/sysv/linux/alpha/sigaction.c +index 2dcb133442a4636a..14b47feee06c43b0 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/sigaction.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/sigaction.c +@@ -32,7 +32,7 @@ + : INLINE_SYSCALL1(name, nr, args)) + + struct kernel_sigaction; +-extern int __syscall_rt_sigaction (int, const struct kernel_sigaction *__unbounded, +- struct kernel_sigaction *__unbounded, size_t); ++extern int __syscall_rt_sigaction (int, const struct kernel_sigaction *, ++ struct kernel_sigaction *, size_t); + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/brk.c b/ports/sysdeps/unix/sysv/linux/am33/brk.c +index a06495cf29d5d67b..dc7ec639b3a558c0 100644 +--- a/ports/sysdeps/unix/sysv/linux/am33/brk.c ++++ b/ports/sysdeps/unix/sysv/linux/am33/brk.c +@@ -30,7 +30,7 @@ __brk (void *addr) + { + void *newbrk; + +- newbrk = INLINE_SYSCALL (brk, 1, __ptrvalue (addr)); ++ newbrk = INLINE_SYSCALL (brk, 1, addr); + + __curbrk = newbrk; + +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sigaction.c b/ports/sysdeps/unix/sysv/linux/arm/sigaction.c +index fe036c1bdc6660b0..02b47e79e2139e0e 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/sigaction.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/sigaction.c +@@ -83,8 +83,8 @@ __libc_sigaction (sig, act, oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, sig, +- act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, _NSIG / 8); ++ act ? &kact : NULL, ++ oact ? &koact : NULL, _NSIG / 8); + + if (oact && result >= 0) + { +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +index dda02b14442d5cb5..2006bc69d80720ba 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +@@ -34,7 +34,7 @@ __fxstat64 (int vers, int fd, struct stat64 *buf) + int result; + struct kernel_stat kbuf; + +- result = INLINE_SYSCALL (fstat, 2, fd, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (fstat, 2, fd, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +index 645ffa122ea62de6..5c795e47a977baaa 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +@@ -95,9 +95,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag) + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, &kst); + else +- result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (stat, err, 2, file, &kst); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat64_conv (vers, &kst, st); +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +index f698d9298a3855e6..a59e2bb389238751 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +@@ -33,7 +33,7 @@ __lxstat64 (int vers, const char *name, struct stat64 *buf) + int result; + struct kernel_stat kbuf; + +- result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (lstat, 2, name, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +index 623299c6b8db85c4..e08c177d256108a0 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +@@ -34,7 +34,7 @@ __xstat64 (int vers, const char *name, struct stat64 *buf) + int result; + struct kernel_stat kbuf; + +- result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (stat, 2, name, &kbuf); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sigaction.c b/ports/sysdeps/unix/sysv/linux/mips/sigaction.c +index d646af3f22928ef7..b6e6811a271344a3 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/sigaction.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/sigaction.c +@@ -71,8 +71,8 @@ __libc_sigaction (sig, act, oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, sig, +- act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, ++ act ? &kact : NULL, ++ oact ? &koact : NULL, + sizeof (kernel_sigset_t)); + + if (oact && result >= 0) +diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c +index 3e88b2c4dd513909..97805989f6db70bf 100644 +--- a/stdio-common/vfprintf.c ++++ b/stdio-common/vfprintf.c +@@ -308,7 +308,7 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) + do \ + { \ + int offset; \ +- void *__unbounded ptr; \ ++ void *ptr; \ + spec = (ChExpr); \ + offset = NOT_IN_JUMP_RANGE (spec) ? REF (form_unknown) \ + : table[CHAR_CLASS (spec)]; \ +@@ -321,7 +321,7 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) + # define JUMP(ChExpr, table) \ + do \ + { \ +- const void *__unbounded ptr; \ ++ const void *ptr; \ + spec = (ChExpr); \ + ptr = NOT_IN_JUMP_RANGE (spec) ? REF (form_unknown) \ + : table[CHAR_CLASS (spec)]; \ +diff --git a/string/strcpy.c b/string/strcpy.c +index bf624947cc780328..22467bb88dc8cef8 100644 +--- a/string/strcpy.c ++++ b/string/strcpy.c +@@ -28,7 +28,7 @@ strcpy (dest, src) + const char *src; + { + char c; +- char *__unbounded s = (char *__unbounded) src; ++ char *s = (char *) src; + const ptrdiff_t off = dest - s - 1; + + do +diff --git a/sysdeps/generic/frame.h b/sysdeps/generic/frame.h +index 0f24b85913aa9694..1772f8c05b6f0fa9 100644 +--- a/sysdeps/generic/frame.h ++++ b/sysdeps/generic/frame.h +@@ -18,6 +18,6 @@ + + struct layout + { +- void *__unbounded next; +- void *__unbounded return_address; ++ void *next; ++ void *return_address; + }; +diff --git a/sysdeps/gnu/bits/msq.h b/sysdeps/gnu/bits/msq.h +index 6cfc7d76e54a3742..ee9812ae111db277 100644 +--- a/sysdeps/gnu/bits/msq.h ++++ b/sysdeps/gnu/bits/msq.h +@@ -38,13 +38,13 @@ typedef unsigned short int msglen_t; + struct msqid_ds + { + struct ipc_perm msg_perm; /* structure describing operation permission */ +- struct msg *__unbounded __msg_first; /* pointer to first message on queue */ +- struct msg *__unbounded __msg_last; /* pointer to last message on queue */ ++ struct msg *__msg_first; /* pointer to first message on queue */ ++ struct msg *__msg_last; /* pointer to last message on queue */ + __time_t msg_stime; /* time of last msgsnd command */ + __time_t msg_rtime; /* time of last msgrcv command */ + __time_t msg_ctime; /* time of last change */ +- struct wait_queue *__unbounded __wwait; /* ??? */ +- struct wait_queue *__unbounded __rwait; /* ??? */ ++ struct wait_queue *__wwait; /* ??? */ ++ struct wait_queue *__rwait; /* ??? */ + unsigned short int __msg_cbytes;/* current number of bytes on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ +diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h +index 2f6dd4fae200c016..fc2b976651e20ca7 100644 +--- a/sysdeps/i386/dl-machine.h ++++ b/sysdeps/i386/dl-machine.h +@@ -152,11 +152,9 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + We cannot use this scheme for profiling because the _mcount call + destroys the passed register information. */ +-/* GKM FIXME: Fix trampoline to pass bounds so we can do +- without the `__unbounded' qualifier. */ + #define ARCH_FIXUP_ATTRIBUTE __attribute__ ((regparm (3), stdcall, unused)) + +-extern ElfW(Addr) _dl_fixup (struct link_map *__unbounded l, ++extern ElfW(Addr) _dl_fixup (struct link_map *l, + ElfW(Word) reloc_offset) + ARCH_FIXUP_ATTRIBUTE; + extern ElfW(Addr) _dl_profile_fixup (struct link_map *l, +diff --git a/sysdeps/powerpc/powerpc32/backtrace.c b/sysdeps/powerpc/powerpc32/backtrace.c +index 0e2e5c296876444e..6fab3b586aee06d5 100644 +--- a/sysdeps/powerpc/powerpc32/backtrace.c ++++ b/sysdeps/powerpc/powerpc32/backtrace.c +@@ -31,8 +31,8 @@ + */ + struct layout + { +- struct layout *__unbounded next; +- void *__unbounded return_address; ++ struct layout *next; ++ void *return_address; + }; + + int +diff --git a/sysdeps/powerpc/powerpc64/backtrace.c b/sysdeps/powerpc/powerpc64/backtrace.c +index 08e535585ef2a104..dcdd51cb454e8fa2 100644 +--- a/sysdeps/powerpc/powerpc64/backtrace.c ++++ b/sysdeps/powerpc/powerpc64/backtrace.c +@@ -33,9 +33,9 @@ + */ + struct layout + { +- struct layout *__unbounded next; ++ struct layout *next; + long condition_register; +- void *__unbounded return_address; ++ void *return_address; + }; + + int +diff --git a/sysdeps/sparc/sparc64/backtrace.c b/sysdeps/sparc/sparc64/backtrace.c +index d5a1ebec000ce91e..f45e2b8b63ad00ed 100644 +--- a/sysdeps/sparc/sparc64/backtrace.c ++++ b/sysdeps/sparc/sparc64/backtrace.c +@@ -26,7 +26,7 @@ struct layout + unsigned long locals[8]; + unsigned long ins[6]; + unsigned long next; +- void *__unbounded return_address; ++ void *return_address; + }; + + int +@@ -38,14 +38,14 @@ __backtrace (void **array, int size) + + asm volatile ("flushw"); + asm volatile ("mov %%fp, %0" : "=r"(fp)); +- current = (struct layout *__unbounded) (fp + STACK_BIAS); ++ current = (struct layout *) (fp + STACK_BIAS); + + for (count = 0; count < size; count++) + { + array[count] = current->return_address; + if (!current->next) + break; +- current = (struct layout *__unbounded) (current->next + STACK_BIAS); ++ current = (struct layout *) (current->next + STACK_BIAS); + } + + return count; +diff --git a/sysdeps/unix/sysv/linux/aio_sigqueue.c b/sysdeps/unix/sysv/linux/aio_sigqueue.c +index 91785e545f18c843..9ad149fe32fb214b 100644 +--- a/sysdeps/unix/sysv/linux/aio_sigqueue.c ++++ b/sysdeps/unix/sysv/linux/aio_sigqueue.c +@@ -48,8 +48,7 @@ __aio_sigqueue (sig, val, caller_pid) + info.si_uid = getuid (); + info.si_value = val; + +- return INLINE_SYSCALL (rt_sigqueueinfo, 3, info.si_pid, +- sig, __ptrvalue (&info)); ++ return INLINE_SYSCALL (rt_sigqueueinfo, 3, info.si_pid, sig, &info); + } + #else + # include +diff --git a/sysdeps/unix/sysv/linux/fxstat.c b/sysdeps/unix/sysv/linux/fxstat.c +index 369ceb818267086c..e3cf3d8e284beb65 100644 +--- a/sysdeps/unix/sysv/linux/fxstat.c ++++ b/sysdeps/unix/sysv/linux/fxstat.c +@@ -45,7 +45,7 @@ __fxstat (int vers, int fd, struct stat *buf) + struct kernel_stat kbuf; + int result; + +- result = INLINE_SYSCALL (fstat, 2, fd, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (fstat, 2, fd, &kbuf); + if (result == 0) + result = __xstat_conv (vers, &kbuf, buf); + +diff --git a/sysdeps/unix/sysv/linux/fxstatat.c b/sysdeps/unix/sysv/linux/fxstatat.c +index 127f979adf050b45..b4397b54ada455f0 100644 +--- a/sysdeps/unix/sysv/linux/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/fxstatat.c +@@ -125,9 +125,9 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + } + #else + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, &kst); + else +- result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (stat, err, 2, file, &kst); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat_conv (vers, &kst, st); +diff --git a/sysdeps/unix/sysv/linux/gai_sigqueue.c b/sysdeps/unix/sysv/linux/gai_sigqueue.c +index f517f9c850069cab..3896df0cd345bc8b 100644 +--- a/sysdeps/unix/sysv/linux/gai_sigqueue.c ++++ b/sysdeps/unix/sysv/linux/gai_sigqueue.c +@@ -47,8 +47,7 @@ __gai_sigqueue (sig, val, caller_pid) + info.si_uid = __getuid (); + info.si_value = val; + +- return INLINE_SYSCALL (rt_sigqueueinfo, 3, info.si_pid, +- sig, __ptrvalue (&info)); ++ return INLINE_SYSCALL (rt_sigqueueinfo, 3, info.si_pid, sig, &info); + } + #else + # include +diff --git a/sysdeps/unix/sysv/linux/i386/brk.c b/sysdeps/unix/sysv/linux/i386/brk.c +index 0b367096f47007ce..c785b68b5fc2c6b5 100644 +--- a/sysdeps/unix/sysv/linux/i386/brk.c ++++ b/sysdeps/unix/sysv/linux/i386/brk.c +@@ -31,11 +31,10 @@ weak_alias (__curbrk, ___brk_addr) + int + __brk (void *addr) + { +- void *__unbounded newbrk; ++ void *newbrk; + + INTERNAL_SYSCALL_DECL (err); +- newbrk = (void *__unbounded) INTERNAL_SYSCALL (brk, err, 1, +- __ptrvalue (addr)); ++ newbrk = (void *) INTERNAL_SYSCALL (brk, err, 1, addr); + + __curbrk = newbrk; + +diff --git a/sysdeps/unix/sysv/linux/i386/fxstat.c b/sysdeps/unix/sysv/linux/i386/fxstat.c +index 323039927e1687a3..64cf4c0f75c3bd8b 100644 +--- a/sysdeps/unix/sysv/linux/i386/fxstat.c ++++ b/sysdeps/unix/sysv/linux/i386/fxstat.c +@@ -44,7 +44,7 @@ __fxstat (int vers, int fd, struct stat *buf) + { + struct stat64 buf64; + +- result = INLINE_SYSCALL (fstat64, 2, fd, __ptrvalue (&buf64)); ++ result = INLINE_SYSCALL (fstat64, 2, fd, &buf64); + if (result == 0) + result = __xstat32_conv (vers, &buf64, buf); + return result; +diff --git a/sysdeps/unix/sysv/linux/i386/fxstatat.c b/sysdeps/unix/sysv/linux/i386/fxstatat.c +index ad3a386864f8b04b..2125ce7d7673c841 100644 +--- a/sysdeps/unix/sysv/linux/i386/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/i386/fxstatat.c +@@ -110,9 +110,9 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat64, err, 2, file, __ptrvalue (&st64)); ++ result = INTERNAL_SYSCALL (lstat64, err, 2, file, &st64); + else +- result = INTERNAL_SYSCALL (stat64, err, 2, file, __ptrvalue (&st64)); ++ result = INTERNAL_SYSCALL (stat64, err, 2, file, &st64); + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat32_conv (vers, &st64, st); + +diff --git a/sysdeps/unix/sysv/linux/i386/lxstat.c b/sysdeps/unix/sysv/linux/i386/lxstat.c +index 97b237404f8c8822..bc2d27a1739ca3c2 100644 +--- a/sysdeps/unix/sysv/linux/i386/lxstat.c ++++ b/sysdeps/unix/sysv/linux/i386/lxstat.c +@@ -45,7 +45,7 @@ __lxstat (int vers, const char *name, struct stat *buf) + { + struct stat64 buf64; + +- result = INLINE_SYSCALL (lstat64, 2, name, __ptrvalue (&buf64)); ++ result = INLINE_SYSCALL (lstat64, 2, name, &buf64); + if (result == 0) + result = __xstat32_conv (vers, &buf64, buf); + return result; +diff --git a/sysdeps/unix/sysv/linux/i386/msgctl.c b/sysdeps/unix/sysv/linux/i386/msgctl.c +index 7d009801b16fbdba..d63b0b4b46134185 100644 +--- a/sysdeps/unix/sysv/linux/i386/msgctl.c ++++ b/sysdeps/unix/sysv/linux/i386/msgctl.c +@@ -29,13 +29,13 @@ + struct __old_msqid_ds + { + struct __old_ipc_perm msg_perm; /* structure describing operation permission */ +- struct msg *__unbounded __msg_first; /* pointer to first message on queue */ +- struct msg *__unbounded __msg_last; /* pointer to last message on queue */ ++ struct msg *__msg_first; /* pointer to first message on queue */ ++ struct msg *__msg_last; /* pointer to last message on queue */ + __time_t msg_stime; /* time of last msgsnd command */ + __time_t msg_rtime; /* time of last msgrcv command */ + __time_t msg_ctime; /* time of last change */ +- struct wait_queue *__unbounded __wwait; /* ??? */ +- struct wait_queue *__unbounded __rwait; /* ??? */ ++ struct wait_queue *__wwait; /* ??? */ ++ struct wait_queue *__rwait; /* ??? */ + unsigned short int __msg_cbytes; /* current number of bytes on queue */ + unsigned short int msg_qnum; /* number of messages currently on queue */ + unsigned short int msg_qbytes; /* max number of bytes allowed on queue */ +diff --git a/sysdeps/unix/sysv/linux/i386/setrlimit.c b/sysdeps/unix/sysv/linux/i386/setrlimit.c +index 7d0840ded5fe3c70..9c6f5dd64ddf27cf 100644 +--- a/sysdeps/unix/sysv/linux/i386/setrlimit.c ++++ b/sysdeps/unix/sysv/linux/i386/setrlimit.c +@@ -24,7 +24,7 @@ + #include + + extern int __new_setrlimit (enum __rlimit_resource resource, +- const struct rlimit *__unboundedrlimits); ++ const struct rlimit *rlimits); + + /* Consider moving to syscalls.list. */ + +diff --git a/sysdeps/unix/sysv/linux/i386/shmctl.c b/sysdeps/unix/sysv/linux/i386/shmctl.c +index a1f4feb3fe1c815c..59d07d7ee09579ef 100644 +--- a/sysdeps/unix/sysv/linux/i386/shmctl.c ++++ b/sysdeps/unix/sysv/linux/i386/shmctl.c +@@ -38,8 +38,8 @@ struct __old_shmid_ds + __ipc_pid_t shm_lpid; /* pid of last shmop */ + unsigned short int shm_nattch; /* number of current attaches */ + unsigned short int __shm_npages; /* size of segment (pages) */ +- unsigned long int *__unbounded __shm_pages; /* array of ptrs to frames -> SHMMAX */ +- struct vm_area_struct *__unbounded __attaches; /* descriptors for attaches */ ++ unsigned long int *__shm_pages; /* array of ptrs to frames -> SHMMAX */ ++ struct vm_area_struct *__attaches; /* descriptors for attaches */ + }; + + struct __old_shminfo +diff --git a/sysdeps/unix/sysv/linux/i386/sigaction.c b/sysdeps/unix/sysv/linux/i386/sigaction.c +index df5c235e5ac271dc..414ef759a97363c4 100644 +--- a/sysdeps/unix/sysv/linux/i386/sigaction.c ++++ b/sysdeps/unix/sysv/linux/i386/sigaction.c +@@ -72,8 +72,8 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, +- sig, act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, _NSIG / 8); ++ sig, act ? &kact : NULL, ++ oact ? &koact : NULL, _NSIG / 8); + + if (oact && result >= 0) + { +diff --git a/sysdeps/unix/sysv/linux/i386/xstat.c b/sysdeps/unix/sysv/linux/i386/xstat.c +index f063ac98d849ed7b..049e70fa7f007896 100644 +--- a/sysdeps/unix/sysv/linux/i386/xstat.c ++++ b/sysdeps/unix/sysv/linux/i386/xstat.c +@@ -45,7 +45,7 @@ __xstat (int vers, const char *name, struct stat *buf) + { + struct stat64 buf64; + +- result = INLINE_SYSCALL (stat64, 2, name, __ptrvalue (&buf64)); ++ result = INLINE_SYSCALL (stat64, 2, name, &buf64); + if (result == 0) + result = __xstat32_conv (vers, &buf64, buf); + return result; +diff --git a/sysdeps/unix/sysv/linux/llseek.c b/sysdeps/unix/sysv/linux/llseek.c +index feef9aaaf9dcf853..6608a2145c680cb9 100644 +--- a/sysdeps/unix/sysv/linux/llseek.c ++++ b/sysdeps/unix/sysv/linux/llseek.c +@@ -32,7 +32,7 @@ __llseek (int fd, loff_t offset, int whence) + + return (loff_t) (INLINE_SYSCALL (_llseek, 5, fd, (off_t) (offset >> 32), + (off_t) (offset & 0xffffffff), +- __ptrvalue (&retval), whence) ?: retval); ++ &retval, whence) ?: retval); + } + weak_alias (__llseek, llseek) + strong_alias (__llseek, __libc_lseek64) +diff --git a/sysdeps/unix/sysv/linux/lxstat.c b/sysdeps/unix/sysv/linux/lxstat.c +index 15f93b09ec1661f1..1096b981f5560eb8 100644 +--- a/sysdeps/unix/sysv/linux/lxstat.c ++++ b/sysdeps/unix/sysv/linux/lxstat.c +@@ -44,7 +44,7 @@ __lxstat (int vers, const char *name, struct stat *buf) + struct kernel_stat kbuf; + int result; + +- result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (lstat, 2, name, &kbuf); + if (result == 0) + result = __xstat_conv (vers, &kbuf, buf); + +diff --git a/sysdeps/unix/sysv/linux/mmap64.c b/sysdeps/unix/sysv/linux/mmap64.c +index 87bd532c5e350c56..2c8304d860f19d58 100644 +--- a/sysdeps/unix/sysv/linux/mmap64.c ++++ b/sysdeps/unix/sysv/linux/mmap64.c +@@ -53,14 +53,10 @@ __mmap64 (void *addr, size_t len, int prot, int flags, int fd, off64_t offset) + return MAP_FAILED; + } + void *result; +- __ptrvalue (result) = (void *__unbounded) +- INLINE_SYSCALL (mmap2, 6, __ptrvalue (addr), ++ result = (void *) ++ INLINE_SYSCALL (mmap2, 6, addr, + len, prot, flags, fd, + (off_t) (offset >> MMAP2_PAGE_SHIFT)); +-#if __BOUNDED_POINTERS__ +- __ptrlow (result) = __ptrvalue (result); +- __ptrhigh (result) = __ptrvalue (result) + len; +-#endif + return result; + } + weak_alias (__mmap64, mmap64) +diff --git a/sysdeps/unix/sysv/linux/msgctl.c b/sysdeps/unix/sysv/linux/msgctl.c +index 00285a7103d70cea..09d4dc11f779a63f 100644 +--- a/sysdeps/unix/sysv/linux/msgctl.c ++++ b/sysdeps/unix/sysv/linux/msgctl.c +@@ -31,13 +31,13 @@ + struct __old_msqid_ds + { + struct __old_ipc_perm msg_perm; /* structure describing operation permission */ +- struct msg *__unbounded __msg_first; /* pointer to first message on queue */ +- struct msg *__unbounded __msg_last; /* pointer to last message on queue */ ++ struct msg *__msg_first; /* pointer to first message on queue */ ++ struct msg *__msg_last; /* pointer to last message on queue */ + __time_t msg_stime; /* time of last msgsnd command */ + __time_t msg_rtime; /* time of last msgrcv command */ + __time_t msg_ctime; /* time of last change */ +- struct wait_queue *__unbounded __wwait; /* ??? */ +- struct wait_queue *__unbounded __rwait; /* ??? */ ++ struct wait_queue *__wwait; /* ??? */ ++ struct wait_queue *__rwait; /* ??? */ + unsigned short int __msg_cbytes; /* current number of bytes on queue */ + unsigned short int msg_qnum; /* number of messages currently on queue */ + unsigned short int msg_qbytes; /* max number of bytes allowed on queue */ +@@ -104,8 +104,7 @@ __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + return -1; + } + } +- result = INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd, 0, __ptrvalue (&old)); ++ result = INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, &old); + if (result != -1 && cmd != IPC_SET) + { + memset(buf, 0, sizeof(*buf)); +diff --git a/sysdeps/unix/sysv/linux/msgrcv.c b/sysdeps/unix/sysv/linux/msgrcv.c +index dc0e34fe3d7f2ffd..a3085abda24d4512 100644 +--- a/sysdeps/unix/sysv/linux/msgrcv.c ++++ b/sysdeps/unix/sysv/linux/msgrcv.c +@@ -27,7 +27,7 @@ + arguments to a system call. */ + struct ipc_kludge + { +- void *__unbounded msgp; ++ void *msgp; + long int msgtyp; + }; + +@@ -48,13 +48,12 @@ __libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) + tmp.msgtyp = msgtyp; + + if (SINGLE_THREAD_P) +- return INLINE_SYSCALL (ipc, 5, IPCOP_msgrcv, msqid, msgsz, msgflg, +- __ptrvalue (&tmp)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_msgrcv, msqid, msgsz, msgflg, &tmp); + + int oldtype = LIBC_CANCEL_ASYNC (); + + ssize_t result = INLINE_SYSCALL (ipc, 5, IPCOP_msgrcv, msqid, msgsz, msgflg, +- __ptrvalue (&tmp)); ++ &tmp); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +index 89de1aa7e6e1df59..078d6c7ca99c7203 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c ++++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +@@ -34,7 +34,7 @@ int __cache_line_size attribute_hidden; + + struct startup_info + { +- void *__unbounded sda_base; ++ void *sda_base; + int (*main) (int, char **, char **, void *); + int (*init) (int, char **, char **, void *); + void (*fini) (void); +@@ -43,34 +43,28 @@ struct startup_info + int + /* GKM FIXME: GCC: this should get __BP_ prefix by virtue of the + BPs in the arglist of startup_info.main and startup_info.init. */ +- BP_SYM (__libc_start_main) (int argc, char *__unbounded *__unbounded ubp_av, +- char *__unbounded *__unbounded ubp_ev, +- ElfW (auxv_t) * __unbounded auxvec, ++ BP_SYM (__libc_start_main) (int argc, char **argv, ++ char **ev, ++ ElfW (auxv_t) * auxvec, + void (*rtld_fini) (void), +- struct startup_info *__unbounded stinfo, +- char *__unbounded *__unbounded stack_on_entry) ++ struct startup_info *stinfo, ++ char **stack_on_entry) + { +-#if __BOUNDED_POINTERS__ +- char **argv; +-#else +-# define argv ubp_av +-#endif +- + /* the PPC SVR4 ABI says that the top thing on the stack will + be a NULL pointer, so if not we assume that we're being called + as a statically-linked program by Linux... */ + if (*stack_on_entry != NULL) + { +- char *__unbounded * __unbounded temp; ++ char **temp; + /* ...in which case, we have argc as the top thing on the + stack, followed by argv (NULL-terminated), envp (likewise), + and the auxilary vector. */ + /* 32/64-bit agnostic load from stack */ +- argc = *(long int *__unbounded) stack_on_entry; +- ubp_av = stack_on_entry + 1; +- ubp_ev = ubp_av + argc + 1; ++ argc = *(long int *) stack_on_entry; ++ argv = stack_on_entry + 1; ++ ev = argv + argc + 1; + #ifdef HAVE_AUX_VECTOR +- temp = ubp_ev; ++ temp = ev; + while (*temp != NULL) + ++temp; + auxvec = (ElfW (auxv_t) *)++ temp; +@@ -87,7 +81,7 @@ int + break; + } + +- return generic_start_main (stinfo->main, argc, ubp_av, auxvec, ++ return generic_start_main (stinfo->main, argc, argv, auxvec, + stinfo->init, stinfo->fini, rtld_fini, + stack_on_entry); + } +diff --git a/sysdeps/unix/sysv/linux/ptrace.c b/sysdeps/unix/sysv/linux/ptrace.c +index a75e5ba0a8ab6b53..b06a42ace08e38fa 100644 +--- a/sysdeps/unix/sysv/linux/ptrace.c ++++ b/sysdeps/unix/sysv/linux/ptrace.c +@@ -42,8 +42,7 @@ ptrace (enum __ptrace_request request, ...) + if (request > 0 && request < 4) + data = &ret; + +- res = INLINE_SYSCALL (ptrace, 4, request, pid, +- __ptrvalue (addr), __ptrvalue (data)); ++ res = INLINE_SYSCALL (ptrace, 4, request, pid, addr, data); + if (res >= 0 && request > 0 && request < 4) + { + __set_errno (0); +diff --git a/sysdeps/unix/sysv/linux/semctl.c b/sysdeps/unix/sysv/linux/semctl.c +index bae5a8d28306e653..3a2f1b39cea657e5 100644 +--- a/sysdeps/unix/sysv/linux/semctl.c ++++ b/sysdeps/unix/sysv/linux/semctl.c +@@ -34,10 +34,10 @@ struct __old_semid_ds + struct __old_ipc_perm sem_perm; /* operation permission struct */ + __time_t sem_otime; /* last semop() time */ + __time_t sem_ctime; /* last time changed by semctl() */ +- struct sem *__unbounded __sembase; /* ptr to first semaphore in array */ +- struct sem_queue *__unbounded __sem_pending; /* pending operations */ +- struct sem_queue *__unbounded __sem_pending_last; /* last pending operation */ +- struct sem_undo *__unbounded __undo; /* ondo requests on this array */ ++ struct sem *__sembase; /* ptr to first semaphore in array */ ++ struct sem_queue *__sem_pending; /* pending operations */ ++ struct sem_queue *__sem_pending_last; /* last pending operation */ ++ struct sem_undo *__undo; /* ondo requests on this array */ + unsigned short int sem_nsems; /* number of semaphores in set */ + }; + +diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c +index 21417f4ced70e778..5ac515bc023e6783 100644 +--- a/sysdeps/unix/sysv/linux/shmat.c ++++ b/sysdeps/unix/sysv/linux/shmat.c +@@ -36,7 +36,7 @@ shmat (shmid, shmaddr, shmflg) + { + INTERNAL_SYSCALL_DECL(err); + unsigned long resultvar; +- void *__unbounded raddr; ++ void *raddr; + + #if __BOUNDED_POINTERS__ + size_t length = ~0; +@@ -49,8 +49,8 @@ shmat (shmid, shmaddr, shmflg) + + resultvar = INTERNAL_SYSCALL (ipc, err, 5, IPCOP_shmat, + shmid, shmflg, +- (long int) __ptrvalue (&raddr), +- __ptrvalue ((void *) shmaddr)); ++ (long int) &raddr, ++ (void *) shmaddr); + if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) + { + __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); +diff --git a/sysdeps/unix/sysv/linux/shmctl.c b/sysdeps/unix/sysv/linux/shmctl.c +index 3fb6b0c0f203db08..f99ee77f92878b1b 100644 +--- a/sysdeps/unix/sysv/linux/shmctl.c ++++ b/sysdeps/unix/sysv/linux/shmctl.c +@@ -40,8 +40,8 @@ struct __old_shmid_ds + __ipc_pid_t shm_lpid; /* pid of last shmop */ + unsigned short int shm_nattch; /* number of current attaches */ + unsigned short int __shm_npages; /* size of segment (pages) */ +- unsigned long int *__unbounded __shm_pages; /* array of ptrs to frames -> SHMMAX */ +- struct vm_area_struct *__unbounded __attaches; /* descriptors for attaches */ ++ unsigned long int *__shm_pages; /* array of ptrs to frames -> SHMMAX */ ++ struct vm_area_struct *__attaches; /* descriptors for attaches */ + }; + + struct __old_shminfo +@@ -116,8 +116,7 @@ __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + return -1; + } + } +- result = INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, +- __ptrvalue (&old.ds)); ++ result = INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, &old.ds); + if (result != -1 && (cmd == SHM_STAT || cmd == IPC_STAT)) + { + memset(buf, 0, sizeof(*buf)); +diff --git a/sysdeps/unix/sysv/linux/shmdt.c b/sysdeps/unix/sysv/linux/shmdt.c +index 0791b37e1982eaa3..c7fd62d3c1c82ffb 100644 +--- a/sysdeps/unix/sysv/linux/shmdt.c ++++ b/sysdeps/unix/sysv/linux/shmdt.c +@@ -30,5 +30,5 @@ int + shmdt (shmaddr) + const void *shmaddr; + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_shmdt, 0, 0, 0, __ptrvalue ((void *) shmaddr)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_shmdt, 0, 0, 0, (void *) shmaddr); + } +diff --git a/sysdeps/unix/sysv/linux/sigaction.c b/sysdeps/unix/sysv/linux/sigaction.c +index 01fb16e5573491c5..0eee8e6b0322399a 100644 +--- a/sysdeps/unix/sysv/linux/sigaction.c ++++ b/sysdeps/unix/sysv/linux/sigaction.c +@@ -55,8 +55,8 @@ __libc_sigaction (sig, act, oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, sig, +- act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, _NSIG / 8); ++ act ? &kact : NULL, ++ oact ? &koact : NULL, _NSIG / 8); + + if (oact && result >= 0) + { +diff --git a/sysdeps/unix/sysv/linux/sigqueue.c b/sysdeps/unix/sysv/linux/sigqueue.c +index d87c0da3af1a5070..e4470d4ca660f9b8 100644 +--- a/sysdeps/unix/sysv/linux/sigqueue.c ++++ b/sysdeps/unix/sysv/linux/sigqueue.c +@@ -43,7 +43,7 @@ __sigqueue (pid, sig, val) + info.si_uid = __getuid (); + info.si_value = val; + +- return INLINE_SYSCALL (rt_sigqueueinfo, 3, pid, sig, __ptrvalue (&info)); ++ return INLINE_SYSCALL (rt_sigqueueinfo, 3, pid, sig, &info); + } + weak_alias (__sigqueue, sigqueue) + #else +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c b/sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c +index a7eb88afa4fc5309..33715e54aa5837f2 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c +@@ -48,8 +48,8 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + ret = INLINE_SYSCALL (rt_sigaction, 5, sig, +- act ? __ptrvalue (&kact) : 0, +- oact ? __ptrvalue (&koact) : 0, stub, _NSIG / 8); ++ act ? &kact : 0, ++ oact ? &koact : 0, stub, _NSIG / 8); + + if (oact && ret >= 0) + { +diff --git a/sysdeps/unix/sysv/linux/sysctl.c b/sysdeps/unix/sysv/linux/sysctl.c +index e00ecfe85cfc0281..bcec384cb55f33ac 100644 +--- a/sysdeps/unix/sysv/linux/sysctl.c ++++ b/sysdeps/unix/sysv/linux/sysctl.c +@@ -37,7 +37,7 @@ __sysctl (int *name, int nlen, void *oldval, size_t *oldlenp, + .newlen = newlen + }; + +- return INLINE_SYSCALL (_sysctl, 1, __ptrvalue (&args)); ++ return INLINE_SYSCALL (_sysctl, 1, &args); + } + libc_hidden_def (__sysctl) + weak_alias (__sysctl, sysctl) +diff --git a/sysdeps/unix/sysv/linux/x86_64/sigaction.c b/sysdeps/unix/sysv/linux/x86_64/sigaction.c +index 5a3ad1830e67e38b..6e171dae6c429367 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sigaction.c ++++ b/sysdeps/unix/sysv/linux/x86_64/sigaction.c +@@ -62,8 +62,8 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + result = INLINE_SYSCALL (rt_sigaction, 4, +- sig, act ? __ptrvalue (&kact) : NULL, +- oact ? __ptrvalue (&koact) : NULL, _NSIG / 8); ++ sig, act ? &kact : NULL, ++ oact ? &koact : NULL, _NSIG / 8); + if (oact && result >= 0) + { + oact->sa_handler = koact.k_sa_handler; +diff --git a/sysdeps/unix/sysv/linux/xstat.c b/sysdeps/unix/sysv/linux/xstat.c +index a3c0c1ca42424830..bb4477bb89f65fb7 100644 +--- a/sysdeps/unix/sysv/linux/xstat.c ++++ b/sysdeps/unix/sysv/linux/xstat.c +@@ -44,7 +44,7 @@ __xstat (int vers, const char *name, struct stat *buf) + struct kernel_stat kbuf; + int result; + +- result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (stat, 2, name, &kbuf); + if (result == 0) + result = __xstat_conv (vers, &kbuf, buf); + diff --git a/SOURCES/glibc-rh1505492-bounded-11.patch b/SOURCES/glibc-rh1505492-bounded-11.patch new file mode 100644 index 0000000..8a6feed --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-11.patch @@ -0,0 +1,592 @@ +commit e97ed6ddbe0d53d616d93669826db225b12c3235 +Author: Joseph Myers +Date: Thu Feb 14 13:12:02 2013 +0000 + + Remove bp-sym.h and BP_SYM uses from C code. + +diff --git a/csu/libc-start.c b/csu/libc-start.c +index 63757062c730c81a..b0e62da6f6ea0708 100644 +--- a/csu/libc-start.c ++++ b/csu/libc-start.c +@@ -19,7 +19,6 @@ + #include + #include + #include +-#include + + extern void __libc_init_first (int argc, char **argv, char **envp); + #ifndef SHARED +@@ -92,7 +91,7 @@ apply_irel (void) + # endif + #else + # define STATIC +-# define LIBC_START_MAIN BP_SYM (__libc_start_main) ++# define LIBC_START_MAIN __libc_start_main + #endif + + #ifdef MAIN_AUXVEC_ARG +diff --git a/elf/dl-open.c b/elf/dl-open.c +index d48c963f779f44d8..41caade36d35d015 100644 +--- a/elf/dl-open.c ++++ b/elf/dl-open.c +@@ -28,7 +28,6 @@ + #include + #include + #include +-#include + #include + #include + #include +@@ -43,7 +42,7 @@ extern ElfW(Addr) _dl_sysdep_start (void **start_argptr, + ElfW(Word) phnum, + ElfW(Addr) *user_entry, + ElfW(auxv_t) *auxv)); +-weak_extern (BP_SYM (_dl_sysdep_start)) ++weak_extern (_dl_sysdep_start) + + extern int __libc_multiple_libcs; /* Defined in init-first.c. */ + +diff --git a/math/fegetenv.c b/math/fegetenv.c +index f8fbdffdb35a913c..0741407f125172a3 100644 +--- a/math/fegetenv.c ++++ b/math/fegetenv.c +@@ -19,7 +19,6 @@ + + #include + #include +-#include + + int + __fegetenv (fenv_t *envp) +@@ -29,9 +28,9 @@ __fegetenv (fenv_t *envp) + } + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetenv, __old_fegetenv) +-compat_symbol (libm, BP_SYM (__old_fegetenv), BP_SYM (fegetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); + #endif + libm_hidden_ver (__fegetenv, fegetenv) +-versioned_symbol (libm, BP_SYM (__fegetenv), BP_SYM (fegetenv), GLIBC_2_2); ++versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); + + stub_warning (fegetenv) +diff --git a/nptl/sysdeps/pthread/bits/libc-lockP.h b/nptl/sysdeps/pthread/bits/libc-lockP.h +index 7a1107207a1e0ffb..962a292308f92267 100644 +--- a/nptl/sysdeps/pthread/bits/libc-lockP.h ++++ b/nptl/sysdeps/pthread/bits/libc-lockP.h +@@ -375,31 +375,30 @@ extern int __pthread_atfork (void (*__prepare) (void), + single-threaded processes. */ + #ifndef __NO_WEAK_PTHREAD_ALIASES + # ifdef weak_extern +-# include +-weak_extern (BP_SYM (__pthread_mutex_init)) +-weak_extern (BP_SYM (__pthread_mutex_destroy)) +-weak_extern (BP_SYM (__pthread_mutex_lock)) +-weak_extern (BP_SYM (__pthread_mutex_trylock)) +-weak_extern (BP_SYM (__pthread_mutex_unlock)) +-weak_extern (BP_SYM (__pthread_mutexattr_init)) +-weak_extern (BP_SYM (__pthread_mutexattr_destroy)) +-weak_extern (BP_SYM (__pthread_mutexattr_settype)) +-weak_extern (BP_SYM (__pthread_rwlock_init)) +-weak_extern (BP_SYM (__pthread_rwlock_destroy)) +-weak_extern (BP_SYM (__pthread_rwlock_rdlock)) +-weak_extern (BP_SYM (__pthread_rwlock_tryrdlock)) +-weak_extern (BP_SYM (__pthread_rwlock_wrlock)) +-weak_extern (BP_SYM (__pthread_rwlock_trywrlock)) +-weak_extern (BP_SYM (__pthread_rwlock_unlock)) +-weak_extern (BP_SYM (__pthread_key_create)) +-weak_extern (BP_SYM (__pthread_setspecific)) +-weak_extern (BP_SYM (__pthread_getspecific)) +-weak_extern (BP_SYM (__pthread_once)) ++weak_extern (__pthread_mutex_init) ++weak_extern (__pthread_mutex_destroy) ++weak_extern (__pthread_mutex_lock) ++weak_extern (__pthread_mutex_trylock) ++weak_extern (__pthread_mutex_unlock) ++weak_extern (__pthread_mutexattr_init) ++weak_extern (__pthread_mutexattr_destroy) ++weak_extern (__pthread_mutexattr_settype) ++weak_extern (__pthread_rwlock_init) ++weak_extern (__pthread_rwlock_destroy) ++weak_extern (__pthread_rwlock_rdlock) ++weak_extern (__pthread_rwlock_tryrdlock) ++weak_extern (__pthread_rwlock_wrlock) ++weak_extern (__pthread_rwlock_trywrlock) ++weak_extern (__pthread_rwlock_unlock) ++weak_extern (__pthread_key_create) ++weak_extern (__pthread_setspecific) ++weak_extern (__pthread_getspecific) ++weak_extern (__pthread_once) + weak_extern (__pthread_initialize) + weak_extern (__pthread_atfork) +-weak_extern (BP_SYM (_pthread_cleanup_push_defer)) +-weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) +-weak_extern (BP_SYM (pthread_setcancelstate)) ++weak_extern (_pthread_cleanup_push_defer) ++weak_extern (_pthread_cleanup_pop_restore) ++weak_extern (pthread_setcancelstate) + # else + # pragma weak __pthread_mutex_init + # pragma weak __pthread_mutex_destroy +diff --git a/ports/sysdeps/alpha/memchr.c b/ports/sysdeps/alpha/memchr.c +index b19d8200c60ffd71..86785756fc680d03 100644 +--- a/ports/sysdeps/alpha/memchr.c ++++ b/ports/sysdeps/alpha/memchr.c +@@ -16,7 +16,6 @@ + . */ + + #include +-#include + + typedef unsigned long word; + +@@ -170,6 +169,6 @@ __memchr (const void *s, int xc, size_t n) + } + + #ifdef weak_alias +-weak_alias (__memchr, BP_SYM (memchr)) ++weak_alias (__memchr, memchr) + #endif + libc_hidden_builtin_def (memchr) +diff --git a/ports/sysdeps/powerpc/nofpu/fegetenv.c b/ports/sysdeps/powerpc/nofpu/fegetenv.c +index dd88fb3490c92309..95c7475a7d138e75 100644 +--- a/ports/sysdeps/powerpc/nofpu/fegetenv.c ++++ b/ports/sysdeps/powerpc/nofpu/fegetenv.c +@@ -19,7 +19,6 @@ + + #include "soft-fp.h" + #include "soft-supp.h" +-#include + + extern int __sim_exceptions; + extern int __sim_disabled_exceptions; +@@ -42,8 +41,8 @@ __fegetenv (fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetenv, __old_fegetenv) +-compat_symbol (libm, BP_SYM (__old_fegetenv), BP_SYM (fegetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fegetenv, fegetenv) +-versioned_symbol (libm, BP_SYM (__fegetenv), BP_SYM (fegetenv), GLIBC_2_2); ++versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); +diff --git a/ports/sysdeps/powerpc/nofpu/fesetenv.c b/ports/sysdeps/powerpc/nofpu/fesetenv.c +index dc49017c0dc68454..2e3946106460eea5 100644 +--- a/ports/sysdeps/powerpc/nofpu/fesetenv.c ++++ b/ports/sysdeps/powerpc/nofpu/fesetenv.c +@@ -19,7 +19,6 @@ + + #include "soft-fp.h" + #include "soft-supp.h" +-#include + + int + __fesetenv (const fenv_t *envp) +@@ -36,8 +35,8 @@ __fesetenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetenv, __old_fesetenv) +-compat_symbol (libm, BP_SYM (__old_fesetenv), BP_SYM (fesetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fesetenv, fesetenv) +-versioned_symbol (libm, BP_SYM (__fesetenv), BP_SYM (fesetenv), GLIBC_2_2); ++versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); +diff --git a/ports/sysdeps/powerpc/nofpu/feupdateenv.c b/ports/sysdeps/powerpc/nofpu/feupdateenv.c +index f5153d366968d11c..20f552135a5cca26 100644 +--- a/ports/sysdeps/powerpc/nofpu/feupdateenv.c ++++ b/ports/sysdeps/powerpc/nofpu/feupdateenv.c +@@ -21,7 +21,6 @@ + #include "soft-fp.h" + #include "soft-supp.h" + #include +-#include + + int + __feupdateenv (const fenv_t *envp) +@@ -45,8 +44,8 @@ __feupdateenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__feupdateenv, __old_feupdateenv) +-compat_symbol (libm, BP_SYM (__old_feupdateenv), BP_SYM (feupdateenv), GLIBC_2_1); ++compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__feupdateenv, feupdateenv) +-versioned_symbol (libm, BP_SYM (__feupdateenv), BP_SYM (feupdateenv), GLIBC_2_2); ++versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); +diff --git a/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c b/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c +index 6b00ee0dcd4ca037..e0582d61aee6eed6 100644 +--- a/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c ++++ b/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c +@@ -19,7 +19,6 @@ + + #include "soft-fp.h" + #include "soft-supp.h" +-#include + + int + __fegetexceptflag (fexcept_t *flagp, int excepts) +@@ -32,7 +31,7 @@ __fegetexceptflag (fexcept_t *flagp, int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetexceptflag, __old_fegetexceptflag) +-compat_symbol (libm, BP_SYM (__old_fegetexceptflag), BP_SYM (fegetexceptflag), GLIBC_2_1); ++compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1); + #endif + +-versioned_symbol (libm, BP_SYM (__fegetexceptflag), BP_SYM (fegetexceptflag), GLIBC_2_2); ++versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2); +diff --git a/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c b/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c +index dcfbcc48b2cd54c3..e1dde26ef964cb81 100644 +--- a/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c ++++ b/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c +@@ -20,7 +20,6 @@ + #include "soft-fp.h" + #include "soft-supp.h" + #include +-#include + + #undef feraiseexcept + int +@@ -35,8 +34,8 @@ __feraiseexcept (int x) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__feraiseexcept, __old_feraiseexcept) +-compat_symbol (libm, BP_SYM (__old_feraiseexcept), BP_SYM (feraiseexcept), GLIBC_2_1); ++compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1); + #endif + + libm_hidden_ver (__feraiseexcept, feraiseexcept) +-versioned_symbol (libm, BP_SYM (__feraiseexcept), BP_SYM (feraiseexcept), GLIBC_2_2); ++versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2); +diff --git a/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c b/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c +index f98da1a6177d81da..53215f49141ac5a2 100644 +--- a/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c ++++ b/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c +@@ -19,7 +19,6 @@ + + #include "soft-fp.h" + #include "soft-supp.h" +-#include + + int + __fesetexceptflag(const fexcept_t *flagp, int excepts) +@@ -33,7 +32,7 @@ __fesetexceptflag(const fexcept_t *flagp, int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetexceptflag, __old_fesetexceptflag) +-compat_symbol (libm, BP_SYM (__old_fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_1); ++compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1); + #endif + +-versioned_symbol (libm, BP_SYM (__fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_2); ++versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); +diff --git a/string/memchr.c b/string/memchr.c +index 822c0a4d49a0e538..1684bfa56885e883 100644 +--- a/string/memchr.c ++++ b/string/memchr.c +@@ -47,11 +47,6 @@ + #endif + + #include +-#if HAVE_BP_SYM_H || defined _LIBC +-#include +-#else +-# define BP_SYM(sym) sym +-#endif + + #undef memchr + #undef __memchr +@@ -207,6 +202,6 @@ MEMCHR (s, c_in, n) + return 0; + } + #ifdef weak_alias +-weak_alias (__memchr, BP_SYM (memchr)) ++weak_alias (__memchr, memchr) + #endif + libc_hidden_builtin_def (memchr) +diff --git a/sysdeps/i386/fpu/fegetenv.c b/sysdeps/i386/fpu/fegetenv.c +index 7cdb90e04464fc77..a4cc5d1f0ed1c796 100644 +--- a/sysdeps/i386/fpu/fegetenv.c ++++ b/sysdeps/i386/fpu/fegetenv.c +@@ -18,7 +18,6 @@ + . */ + + #include +-#include + + int + __fegetenv (fenv_t *envp) +@@ -36,8 +35,8 @@ __fegetenv (fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetenv, __old_fegetenv) +-compat_symbol (libm, BP_SYM (__old_fegetenv), BP_SYM (fegetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fegetenv, fegetenv) +-versioned_symbol (libm, BP_SYM (__fegetenv), BP_SYM (fegetenv), GLIBC_2_2); ++versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); +diff --git a/sysdeps/i386/fpu/fesetenv.c b/sysdeps/i386/fpu/fesetenv.c +index e2f9eb8178c39ed8..ee92d5c36d1e5cde 100644 +--- a/sysdeps/i386/fpu/fesetenv.c ++++ b/sysdeps/i386/fpu/fesetenv.c +@@ -19,7 +19,6 @@ + + #include + #include +-#include + + + int +@@ -80,8 +79,8 @@ __fesetenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetenv, __old_fesetenv) +-compat_symbol (libm, BP_SYM (__old_fesetenv), BP_SYM (fesetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fesetenv, fesetenv) +-versioned_symbol (libm, BP_SYM (__fesetenv), BP_SYM (fesetenv), GLIBC_2_2); ++versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); +diff --git a/sysdeps/i386/fpu/feupdateenv.c b/sysdeps/i386/fpu/feupdateenv.c +index 6e2ce35b531cd348..86a43f024372987f 100644 +--- a/sysdeps/i386/fpu/feupdateenv.c ++++ b/sysdeps/i386/fpu/feupdateenv.c +@@ -18,7 +18,6 @@ + . */ + + #include +-#include + #include + #include + #include +@@ -53,8 +52,8 @@ __feupdateenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__feupdateenv, __old_feupdateenv) +-compat_symbol (libm, BP_SYM (__old_feupdateenv), BP_SYM (feupdateenv), GLIBC_2_1); ++compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__feupdateenv, feupdateenv) +-versioned_symbol (libm, BP_SYM (__feupdateenv), BP_SYM (feupdateenv), GLIBC_2_2); ++versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); +diff --git a/sysdeps/i386/fpu/fsetexcptflg.c b/sysdeps/i386/fpu/fsetexcptflg.c +index 2daec71d112839c3..8751f10b23b1c690 100644 +--- a/sysdeps/i386/fpu/fsetexcptflg.c ++++ b/sysdeps/i386/fpu/fsetexcptflg.c +@@ -19,7 +19,6 @@ + + #include + #include +-#include + #include + #include + #include +@@ -64,7 +63,7 @@ __fesetexceptflag (const fexcept_t *flagp, int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetexceptflag, __old_fesetexceptflag) +-compat_symbol (libm, BP_SYM (__old_fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_1); ++compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1); + #endif + +-versioned_symbol (libm, BP_SYM (__fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_2); ++versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); +diff --git a/sysdeps/posix/open64.c b/sysdeps/posix/open64.c +index 1aa0a57007792f36..8392e17773739a5f 100644 +--- a/sysdeps/posix/open64.c ++++ b/sysdeps/posix/open64.c +@@ -17,7 +17,6 @@ + + #include + #include +-#include + #include + + /* Open FILE with access OFLAG. If O_CREAT or O_TMPFILE is in OFLAG, +@@ -46,6 +45,6 @@ __libc_open64 (const char *file, int oflag, ...) + + return result; + } +-weak_alias (__libc_open64, BP_SYM (__open64)) +-libc_hidden_weak (BP_SYM (__open64)) +-weak_alias (__libc_open64, BP_SYM (open64)) ++weak_alias (__libc_open64, __open64) ++libc_hidden_weak (__open64) ++weak_alias (__libc_open64, open64) +diff --git a/sysdeps/powerpc/fpu/fegetenv.c b/sysdeps/powerpc/fpu/fegetenv.c +index 77a8b2aa7a51d99a..d4fc41c5ae2702e6 100644 +--- a/sysdeps/powerpc/fpu/fegetenv.c ++++ b/sysdeps/powerpc/fpu/fegetenv.c +@@ -17,7 +17,6 @@ + . */ + + #include +-#include + + int + __fegetenv (fenv_t *envp) +@@ -31,8 +30,8 @@ __fegetenv (fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetenv, __old_fegetenv) +-compat_symbol (libm, BP_SYM (__old_fegetenv), BP_SYM (fegetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fegetenv, fegetenv) +-versioned_symbol (libm, BP_SYM (__fegetenv), BP_SYM (fegetenv), GLIBC_2_2); ++versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); +diff --git a/sysdeps/powerpc/fpu/fesetenv.c b/sysdeps/powerpc/fpu/fesetenv.c +index e73da91101ed691e..63f653e827cbe4e5 100644 +--- a/sysdeps/powerpc/fpu/fesetenv.c ++++ b/sysdeps/powerpc/fpu/fesetenv.c +@@ -19,7 +19,6 @@ + + #include + #include +-#include + + #define _FPU_MASK_ALL (_FPU_MASK_ZM | _FPU_MASK_OM | _FPU_MASK_UM | _FPU_MASK_XM | _FPU_MASK_IM) + +@@ -55,8 +54,8 @@ __fesetenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetenv, __old_fesetenv) +-compat_symbol (libm, BP_SYM (__old_fesetenv), BP_SYM (fesetenv), GLIBC_2_1); ++compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__fesetenv, fesetenv) +-versioned_symbol (libm, BP_SYM (__fesetenv), BP_SYM (fesetenv), GLIBC_2_2); ++versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); +diff --git a/sysdeps/powerpc/fpu/feupdateenv.c b/sysdeps/powerpc/fpu/feupdateenv.c +index d24da9435294cd47..8a3491293c871a08 100644 +--- a/sysdeps/powerpc/fpu/feupdateenv.c ++++ b/sysdeps/powerpc/fpu/feupdateenv.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + #define _FPU_MASK_ALL (_FPU_MASK_ZM | _FPU_MASK_OM | _FPU_MASK_UM | _FPU_MASK_XM | _FPU_MASK_IM) + +@@ -62,8 +61,8 @@ __feupdateenv (const fenv_t *envp) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__feupdateenv, __old_feupdateenv) +-compat_symbol (libm, BP_SYM (__old_feupdateenv), BP_SYM (feupdateenv), GLIBC_2_1); ++compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1); + #endif + + libm_hidden_ver (__feupdateenv, feupdateenv) +-versioned_symbol (libm, BP_SYM (__feupdateenv), BP_SYM (feupdateenv), GLIBC_2_2); ++versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); +diff --git a/sysdeps/powerpc/fpu/fgetexcptflg.c b/sysdeps/powerpc/fpu/fgetexcptflg.c +index 3f9887a024387a21..9c59fc050feb97ba 100644 +--- a/sysdeps/powerpc/fpu/fgetexcptflg.c ++++ b/sysdeps/powerpc/fpu/fgetexcptflg.c +@@ -17,7 +17,6 @@ + . */ + + #include +-#include + + int + __fegetexceptflag (fexcept_t *flagp, int excepts) +@@ -37,7 +36,7 @@ __fegetexceptflag (fexcept_t *flagp, int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fegetexceptflag, __old_fegetexceptflag) +-compat_symbol (libm, BP_SYM (__old_fegetexceptflag), BP_SYM (fegetexceptflag), GLIBC_2_1); ++compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1); + #endif + +-versioned_symbol (libm, BP_SYM (__fegetexceptflag), BP_SYM (fegetexceptflag), GLIBC_2_2); ++versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2); +diff --git a/sysdeps/powerpc/fpu/fraiseexcpt.c b/sysdeps/powerpc/fpu/fraiseexcpt.c +index 86a89e744ed4e5d8..900d01186051a2fd 100644 +--- a/sysdeps/powerpc/fpu/fraiseexcpt.c ++++ b/sysdeps/powerpc/fpu/fraiseexcpt.c +@@ -17,7 +17,6 @@ + . */ + + #include +-#include + + #undef feraiseexcept + int +@@ -61,8 +60,8 @@ __feraiseexcept (int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__feraiseexcept, __old_feraiseexcept) +-compat_symbol (libm, BP_SYM (__old_feraiseexcept), BP_SYM (feraiseexcept), GLIBC_2_1); ++compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1); + #endif + + libm_hidden_ver (__feraiseexcept, feraiseexcept) +-versioned_symbol (libm, BP_SYM (__feraiseexcept), BP_SYM (feraiseexcept), GLIBC_2_2); ++versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2); +diff --git a/sysdeps/powerpc/fpu/fsetexcptflg.c b/sysdeps/powerpc/fpu/fsetexcptflg.c +index 1140c8eb70489086..aadec2e8df1d5975 100644 +--- a/sysdeps/powerpc/fpu/fsetexcptflg.c ++++ b/sysdeps/powerpc/fpu/fsetexcptflg.c +@@ -17,7 +17,6 @@ + . */ + + #include +-#include + + int + __fesetexceptflag (const fexcept_t *flagp, int excepts) +@@ -53,7 +52,7 @@ __fesetexceptflag (const fexcept_t *flagp, int excepts) + #include + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) + strong_alias (__fesetexceptflag, __old_fesetexceptflag) +-compat_symbol (libm, BP_SYM (__old_fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_1); ++compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1); + #endif + +-versioned_symbol (libm, BP_SYM (__fesetexceptflag), BP_SYM (fesetexceptflag), GLIBC_2_2); ++versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); +diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +index 078d6c7ca99c7203..7cdabe9085ef6118 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c ++++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +@@ -20,7 +20,6 @@ + #include + #include + #include +-#include + + + int __cache_line_size attribute_hidden; +@@ -41,14 +40,12 @@ struct startup_info + }; + + int +-/* GKM FIXME: GCC: this should get __BP_ prefix by virtue of the +- BPs in the arglist of startup_info.main and startup_info.init. */ +- BP_SYM (__libc_start_main) (int argc, char **argv, +- char **ev, +- ElfW (auxv_t) * auxvec, +- void (*rtld_fini) (void), +- struct startup_info *stinfo, +- char **stack_on_entry) ++__libc_start_main (int argc, char **argv, ++ char **ev, ++ ElfW (auxv_t) * auxvec, ++ void (*rtld_fini) (void), ++ struct startup_info *stinfo, ++ char **stack_on_entry) + { + /* the PPC SVR4 ABI says that the top thing on the stack will + be a NULL pointer, so if not we assume that we're being called diff --git a/SOURCES/glibc-rh1505492-bounded-12.patch b/SOURCES/glibc-rh1505492-bounded-12.patch new file mode 100644 index 0000000..b350909 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-12.patch @@ -0,0 +1,113 @@ +commit 2bdd4ca6b6c38367e301042c2247395568c63ebd +Author: Joseph Myers +Date: Fri Feb 15 00:51:53 2013 +0000 + + Remove miscellaneous bounded-pointers relics in C code. + +diff --git a/config.h.in b/config.h.in +index 07bc713e23f89e46..ef33c23c75ad2220 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -137,7 +137,7 @@ + + /* Defined to some form of __attribute__ ((...)) if the compiler supports + a different, more efficient calling convention. */ +-#if defined USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__ ++#if defined USE_REGPARMS && !defined PROF + # define internal_function __attribute__ ((regparm (3), stdcall)) + #endif + +diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c +index de55b2676fc80645..1ad2e4da7a654633 100644 +--- a/elf/dl-runtime.c ++++ b/elf/dl-runtime.c +@@ -148,7 +148,7 @@ _dl_fixup ( + return elf_machine_fixup_plt (l, result, reloc, rel_addr, value); + } + +-#if !defined PROF && !__BOUNDED_POINTERS__ ++#ifndef PROF + DL_FIXUP_VALUE_TYPE + __attribute ((noinline)) ARCH_FIXUP_ATTRIBUTE + _dl_profile_fixup ( +diff --git a/ports/sysdeps/am33/dl-machine.h b/ports/sysdeps/am33/dl-machine.h +index 90083c7dc45fc602..d4b321aca094863e 100644 +--- a/ports/sysdeps/am33/dl-machine.h ++++ b/ports/sysdeps/am33/dl-machine.h +@@ -56,7 +56,7 @@ elf_machine_load_address (void) + return off + gotaddr - gotval; + } + +-#if !defined PROF && !__BOUNDED_POINTERS__ ++#ifndef PROF + /* We add a declaration of this function here so that in dl-runtime.c + the ELF_MACHINE_RUNTIME_TRAMPOLINE macro really can pass the parameters + in registers. +@@ -115,7 +115,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + /* This code is used in dl-runtime.c to call the `fixup' function + and then redirect to the address it returns. */ +-#if !defined PROF && !__BOUNDED_POINTERS__ ++#ifndef PROF + # define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\ + .text\n\ + .globl _dl_runtime_resolve\n\ +diff --git a/string/bits/string2.h b/string/bits/string2.h +index bbf05a3df620d655..acd0679e72b10fbf 100644 +--- a/string/bits/string2.h ++++ b/string/bits/string2.h +@@ -21,7 +21,7 @@ + # error "Never use directly; include instead." + #endif + +-#if !defined __NO_STRING_INLINES && !defined __BOUNDED_POINTERS__ ++#ifndef __NO_STRING_INLINES + + /* Unlike the definitions in the header the + definitions contained here are not optimized down to assembler +diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h +index fc2b976651e20ca7..67d23228782d39c9 100644 +--- a/sysdeps/i386/dl-machine.h ++++ b/sysdeps/i386/dl-machine.h +@@ -145,7 +145,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + #ifdef IN_DL_RUNTIME + +-# if !defined PROF && !__BOUNDED_POINTERS__ ++# ifndef PROF + /* We add a declaration of this function here so that in dl-runtime.c + the ELF_MACHINE_RUNTIME_TRAMPOLINE macro really can pass the parameters + in registers. +diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c +index 5ac515bc023e6783..401f00b7c01a6a14 100644 +--- a/sysdeps/unix/sysv/linux/shmat.c ++++ b/sysdeps/unix/sysv/linux/shmat.c +@@ -38,15 +38,6 @@ shmat (shmid, shmaddr, shmflg) + unsigned long resultvar; + void *raddr; + +-#if __BOUNDED_POINTERS__ +- size_t length = ~0; +- struct shmid_ds shmds; +- /* It's unfortunate that we need to make another system call to get +- the shared memory segment length... */ +- if (shmctl (shmid, IPC_STAT, &shmds) == 0) +- length = shmds.shm_segsz; +-#endif +- + resultvar = INTERNAL_SYSCALL (ipc, err, 5, IPCOP_shmat, + shmid, shmflg, + (long int) &raddr, +diff --git a/sysdeps/x86/bits/string.h b/sysdeps/x86/bits/string.h +index 14793029638ac613..bfa43cca72a92229 100644 +--- a/sysdeps/x86/bits/string.h ++++ b/sysdeps/x86/bits/string.h +@@ -36,7 +36,7 @@ + /* We only provide optimizations if the user selects them and if + GNU CC is used. */ + # if !defined __NO_STRING_INLINES && defined __USE_STRING_INLINES \ +- && defined __GNUC__ && __GNUC__ >= 2 && !__BOUNDED_POINTERS__ ++ && defined __GNUC__ && __GNUC__ >= 2 + + # ifndef __STRING_INLINE + # ifndef __extern_inline diff --git a/SOURCES/glibc-rh1505492-bounded-13.patch b/SOURCES/glibc-rh1505492-bounded-13.patch new file mode 100644 index 0000000..8e860df --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-13.patch @@ -0,0 +1,520 @@ +commit 2969121014b150036551c93a09da7686ffcac817 +Author: Joseph Myers +Date: Sun Feb 17 21:57:26 2013 +0000 + + Remove bounded-pointers handling from x86_64 assembly sources. + +Conflicts: + sysdeps/x86_64/bp-asm.h + (Copyright header change, file removed manually.) + sysdeps/x86_64/strcmp.S + (Context change due to earlier IS_IN backport.) + +diff --git a/sysdeps/unix/sysv/linux/x86_64/clone.S b/sysdeps/unix/sysv/linux/x86_64/clone.S +index 53f9fbd782848988..9a88bbc94e3f14e9 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/clone.S ++++ b/sysdeps/unix/sysv/linux/x86_64/clone.S +@@ -22,8 +22,6 @@ + #define _ERRNO_H 1 + #include + #include +-#include +-#include + + #define CLONE_VM 0x00000100 + #define CLONE_THREAD 0x00010000 +@@ -52,7 +50,7 @@ + + + .text +-ENTRY (BP_SYM (__clone)) ++ENTRY (__clone) + /* Sanity check arguments. */ + movq $-EINVAL,%rax + testq %rdi,%rdi /* no NULL function pointers */ +@@ -117,6 +115,6 @@ L(thread_start): + cfi_endproc; + + cfi_startproc; +-PSEUDO_END (BP_SYM (__clone)) ++PSEUDO_END (__clone) + +-weak_alias (BP_SYM (__clone), BP_SYM (clone)) ++weak_alias (__clone, clone) +diff --git a/sysdeps/unix/sysv/linux/x86_64/sysdep.h b/sysdeps/unix/sysv/linux/x86_64/sysdep.h +index 3e91c38dcf83bd8b..4b5105dbfde763d2 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sysdep.h ++++ b/sysdeps/unix/sysv/linux/x86_64/sysdep.h +@@ -20,8 +20,6 @@ + + /* There is some commonality. */ + #include +-#include +-#include + #include + + #if IS_IN (rtld) +diff --git a/sysdeps/unix/x86_64/sysdep.S b/sysdeps/unix/x86_64/sysdep.S +index db13ac49d7e19f4e..f8f66ed03ef5fb0d 100644 +--- a/sysdeps/unix/x86_64/sysdep.S ++++ b/sysdeps/unix/x86_64/sysdep.S +@@ -18,8 +18,6 @@ + #include + #define _ERRNO_H + #include +-#include +-#include + #include + + #if IS_IN (rtld) +diff --git a/sysdeps/x86_64/bp-asm.h b/sysdeps/x86_64/bp-asm.h +deleted file mode 100644 +index 355ec8f634bc8e8e..0000000000000000 +--- a/sysdeps/x86_64/bp-asm.h ++++ /dev/null +@@ -1,140 +0,0 @@ +-/* Bounded-pointer definitions for x86-64 assembler. +- Copyright (C) 2001 Free Software Foundation, Inc. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#ifndef _bp_asm_h_ +-# define _bp_asm_h_ 1 +- +-# if __ASSEMBLER__ +- +-# if __BOUNDED_POINTERS__ +- +-/* Bounded pointers occupy three words. */ +-# define PTR_SIZE 24 +-/* Bounded pointer return values are passed back through a hidden +- argument that points to caller-allocate space. The hidden arg +- occupies one word on the stack. */ +-# define RTN_SIZE 6 +-/* Although the caller pushes the hidden arg, the callee is +- responsible for popping it. */ +-# define RET_PTR ret $RTN_SIZE +-/* Maintain frame pointer chain in leaf assembler functions for the benefit +- of debugging stack traces when bounds violations occur. */ +-# define ENTER pushq %rbp; movq %rsp, %rbp +-# define LEAVE movq %rbp, %rsp; popq %rbp +-/* Stack space overhead of procedure-call linkage: return address and +- frame pointer. */ +-# define LINKAGE 16 +-/* Stack offset of return address after calling ENTER. */ +-# define PCOFF 8 +- +-/* Int 5 is the "bound range" exception also raised by the "bound" +- instruction. */ +-# define BOUNDS_VIOLATED int $5 +- +-# define CHECK_BOUNDS_LOW(VAL_REG, BP_MEM) \ +- cmpq 8+BP_MEM, VAL_REG; \ +- jae 0f; /* continue if value >= low */ \ +- BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_HIGH(VAL_REG, BP_MEM, Jcc) \ +- cmpq 16+BP_MEM, VAL_REG; \ +- Jcc 0f; /* continue if value < high */ \ +- BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_BOTH(VAL_REG, BP_MEM) \ +- cmpq 8+BP_MEM, VAL_REG; \ +- jb 1f; /* die if value < low */ \ +- cmpq 16+BP_MEM, VAL_REG; \ +- jb 0f; /* continue if value < high */ \ +- 1: BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_BOTH_WIDE(VAL_REG, BP_MEM, LENGTH) \ +- CHECK_BOUNDS_LOW(VAL_REG, BP_MEM); \ +- addl LENGTH, VAL_REG; \ +- cmpq 16+BP_MEM, VAL_REG; \ +- jbe 0f; /* continue if value <= high */ \ +- BOUNDS_VIOLATED; \ +- 0: subq LENGTH, VAL_REG /* restore value */ +- +-/* Take bounds from BP_MEM and affix them to the pointer +- value in %rax, stuffing all into memory at RTN(%esp). +- Use %rdx as a scratch register. */ +- +-# define RETURN_BOUNDED_POINTER(BP_MEM) \ +- movq RTN(%rsp), %rdx; \ +- movq %rax, 0(%rdx); \ +- movq 8+BP_MEM, %rax; \ +- movq %rax, 4(%rdx); \ +- movq 16+BP_MEM, %rax; \ +- movq %rax, 8(%rdx) +- +-# define RETURN_NULL_BOUNDED_POINTER \ +- movl RTN(%rsp), %rdx; \ +- movl %rax, 0(%rdx); \ +- movl %rax, 4(%rdx); \ +- movl %rax, 8(%rdx) +- +-/* The caller of __errno_location is responsible for allocating space +- for the three-word BP return-value and passing pushing its address +- as an implicit first argument. */ +-# define PUSH_ERRNO_LOCATION_RETURN \ +- subl $16, %esp; \ +- subl $8, %esp; \ +- pushq %rsp +- +-/* __errno_location is responsible for popping the implicit first +- argument, but we must pop the space for the BP itself. We also +- dereference the return value in order to dig out the pointer value. */ +-# define POP_ERRNO_LOCATION_RETURN \ +- popq %rax; \ +- addq $16, %rsp +- +-# else /* !__BOUNDED_POINTERS__ */ +- +-/* Unbounded pointers occupy one word. */ +-# define PTR_SIZE 8 +-/* Unbounded pointer return values are passed back in the register %rax. */ +-# define RTN_SIZE 0 +-/* Use simple return instruction for unbounded pointer values. */ +-# define RET_PTR ret +-/* Don't maintain frame pointer chain for leaf assembler functions. */ +-# define ENTER +-# define LEAVE +-/* Stack space overhead of procedure-call linkage: return address only. */ +-# define LINKAGE 8 +-/* Stack offset of return address after calling ENTER. */ +-# define PCOFF 0 +- +-# define CHECK_BOUNDS_LOW(VAL_REG, BP_MEM) +-# define CHECK_BOUNDS_HIGH(VAL_REG, BP_MEM, Jcc) +-# define CHECK_BOUNDS_BOTH(VAL_REG, BP_MEM) +-# define CHECK_BOUNDS_BOTH_WIDE(VAL_REG, BP_MEM, LENGTH) +-# define RETURN_BOUNDED_POINTER(BP_MEM) +- +-# define RETURN_NULL_BOUNDED_POINTER +- +-# define PUSH_ERRNO_LOCATION_RETURN +-# define POP_ERRNO_LOCATION_RETURN +- +-# endif /* !__BOUNDED_POINTERS__ */ +- +-# endif /* __ASSEMBLER__ */ +- +-#endif /* _bp_asm_h_ */ +diff --git a/sysdeps/x86_64/bsd-_setjmp.S b/sysdeps/x86_64/bsd-_setjmp.S +index 434e342aec5699c7..5591dd67562506bb 100644 +--- a/sysdeps/x86_64/bsd-_setjmp.S ++++ b/sysdeps/x86_64/bsd-_setjmp.S +@@ -25,16 +25,14 @@ + #define _ASM + #define _SETJMP_H + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + +-ENTRY (BP_SYM (_setjmp)) ++ENTRY (_setjmp) + /* Set up arguments, we only need to set the second arg. */ + xorl %esi, %esi + #ifdef PIC + jmp HIDDEN_JUMPTARGET (__sigsetjmp) + #else +- jmp BP_SYM (__sigsetjmp) ++ jmp __sigsetjmp + #endif +-END (BP_SYM (_setjmp)) ++END (_setjmp) + libc_hidden_def (_setjmp) +diff --git a/sysdeps/x86_64/bsd-setjmp.S b/sysdeps/x86_64/bsd-setjmp.S +index 17717f703b3aa360..87e8bc07495d68d1 100644 +--- a/sysdeps/x86_64/bsd-setjmp.S ++++ b/sysdeps/x86_64/bsd-setjmp.S +@@ -25,15 +25,13 @@ + #define _ASM + #define _SETJMP_H + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + +-ENTRY (BP_SYM (setjmp)) ++ENTRY (setjmp) + /* Set up arguments, we only need to set the 2nd arg. */ + movl $1, %esi + #ifdef PIC + jmp HIDDEN_JUMPTARGET (__sigsetjmp) + #else +- jmp BP_SYM (__sigsetjmp) ++ jmp __sigsetjmp + #endif +-END (BP_SYM (setjmp)) ++END (setjmp) +diff --git a/sysdeps/x86_64/mempcpy.S b/sysdeps/x86_64/mempcpy.S +index 5cb256e65bdffd77..acee5e56b174c8bb 100644 +--- a/sysdeps/x86_64/mempcpy.S ++++ b/sysdeps/x86_64/mempcpy.S +@@ -3,6 +3,6 @@ + #define __memcpy_chk __mempcpy_chk + #include + +-libc_hidden_def (BP_SYM (__mempcpy)) +-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy)) ++libc_hidden_def (__mempcpy) ++weak_alias (__mempcpy, mempcpy) + libc_hidden_builtin_def (mempcpy) +diff --git a/sysdeps/x86_64/rtld-strchr.S b/sysdeps/x86_64/rtld-strchr.S +index dcd26da84009c6f3..2148190dc1312411 100644 +--- a/sysdeps/x86_64/rtld-strchr.S ++++ b/sysdeps/x86_64/rtld-strchr.S +@@ -19,12 +19,10 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + + .text +-ENTRY (BP_SYM (strchr)) ++ENTRY (strchr) + + /* Before we start with the main loop we process single bytes + until the source pointer is aligned. This has two reasons: +@@ -284,7 +282,7 @@ ENTRY (BP_SYM (strchr)) + 6: + nop + retq +-END (BP_SYM (strchr)) ++END (strchr) + +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/x86_64/rtld-strlen.S b/sysdeps/x86_64/rtld-strlen.S +index 7293f875513ce3e5..0d4f5b3c474b42a6 100644 +--- a/sysdeps/x86_64/rtld-strlen.S ++++ b/sysdeps/x86_64/rtld-strlen.S +@@ -19,8 +19,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + + .text +diff --git a/sysdeps/x86_64/setjmp.S b/sysdeps/x86_64/setjmp.S +index dd87c484f9dac4ce..0d3865a7efd78ac4 100644 +--- a/sysdeps/x86_64/setjmp.S ++++ b/sysdeps/x86_64/setjmp.S +@@ -61,10 +61,10 @@ ENTRY (__sigsetjmp) + #else + /* Make a tail call to __sigjmp_save; it takes the same args. */ + # ifdef PIC +- jmp C_SYMBOL_NAME (BP_SYM (__sigjmp_save))@PLT ++ jmp C_SYMBOL_NAME (__sigjmp_save)@PLT + # else +- jmp BP_SYM (__sigjmp_save) ++ jmp __sigjmp_save + # endif + #endif +-END (BP_SYM (__sigsetjmp)) ++END (__sigsetjmp) + hidden_def (__sigsetjmp) +diff --git a/sysdeps/x86_64/start.S b/sysdeps/x86_64/start.S +index e603463044eee26f..a288aa3265679fac 100644 +--- a/sysdeps/x86_64/start.S ++++ b/sysdeps/x86_64/start.S +@@ -54,7 +54,6 @@ + */ + + #include +-#include "bp-sym.h" + + .text + .globl _start +@@ -106,21 +105,21 @@ _start: + mov __libc_csu_fini@GOTPCREL(%rip), %R8_LP + mov __libc_csu_init@GOTPCREL(%rip), %RCX_LP + +- mov BP_SYM (main)@GOTPCREL(%rip), %RDI_LP ++ mov main@GOTPCREL(%rip), %RDI_LP + + /* Call the user's main function, and exit with its value. + But let the libc call main. */ +- call BP_SYM (__libc_start_main)@PLT ++ call __libc_start_main@PLT + #else + /* Pass address of our own entry points to .fini and .init. */ + mov $__libc_csu_fini, %R8_LP + mov $__libc_csu_init, %RCX_LP + +- mov $BP_SYM (main), %RDI_LP ++ mov $main, %RDI_LP + + /* Call the user's main function, and exit with its value. + But let the libc call main. */ +- call BP_SYM (__libc_start_main) ++ call __libc_start_main + #endif + + hlt /* Crash if somehow `exit' does return. */ +diff --git a/sysdeps/x86_64/strcat.S b/sysdeps/x86_64/strcat.S +index 535a18dd3f82cf8c..bd0ebda1ce806234 100644 +--- a/sysdeps/x86_64/strcat.S ++++ b/sysdeps/x86_64/strcat.S +@@ -20,12 +20,10 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + + .text +-ENTRY (BP_SYM (strcat)) ++ENTRY (strcat) + movq %rdi, %rcx /* Dest. register. */ + andl $7, %ecx /* mask alignment bits */ + movq %rdi, %rax /* Duplicate destination pointer. */ +@@ -255,5 +253,5 @@ ENTRY (BP_SYM (strcat)) + 24: + movq %rdi, %rax /* Source is return value. */ + retq +-END (BP_SYM (strcat)) ++END (strcat) + libc_hidden_builtin_def (strcat) +diff --git a/sysdeps/x86_64/strcmp.S b/sysdeps/x86_64/strcmp.S +index ac10cc70d10f84cf..6d5aa19f87afca00 100644 +--- a/sysdeps/x86_64/strcmp.S ++++ b/sysdeps/x86_64/strcmp.S +@@ -22,8 +22,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + #undef UPDATE_STRNCMP_COUNTER + +@@ -128,7 +126,7 @@ libc_hidden_def (__strncasecmp) + /* FALLTHROUGH to strncasecmp_l. */ + #endif + +-ENTRY (BP_SYM (STRCMP)) ++ENTRY (STRCMP) + #if !IS_IN (libc) + /* Simple version since we can't use SSE registers in ld.so. */ + L(oop): movb (%rdi), %al +@@ -146,7 +144,7 @@ L(neq): movl $1, %eax + movl $-1, %ecx + cmovbl %ecx, %eax + ret +-END (BP_SYM (STRCMP)) ++END (STRCMP) + #else /* !IS_IN (libc) */ + # ifdef USE_AS_STRCASECMP_L + /* We have to fall back on the C implementation for locales +@@ -2282,7 +2280,7 @@ LABEL(Byte0): + + sub %ecx, %eax + ret +-END (BP_SYM (STRCMP)) ++END (STRCMP) + + .section .rodata,"a",@progbits + .p2align 3 +diff --git a/sysdeps/x86_64/strcpy.S b/sysdeps/x86_64/strcpy.S +index 65216d26e1475489..5444658236bcb668 100644 +--- a/sysdeps/x86_64/strcpy.S ++++ b/sysdeps/x86_64/strcpy.S +@@ -19,15 +19,13 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + #ifndef USE_AS_STPCPY + # define STRCPY strcpy + #endif + + .text +-ENTRY (BP_SYM (STRCPY)) ++ENTRY (STRCPY) + movq %rsi, %rcx /* Source register. */ + andl $7, %ecx /* mask alignment bits */ + movq %rdi, %rdx /* Duplicate destination pointer. */ +@@ -152,7 +150,7 @@ ENTRY (BP_SYM (STRCPY)) + movq %rdi, %rax /* Source is return value. */ + #endif + retq +-END (BP_SYM (STRCPY)) ++END (STRCPY) + #ifndef USE_AS_STPCPY + libc_hidden_builtin_def (strcpy) + #endif +diff --git a/sysdeps/x86_64/strcpy_chk.S b/sysdeps/x86_64/strcpy_chk.S +index 1640e69235bf6808..ad8f594fa5b9f2db 100644 +--- a/sysdeps/x86_64/strcpy_chk.S ++++ b/sysdeps/x86_64/strcpy_chk.S +@@ -20,8 +20,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + #ifndef USE_AS_STPCPY_CHK + # define STRCPY_CHK __strcpy_chk +diff --git a/sysdeps/x86_64/strtok.S b/sysdeps/x86_64/strtok.S +index 4028a47f243d9a54..b221e4cd724f7234 100644 +--- a/sysdeps/x86_64/strtok.S ++++ b/sysdeps/x86_64/strtok.S +@@ -21,8 +21,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* This file can be used for the strtok and strtok_r functions: + +@@ -59,7 +57,7 @@ save_ptr: + #endif + + .text +-ENTRY (BP_SYM (FUNCTION)) ++ENTRY (FUNCTION) + /* First we create a table with flags for all possible characters. + For the ASCII (7bit/8bit) or ISO-8859-X character sets which are + supported by the C string functions we have 256 characters. +@@ -207,4 +205,4 @@ L(returnNULL): + mov %RDX_LP, SAVE_PTR + jmp L(epilogue) + +-END (BP_SYM (FUNCTION)) ++END (FUNCTION) +diff --git a/sysdeps/x86_64/strtok_r.S b/sysdeps/x86_64/strtok_r.S +index 8ce0089c7b72390d..f0db78c67a8ef6a4 100644 +--- a/sysdeps/x86_64/strtok_r.S ++++ b/sysdeps/x86_64/strtok_r.S +@@ -1,5 +1,5 @@ + #define FUNCTION __strtok_r + #define USE_AS_STRTOK_R 1 + #include +-weak_alias (BP_SYM (__strtok_r), BP_SYM (strtok_r)) +-strong_alias (BP_SYM (__strtok_r), BP_SYM (__GI___strtok_r)) ++weak_alias (__strtok_r, strtok_r) ++strong_alias (__strtok_r, __GI___strtok_r) diff --git a/SOURCES/glibc-rh1505492-bounded-14.patch b/SOURCES/glibc-rh1505492-bounded-14.patch new file mode 100644 index 0000000..adf4a52 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-14.patch @@ -0,0 +1,1991 @@ +commit 92945b5261c412eb590b2b34c7ec9a035f0693a1 +Author: Joseph Myers +Date: Tue Feb 19 21:58:08 2013 +0000 + + Remove some bounded-pointers support from i386 .S files. + +diff --git a/sysdeps/i386/add_n.S b/sysdeps/i386/add_n.S +index 5223d685952d6093..df3ea2362c76247a 100644 +--- a/sysdeps/i386/add_n.S ++++ b/sysdeps/i386/add_n.S +@@ -30,7 +30,6 @@ + + .text + ENTRY (BP_SYM (__mpn_add_n)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -43,13 +42,6 @@ ENTRY (BP_SYM (__mpn_add_n)) + cfi_rel_offset (esi, 0) + movl S2(%esp),%edx + movl SIZE(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ecx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S1(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%edx, S2(%esp), %ecx) +- shrl $2, %ecx +-#endif + movl %ecx,%eax + shrl $3,%ecx /* compute count for unrolled loop */ + negl %eax +@@ -117,6 +109,5 @@ L(oop): movl (%esi),%eax + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_add_n)) +diff --git a/sysdeps/i386/addmul_1.S b/sysdeps/i386/addmul_1.S +index 02acb436d9833033..006c08a92de4e303 100644 +--- a/sysdeps/i386/addmul_1.S ++++ b/sysdeps/i386/addmul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_addmul_1)) +- ENTER + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -53,12 +52,6 @@ ENTRY (BP_SYM (__mpn_addmul_1)) + movl SIZE(%esp), %sizeP + movl S2LIMB(%esp), %s2_limb + cfi_rel_offset (s2_limb, 0) +-#if __BOUNDED_POINTERS__ +- shll $2, %sizeP /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %sizeP) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %sizeP) +- shrl $2, %sizeP +-#endif + leal (%res_ptr,%sizeP,4), %res_ptr + leal (%s1_ptr,%sizeP,4), %s1_ptr + negl %sizeP +@@ -91,6 +84,5 @@ L(oop): + cfi_adjust_cfa_offset (-4) + cfi_restore (res_ptr) + +- LEAVE + ret + END (BP_SYM (__mpn_addmul_1)) +diff --git a/sysdeps/i386/bp-asm.h b/sysdeps/i386/bp-asm.h +index 5e66e90b450846ed..75e1a007cb3eca71 100644 +--- a/sysdeps/i386/bp-asm.h ++++ b/sysdeps/i386/bp-asm.h +@@ -34,81 +34,12 @@ + /* Although the caller pushes the hidden arg, the callee is + responsible for popping it. */ + # define RET_PTR ret $RTN_SIZE +-/* Maintain frame pointer chain in leaf assembler functions for the benefit +- of debugging stack traces when bounds violations occur. */ +-# define ENTER pushl %ebp; movl %esp, %ebp +-# define LEAVE movl %ebp, %esp; popl %ebp + /* Stack space overhead of procedure-call linkage: return address and + frame pointer. */ + # define LINKAGE 8 + /* Stack offset of return address after calling ENTER. */ + # define PCOFF 4 + +-/* Int 5 is the "bound range" exception also raised by the "bound" +- instruction. */ +-# define BOUNDS_VIOLATED int $5 +- +-# define CHECK_BOUNDS_LOW(VAL_REG, BP_MEM) \ +- cmpl 4+BP_MEM, VAL_REG; \ +- jae 0f; /* continue if value >= low */ \ +- BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_HIGH(VAL_REG, BP_MEM, Jcc) \ +- cmpl 8+BP_MEM, VAL_REG; \ +- Jcc 0f; /* continue if value < high */ \ +- BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_BOTH(VAL_REG, BP_MEM) \ +- cmpl 4+BP_MEM, VAL_REG; \ +- jb 1f; /* die if value < low */ \ +- cmpl 8+BP_MEM, VAL_REG; \ +- jb 0f; /* continue if value < high */ \ +- 1: BOUNDS_VIOLATED; \ +- 0: +- +-# define CHECK_BOUNDS_BOTH_WIDE(VAL_REG, BP_MEM, LENGTH) \ +- CHECK_BOUNDS_LOW(VAL_REG, BP_MEM); \ +- addl LENGTH, VAL_REG; \ +- cmpl 8+BP_MEM, VAL_REG; \ +- jbe 0f; /* continue if value <= high */ \ +- BOUNDS_VIOLATED; \ +- 0: subl LENGTH, VAL_REG /* restore value */ +- +-/* Take bounds from BP_MEM and affix them to the pointer +- value in %eax, stuffing all into memory at RTN(%esp). +- Use %edx as a scratch register. */ +- +-# define RETURN_BOUNDED_POINTER(BP_MEM) \ +- movl RTN(%esp), %edx; \ +- movl %eax, 0(%edx); \ +- movl 4+BP_MEM, %eax; \ +- movl %eax, 4(%edx); \ +- movl 8+BP_MEM, %eax; \ +- movl %eax, 8(%edx) +- +-# define RETURN_NULL_BOUNDED_POINTER \ +- movl RTN(%esp), %edx; \ +- movl %eax, 0(%edx); \ +- movl %eax, 4(%edx); \ +- movl %eax, 8(%edx) +- +-/* The caller of __errno_location is responsible for allocating space +- for the three-word BP return-value and passing pushing its address +- as an implicit first argument. */ +-# define PUSH_ERRNO_LOCATION_RETURN \ +- subl $8, %esp; \ +- subl $4, %esp; \ +- pushl %esp +- +-/* __errno_location is responsible for popping the implicit first +- argument, but we must pop the space for the BP itself. We also +- dereference the return value in order to dig out the pointer value. */ +-# define POP_ERRNO_LOCATION_RETURN \ +- popl %eax; \ +- addl $8, %esp +- + # else /* !__BOUNDED_POINTERS__ */ + + /* Unbounded pointers occupy one word. */ +@@ -117,25 +48,11 @@ + # define RTN_SIZE 0 + /* Use simple return instruction for unbounded pointer values. */ + # define RET_PTR ret +-/* Don't maintain frame pointer chain for leaf assembler functions. */ +-# define ENTER +-# define LEAVE + /* Stack space overhead of procedure-call linkage: return address only. */ + # define LINKAGE 4 + /* Stack offset of return address after calling ENTER. */ + # define PCOFF 0 + +-# define CHECK_BOUNDS_LOW(VAL_REG, BP_MEM) +-# define CHECK_BOUNDS_HIGH(VAL_REG, BP_MEM, Jcc) +-# define CHECK_BOUNDS_BOTH(VAL_REG, BP_MEM) +-# define CHECK_BOUNDS_BOTH_WIDE(VAL_REG, BP_MEM, LENGTH) +-# define RETURN_BOUNDED_POINTER(BP_MEM) +- +-# define RETURN_NULL_BOUNDED_POINTER +- +-# define PUSH_ERRNO_LOCATION_RETURN +-# define POP_ERRNO_LOCATION_RETURN +- + # endif /* !__BOUNDED_POINTERS__ */ + + # endif /* __ASSEMBLER__ */ +diff --git a/sysdeps/i386/bsd-_setjmp.S b/sysdeps/i386/bsd-_setjmp.S +index 8a5d0d8624c0e17d..fe0224145643ea0b 100644 +--- a/sysdeps/i386/bsd-_setjmp.S ++++ b/sysdeps/i386/bsd-_setjmp.S +@@ -31,11 +31,9 @@ + #define SIGMSK JMPBUF+PTR_SIZE + + ENTRY (BP_SYM (_setjmp)) +- ENTER + + xorl %eax, %eax + movl JMPBUF(%esp), %edx +- CHECK_BOUNDS_BOTH_WIDE (%edx, JMPBUF(%esp), $(JB_SIZE+4)) + + /* Save registers. */ + movl %ebx, (JB_BX*4)(%edx) +@@ -52,7 +50,6 @@ ENTRY (BP_SYM (_setjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_PC*4)(%edx) +- LEAVE + movl %ebp, (JB_BP*4)(%edx) /* Save caller's frame pointer. */ + + movl %eax, JB_SIZE(%edx) /* No signal mask set. */ +diff --git a/sysdeps/i386/bsd-setjmp.S b/sysdeps/i386/bsd-setjmp.S +index d3a284ef28196c29..25470f3904a8ca73 100644 +--- a/sysdeps/i386/bsd-setjmp.S ++++ b/sysdeps/i386/bsd-setjmp.S +@@ -34,10 +34,8 @@ ENTRY (BP_SYM (setjmp)) + /* Note that we have to use a non-exported symbol in the next + jump since otherwise gas will emit it as a jump through the + PLT which is what we cannot use here. */ +- ENTER + + movl JMPBUF(%esp), %eax +- CHECK_BOUNDS_BOTH_WIDE (%eax, JMPBUF(%esp), $JB_SIZE) + + /* Save registers. */ + movl %ebx, (JB_BX*4)(%eax) +@@ -54,7 +52,6 @@ ENTRY (BP_SYM (setjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_PC*4)(%eax) +- LEAVE /* pop frame pointer to prepare for tail-call. */ + movl %ebp, (JB_BP*4)(%eax) /* Save caller's frame pointer. */ + + /* Call __sigjmp_save. */ +diff --git a/sysdeps/i386/fpu/s_frexp.S b/sysdeps/i386/fpu/s_frexp.S +index e76732dc8bc2a091..6c5cd8fdfd9f825b 100644 +--- a/sysdeps/i386/fpu/s_frexp.S ++++ b/sysdeps/i386/fpu/s_frexp.S +@@ -41,7 +41,6 @@ two54: .byte 0, 0, 0, 0, 0, 0, 0x50, 0x43 + + .text + ENTRY (BP_SYM (__frexp)) +- ENTER + + movl VAL0(%esp), %ecx + movl VAL1(%esp), %eax +@@ -78,11 +77,9 @@ ENTRY (BP_SYM (__frexp)) + /* Store %ecx in the variable pointed to by the second argument, + get the factor from the stack and return. */ + 1: movl EXPP(%esp), %eax +- CHECK_BOUNDS_BOTH_WIDE (%eax, EXPP(%esp), $4) + fldl VAL0(%esp) + movl %ecx, (%eax) + +- LEAVE + ret + END (BP_SYM (__frexp)) + weak_alias (BP_SYM (__frexp), BP_SYM (frexp)) +diff --git a/sysdeps/i386/fpu/s_frexpf.S b/sysdeps/i386/fpu/s_frexpf.S +index af0dc8ee3d58c1a6..4fe2181873de7302 100644 +--- a/sysdeps/i386/fpu/s_frexpf.S ++++ b/sysdeps/i386/fpu/s_frexpf.S +@@ -40,7 +40,6 @@ two25: .byte 0, 0, 0, 0x4c + + .text + ENTRY (BP_SYM (__frexpf)) +- ENTER + + movl VAL(%esp), %eax + xorl %ecx, %ecx +@@ -75,11 +74,9 @@ ENTRY (BP_SYM (__frexpf)) + /* Store %ecx in the variable pointed to by the second argument, + get the factor from the stack and return. */ + 1: movl EXPP(%esp), %eax +- CHECK_BOUNDS_BOTH_WIDE (%eax, EXPP(%esp), $4) + flds VAL(%esp) + movl %ecx, (%eax) + +- LEAVE + ret + END (BP_SYM (__frexpf)) + weak_alias (BP_SYM (__frexpf), BP_SYM (frexpf)) +diff --git a/sysdeps/i386/fpu/s_frexpl.S b/sysdeps/i386/fpu/s_frexpl.S +index 6f464a89d6a2e75d..54d5010185792bd9 100644 +--- a/sysdeps/i386/fpu/s_frexpl.S ++++ b/sysdeps/i386/fpu/s_frexpl.S +@@ -42,7 +42,6 @@ two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 + + .text + ENTRY (BP_SYM (__frexpl)) +- ENTER + + movl VAL0(%esp), %ecx + movl VAL2(%esp), %eax +@@ -80,11 +79,9 @@ ENTRY (BP_SYM (__frexpl)) + /* Store %ecx in the variable pointed to by the second argument, + get the factor from the stack and return. */ + 1: movl EXPP(%esp), %eax +- CHECK_BOUNDS_BOTH_WIDE (%eax, EXPP(%esp), $4) + fldt VAL0(%esp) + movl %ecx, (%eax) + +- LEAVE + ret + END (BP_SYM (__frexpl)) + weak_alias (BP_SYM (__frexpl), BP_SYM (frexpl)) +diff --git a/sysdeps/i386/fpu/s_remquo.S b/sysdeps/i386/fpu/s_remquo.S +index 5056593214e66f3c..e61ff5be7bc826df 100644 +--- a/sysdeps/i386/fpu/s_remquo.S ++++ b/sysdeps/i386/fpu/s_remquo.S +@@ -15,7 +15,6 @@ + + .text + ENTRY (BP_SYM (__remquo)) +- ENTER + + fldl DVSOR(%esp) + fldl DVDND(%esp) +@@ -36,7 +35,6 @@ ENTRY (BP_SYM (__remquo)) + shrl %cl, %eax + andl $7, %eax + movl QUOP(%esp), %ecx +- CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) + movl DVDND+4(%esp), %edx + xorl DVSOR+4(%esp), %edx + testl $0x80000000, %edx +@@ -44,7 +42,6 @@ ENTRY (BP_SYM (__remquo)) + negl %eax + 1: movl %eax, (%ecx) + +- LEAVE + ret + END (BP_SYM (__remquo)) + weak_alias (BP_SYM (__remquo), BP_SYM (remquo)) +diff --git a/sysdeps/i386/fpu/s_remquof.S b/sysdeps/i386/fpu/s_remquof.S +index d3c5965be455e42d..c2b351b859c28e7c 100644 +--- a/sysdeps/i386/fpu/s_remquof.S ++++ b/sysdeps/i386/fpu/s_remquof.S +@@ -15,7 +15,6 @@ + + .text + ENTRY (BP_SYM (__remquof)) +- ENTER + + flds DVSOR(%esp) + flds DVDND(%esp) +@@ -36,7 +35,6 @@ ENTRY (BP_SYM (__remquof)) + shrl %cl, %eax + andl $7, %eax + movl QUOP(%esp), %ecx +- CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) + movl DVDND(%esp), %edx + xorl DVSOR(%esp), %edx + testl $0x80000000, %edx +@@ -44,7 +42,6 @@ ENTRY (BP_SYM (__remquof)) + negl %eax + 1: movl %eax, (%ecx) + +- LEAVE + ret + END (BP_SYM (__remquof)) + weak_alias (BP_SYM (__remquof), BP_SYM (remquof)) +diff --git a/sysdeps/i386/fpu/s_remquol.S b/sysdeps/i386/fpu/s_remquol.S +index 65240adbe47f6014..2cbe43589609a2b8 100644 +--- a/sysdeps/i386/fpu/s_remquol.S ++++ b/sysdeps/i386/fpu/s_remquol.S +@@ -15,7 +15,6 @@ + + .text + ENTRY (BP_SYM (__remquol)) +- ENTER + + fldt DVSOR(%esp) + fldt DVDND(%esp) +@@ -36,7 +35,6 @@ ENTRY (BP_SYM (__remquol)) + shrl %cl, %eax + andl $7, %eax + movl QUOP(%esp), %ecx +- CHECK_BOUNDS_BOTH_WIDE (%ecx, QUOP(%esp), $4) + movl DVDND+8(%esp), %edx + xorl DVSOR+8(%esp), %edx + testl $0x8000, %edx +@@ -44,7 +42,6 @@ ENTRY (BP_SYM (__remquol)) + negl %eax + 1: movl %eax, (%ecx) + +- LEAVE + ret + END (BP_SYM (__remquol)) + weak_alias (BP_SYM (__remquol), BP_SYM (remquol)) +diff --git a/sysdeps/i386/i486/strcat.S b/sysdeps/i386/i486/strcat.S +index 7596a0dcdbff6fcc..b3212c8beb948411 100644 +--- a/sysdeps/i386/i486/strcat.S ++++ b/sysdeps/i386/i486/strcat.S +@@ -31,15 +31,12 @@ + + .text + ENTRY (BP_SYM (strcat)) +- ENTER + + pushl %edi /* Save callee-safe register. */ + cfi_adjust_cfa_offset (4) + + movl DEST(%esp), %edx + movl SRC(%esp), %ecx +- CHECK_BOUNDS_LOW (%edx, DEST(%esp)) +- CHECK_BOUNDS_LOW (%ecx, SRC(%esp)) + + testb $0xff, (%ecx) /* Is source string empty? */ + jz L(8) /* yes => return */ +@@ -262,12 +259,10 @@ L(9): movb %al, (%ecx,%edx) /* store first byte of last word */ + + L(8): /* GKM FIXME: check high bounds */ + movl DEST(%esp), %eax /* start address of destination is result */ +- RETURN_BOUNDED_POINTER (DEST(%esp)) + popl %edi /* restore saved register */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (strcat)) + libc_hidden_builtin_def (strcat) +diff --git a/sysdeps/i386/i486/strlen.S b/sysdeps/i386/i486/strlen.S +index 3ba4df92d9a40d91..76c31098e84a1c93 100644 +--- a/sysdeps/i386/i486/strlen.S ++++ b/sysdeps/i386/i486/strlen.S +@@ -28,10 +28,8 @@ + + .text + ENTRY (BP_SYM (strlen)) +- ENTER + + movl STR(%esp), %ecx +- CHECK_BOUNDS_LOW (%ecx, STR(%esp)) + movl %ecx, %eax /* duplicate it */ + + andl $3, %ecx /* mask alignment bits */ +@@ -129,10 +127,8 @@ L(3): testb %cl, %cl /* is first byte NUL? */ + jz L(2) /* yes => return pointer */ + incl %eax /* increment pointer */ + +-L(2): CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- subl STR(%esp), %eax /* compute difference to string start */ ++L(2): subl STR(%esp), %eax /* compute difference to string start */ + +- LEAVE + ret + END (BP_SYM (strlen)) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/i386/i586/add_n.S b/sysdeps/i386/i586/add_n.S +index d6ed224035868645..a2b502d0d21bf9f5 100644 +--- a/sysdeps/i386/i586/add_n.S ++++ b/sysdeps/i386/i586/add_n.S +@@ -30,7 +30,6 @@ + + .text + ENTRY (BP_SYM (__mpn_add_n)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -48,13 +47,6 @@ ENTRY (BP_SYM (__mpn_add_n)) + movl S2(%esp),%ebx + cfi_rel_offset (ebx, 0) + movl SIZE(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ecx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S1(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%ebx, S2(%esp), %ecx) +- shrl $2, %ecx +-#endif + movl (%ebx),%ebp + cfi_rel_offset (ebp, 4) + +@@ -149,6 +141,5 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_add_n)) +diff --git a/sysdeps/i386/i586/addmul_1.S b/sysdeps/i386/i586/addmul_1.S +index 89bf87c4ea2a87af..a9d0b08b5e8072ab 100644 +--- a/sysdeps/i386/i586/addmul_1.S ++++ b/sysdeps/i386/i586/addmul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_addmul_1)) +- ENTER + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -53,12 +52,6 @@ ENTRY (BP_SYM (__mpn_addmul_1)) + movl SIZE(%esp), %size + movl S2LIMB(%esp), %s2_limb + cfi_rel_offset (s2_limb, 0) +-#if __BOUNDED_POINTERS__ +- shll $2, %size /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %size) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %size) +- shrl $2, %size +-#endif + leal (%res_ptr,%size,4), %res_ptr + leal (%s1_ptr,%size,4), %s1_ptr + negl %size +@@ -98,7 +91,6 @@ L(oop): adcl $0, %ebp + cfi_adjust_cfa_offset (-4) + cfi_restore (res_ptr) + +- LEAVE + ret + #undef size + END (BP_SYM (__mpn_addmul_1)) +diff --git a/sysdeps/i386/i586/lshift.S b/sysdeps/i386/i586/lshift.S +index d619c58d2dda212d..23c5002d69f50f8f 100644 +--- a/sysdeps/i386/i586/lshift.S ++++ b/sysdeps/i386/i586/lshift.S +@@ -29,7 +29,6 @@ + + .text + ENTRY (BP_SYM (__mpn_lshift)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -48,12 +47,6 @@ ENTRY (BP_SYM (__mpn_lshift)) + movl SIZE(%esp),%ebx + cfi_rel_offset (ebx, 0) + movl CNT(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ebx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ebx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S(%esp), %ebx) +- shrl $2, %ebx +-#endif + + /* We can use faster code for shift-by-1 under certain conditions. */ + cmp $1,%ecx +@@ -155,7 +148,6 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + + /* We loop from least significant end of the arrays, which is only +@@ -261,6 +253,5 @@ L(L1): movl %edx,(%edi) /* store last limb */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_lshift)) +diff --git a/sysdeps/i386/i586/memcpy.S b/sysdeps/i386/i586/memcpy.S +index a3f3524ad03509c1..07f5432d761c453d 100644 +--- a/sysdeps/i386/i586/memcpy.S ++++ b/sysdeps/i386/i586/memcpy.S +@@ -42,7 +42,6 @@ ENTRY (__memcpy_chk) + END (__memcpy_chk) + #endif + ENTRY (BP_SYM (memcpy)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -54,8 +53,6 @@ ENTRY (BP_SYM (memcpy)) + movl SRC(%esp), %esi + cfi_rel_offset (esi, 0) + movl LEN(%esp), %ecx +- CHECK_BOUNDS_BOTH_WIDE (%edi, DEST(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, SRC(%esp), %ecx) + movl %edi, %eax + + /* We need this in any case. */ +@@ -127,7 +124,6 @@ L(1): rep; movsb + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (memcpy)) + #if !MEMPCPY_P +diff --git a/sysdeps/i386/i586/memset.S b/sysdeps/i386/i586/memset.S +index d7a4b73a72b1abce..8234b99d734b24b0 100644 +--- a/sysdeps/i386/i586/memset.S ++++ b/sysdeps/i386/i586/memset.S +@@ -45,7 +45,6 @@ ENTRY (__memset_chk) + END (__memset_chk) + #endif + ENTRY (BP_SYM (memset)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -53,7 +52,6 @@ ENTRY (BP_SYM (memset)) + movl DEST(%esp), %edi + cfi_rel_offset (edi, 0) + movl LEN(%esp), %edx +- CHECK_BOUNDS_BOTH_WIDE (%edi, DEST(%esp), %edx) + #if BZERO_P + xorl %eax, %eax /* we fill with 0 */ + #else +@@ -111,13 +109,11 @@ L(2): shrl $2, %ecx /* convert byte count to longword count */ + #if !BZERO_P + /* Load result (only if used as memset). */ + movl DEST(%esp), %eax /* start address of destination is result */ +- RETURN_BOUNDED_POINTER (DEST(%esp)) + #endif + popl %edi + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + #if BZERO_P + ret + #else +diff --git a/sysdeps/i386/i586/mul_1.S b/sysdeps/i386/i586/mul_1.S +index 28670a24679d0e7e..c694afb42141b16f 100644 +--- a/sysdeps/i386/i586/mul_1.S ++++ b/sysdeps/i386/i586/mul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_mul_1)) +- ENTER + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -53,12 +52,6 @@ ENTRY (BP_SYM (__mpn_mul_1)) + movl SIZE(%esp), %size + movl S2LIMB(%esp), %s2_limb + cfi_rel_offset (s2_limb, 0) +-#if __BOUNDED_POINTERS__ +- shll $2, %size /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %size) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %size) +- shrl $2, %size +-#endif + leal (%res_ptr,%size,4), %res_ptr + leal (%s1_ptr,%size,4), %s1_ptr + negl %size +@@ -94,7 +87,6 @@ L(oop): adcl $0, %ebp + cfi_adjust_cfa_offset (-4) + cfi_restore (res_ptr) + +- LEAVE + ret + #undef size + END (BP_SYM (__mpn_mul_1)) +diff --git a/sysdeps/i386/i586/rshift.S b/sysdeps/i386/i586/rshift.S +index caf0986d2f473c74..ce3710391193dbac 100644 +--- a/sysdeps/i386/i586/rshift.S ++++ b/sysdeps/i386/i586/rshift.S +@@ -29,7 +29,6 @@ + + .text + ENTRY (BP_SYM (__mpn_rshift)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -48,12 +47,6 @@ ENTRY (BP_SYM (__mpn_rshift)) + movl SIZE(%esp),%ebx + cfi_rel_offset (ebx, 0) + movl CNT(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ebx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ebx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S(%esp), %ebx) +- shrl $2, %ebx +-#endif + + /* We can use faster code for shift-by-1 under certain conditions. */ + cmp $1,%ecx +@@ -152,7 +145,6 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + + /* We loop from least significant end of the arrays, which is only +@@ -261,6 +253,5 @@ L(L1): movl %edx,(%edi) /* store last limb */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_rshift)) +diff --git a/sysdeps/i386/i586/strchr.S b/sysdeps/i386/i586/strchr.S +index 4c424763224ca839..35259fb085840180 100644 +--- a/sysdeps/i386/i586/strchr.S ++++ b/sysdeps/i386/i586/strchr.S +@@ -43,7 +43,6 @@ + + .text + ENTRY (BP_SYM (strchr)) +- ENTER + + pushl %edi /* Save callee-safe registers. */ + cfi_adjust_cfa_offset (-4) +@@ -57,7 +56,6 @@ ENTRY (BP_SYM (strchr)) + + movl STR(%esp), %eax + movl CHR(%esp), %edx +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + + movl %eax, %edi /* duplicate string pointer for later */ + cfi_rel_offset (edi, 12) +@@ -82,7 +80,7 @@ ENTRY (BP_SYM (strchr)) + jp L(0) /* exactly two bits set */ + + xorb (%eax), %cl /* is byte the one we are looking for? */ +- jz L(2) /* yes => return pointer */ ++ jz L(out) /* yes => return pointer */ + + xorb %dl, %cl /* load single byte and test for NUL */ + je L(3) /* yes => return NULL */ +@@ -91,7 +89,7 @@ ENTRY (BP_SYM (strchr)) + incl %eax + + cmpb %cl, %dl /* is byte == C? */ +- je L(2) /* aligned => return pointer */ ++ je L(out) /* aligned => return pointer */ + + cmpb $0, %cl /* is byte NUL? */ + je L(3) /* yes => return NULL */ +@@ -104,7 +102,7 @@ ENTRY (BP_SYM (strchr)) + L(0): movb (%eax), %cl /* load single byte */ + + cmpb %cl, %dl /* is byte == C? */ +- je L(2) /* aligned => return pointer */ ++ je L(out) /* aligned => return pointer */ + + cmpb $0, %cl /* is byte NUL? */ + je L(3) /* yes => return NULL */ +@@ -274,23 +272,21 @@ L(1): xorl %ecx, %ebp /* (word^magic) */ + L(5): subl $4, %eax /* adjust pointer */ + testb %bl, %bl /* first byte == C? */ + +- jz L(2) /* yes => return pointer */ ++ jz L(out) /* yes => return pointer */ + + incl %eax /* increment pointer */ + testb %bh, %bh /* second byte == C? */ + +- jz L(2) /* yes => return pointer */ ++ jz L(out) /* yes => return pointer */ + + shrl $16, %ebx /* make upper bytes accessible */ + incl %eax /* increment pointer */ + + cmp $0, %bl /* third byte == C */ +- je L(2) /* yes => return pointer */ ++ je L(out) /* yes => return pointer */ + + incl %eax /* increment pointer */ + +-L(2): CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- RETURN_BOUNDED_POINTER (STR(%esp)) + L(out): popl %ebp /* restore saved registers */ + cfi_adjust_cfa_offset (-4) + cfi_restore (ebp) +@@ -305,7 +301,6 @@ L(out): popl %ebp /* restore saved registers */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + + cfi_adjust_cfa_offset (16) +@@ -318,7 +313,7 @@ L(out): popl %ebp /* restore saved registers */ + L(4): subl $4, %eax /* adjust pointer */ + cmpb %dl, %cl /* first byte == C? */ + +- je L(2) /* yes => return pointer */ ++ je L(out) /* yes => return pointer */ + + cmpb $0, %cl /* first byte == NUL? */ + je L(3) /* yes => return NULL */ +@@ -326,7 +321,7 @@ L(4): subl $4, %eax /* adjust pointer */ + incl %eax /* increment pointer */ + + cmpb %dl, %ch /* second byte == C? */ +- je L(2) /* yes => return pointer */ ++ je L(out) /* yes => return pointer */ + + cmpb $0, %ch /* second byte == NUL? */ + je L(3) /* yes => return NULL */ +@@ -335,7 +330,7 @@ L(4): subl $4, %eax /* adjust pointer */ + incl %eax /* increment pointer */ + + cmpb %dl, %cl /* third byte == C? */ +- je L(2) /* yes => return pointer */ ++ je L(out) /* yes => return pointer */ + + cmpb $0, %cl /* third byte == NUL? */ + je L(3) /* yes => return NULL */ +@@ -344,10 +339,9 @@ L(4): subl $4, %eax /* adjust pointer */ + + /* The test four the fourth byte is necessary! */ + cmpb %dl, %ch /* fourth byte == C? */ +- je L(2) /* yes => return pointer */ ++ je L(out) /* yes => return pointer */ + + L(3): xorl %eax, %eax +- RETURN_NULL_BOUNDED_POINTER + jmp L(out) + END (BP_SYM (strchr)) + +diff --git a/sysdeps/i386/i586/strcpy.S b/sysdeps/i386/i586/strcpy.S +index 50fc521dd2e28c17..edd21f135d46a732 100644 +--- a/sysdeps/i386/i586/strcpy.S ++++ b/sysdeps/i386/i586/strcpy.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (STRCPY)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -48,8 +47,6 @@ ENTRY (BP_SYM (STRCPY)) + cfi_rel_offset (edi, 8) + movl SRC(%esp), %esi + cfi_rel_offset (esi, 4) +- CHECK_BOUNDS_LOW (%edi, DEST(%esp)) +- CHECK_BOUNDS_LOW (%esi, SRC(%esp)) + + xorl %eax, %eax + leal -1(%esi), %ecx +@@ -158,7 +155,6 @@ L(end2): + #else + movl DEST(%esp), %eax + #endif +- RETURN_BOUNDED_POINTER (DEST(%esp)) + popl %ebx + cfi_adjust_cfa_offset (-4) + cfi_restore (ebx) +@@ -169,7 +165,6 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (STRCPY)) + #ifndef USE_AS_STPCPY +diff --git a/sysdeps/i386/i586/strlen.S b/sysdeps/i386/i586/strlen.S +index 29d81d6b8de51b87..323cb950790174e6 100644 +--- a/sysdeps/i386/i586/strlen.S ++++ b/sysdeps/i386/i586/strlen.S +@@ -41,10 +41,8 @@ + + .text + ENTRY (BP_SYM (strlen)) +- ENTER + + movl STR(%esp), %eax +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + movl $3, %edx /* load mask (= 3) */ + + andl %eax, %edx /* separate last two bits of address */ +@@ -178,11 +176,9 @@ L(3): subl $4, %eax /* correct too early pointer increment */ + + incl %eax /* increment pointer */ + +-L(2): CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- subl STR(%esp), %eax /* now compute the length as difference ++L(2): subl STR(%esp), %eax /* now compute the length as difference + between start and terminating NUL + character */ +- LEAVE + ret + END (BP_SYM (strlen)) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/i386/i586/sub_n.S b/sysdeps/i386/i586/sub_n.S +index 6ac1447be31f84f0..07bddca9a8ce7fe8 100644 +--- a/sysdeps/i386/i586/sub_n.S ++++ b/sysdeps/i386/i586/sub_n.S +@@ -30,7 +30,6 @@ + + .text + ENTRY (BP_SYM (__mpn_sub_n)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -48,13 +47,6 @@ ENTRY (BP_SYM (__mpn_sub_n)) + movl S2(%esp),%ebx + cfi_rel_offset (ebx, 0) + movl SIZE(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ecx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S1(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%ebx, S2(%esp), %ecx) +- shrl $2, %ecx +-#endif + movl (%ebx),%ebp + cfi_rel_offset (ebp, 4) + +@@ -149,6 +141,5 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_sub_n)) +diff --git a/sysdeps/i386/i586/submul_1.S b/sysdeps/i386/i586/submul_1.S +index b08902562fbc8807..a028d7089798ceb7 100644 +--- a/sysdeps/i386/i586/submul_1.S ++++ b/sysdeps/i386/i586/submul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_submul_1)) +- ENTER + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -53,12 +52,6 @@ ENTRY (BP_SYM (__mpn_submul_1)) + movl SIZE(%esp), %size + movl S2LIMB(%esp), %s2_limb + cfi_rel_offset (s2_limb, 0) +-#if __BOUNDED_POINTERS__ +- shll $2, %sizeP /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %sizeP) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %sizeP) +- shrl $2, %sizeP +-#endif + leal (%res_ptr,%size,4), %res_ptr + leal (%s1_ptr,%size,4), %s1_ptr + negl %size +@@ -98,7 +91,6 @@ L(oop): adcl $0, %ebp + cfi_adjust_cfa_offset (-4) + cfi_restore (res_ptr) + +- LEAVE + ret + #undef size + END (BP_SYM (__mpn_submul_1)) +diff --git a/sysdeps/i386/i686/add_n.S b/sysdeps/i386/i686/add_n.S +index ff4c66db354d6100..f645a21c1cad52ab 100644 +--- a/sysdeps/i386/i686/add_n.S ++++ b/sysdeps/i386/i686/add_n.S +@@ -34,7 +34,6 @@ L(1): addl (%esp), %eax + ret + #endif + ENTRY (BP_SYM (__mpn_add_n)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -47,13 +46,6 @@ ENTRY (BP_SYM (__mpn_add_n)) + cfi_rel_offset (esi, 0) + movl S2(%esp),%edx + movl SIZE(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ecx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S1(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%edx, S2(%esp), %ecx) +- shrl $2, %ecx +-#endif + movl %ecx,%eax + shrl $3,%ecx /* compute count for unrolled loop */ + negl %eax +@@ -116,6 +108,5 @@ L(oop): movl (%esi),%eax + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_add_n)) +diff --git a/sysdeps/i386/i686/memcmp.S b/sysdeps/i386/i686/memcmp.S +index 9eab978983695f20..f45a22400242cb02 100644 +--- a/sysdeps/i386/i686/memcmp.S ++++ b/sysdeps/i386/i686/memcmp.S +@@ -26,9 +26,9 @@ + #define BLK2 BLK1+PTR_SIZE + #define LEN BLK2+PTR_SIZE + #define ENTRANCE pushl %ebx; cfi_adjust_cfa_offset (4); \ +- cfi_rel_offset (ebx, 0); ENTER ++ cfi_rel_offset (ebx, 0) + #define RETURN popl %ebx; cfi_adjust_cfa_offset (-4); \ +- cfi_restore (ebx); LEAVE; ret ++ cfi_restore (ebx); ret + + /* Load an entry in a jump table into EBX. TABLE is a jump table + with relative offsets. INDEX is a register contains the index +diff --git a/sysdeps/i386/i686/memcpy.S b/sysdeps/i386/i686/memcpy.S +index a720b02c3b2d5ed8..68f7e40031b1b4db 100644 +--- a/sysdeps/i386/i686/memcpy.S ++++ b/sysdeps/i386/i686/memcpy.S +@@ -38,7 +38,6 @@ ENTRY_CHK (__memcpy_chk) + END_CHK (__memcpy_chk) + #endif + ENTRY (BP_SYM (memcpy)) +- ENTER + + movl %edi, %eax + movl DEST(%esp), %edi +@@ -81,9 +80,7 @@ ENTRY (BP_SYM (memcpy)) + .Lend: movl %eax, %edi + movl %edx, %esi + movl DEST(%esp), %eax +- RETURN_BOUNDED_POINTER (DEST(%esp)) + +- LEAVE + RET_PTR + + /* When we come here the pointers do not have the same +diff --git a/sysdeps/i386/i686/memmove.S b/sysdeps/i386/i686/memmove.S +index 2de2a193eab59da7..683f45fc44fc4f4f 100644 +--- a/sysdeps/i386/i686/memmove.S ++++ b/sysdeps/i386/i686/memmove.S +@@ -47,7 +47,6 @@ END_CHK (__memmove_chk) + #endif + + ENTRY (BP_SYM (memmove)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -58,8 +57,6 @@ ENTRY (BP_SYM (memmove)) + movl %esi, %edx + movl SRC(%esp), %esi + cfi_register (esi, edx) +- CHECK_BOUNDS_BOTH_WIDE (%edi, DEST(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, SRC(%esp), %ecx) + + movl %edi, %eax + subl %esi, %eax +@@ -79,14 +76,12 @@ ENTRY (BP_SYM (memmove)) + cfi_restore (esi) + #ifndef USE_AS_BCOPY + movl DEST(%esp), %eax +- RETURN_BOUNDED_POINTER (DEST(%esp)) + #endif + + popl %edi + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + + cfi_adjust_cfa_offset (4) +@@ -113,7 +108,6 @@ ENTRY (BP_SYM (memmove)) + cfi_restore (esi) + #ifndef USE_AS_BCOPY + movl DEST(%esp), %eax +- RETURN_BOUNDED_POINTER (DEST(%esp)) + #endif + + cld +@@ -121,7 +115,6 @@ ENTRY (BP_SYM (memmove)) + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (memmove)) + #ifndef USE_AS_BCOPY +diff --git a/sysdeps/i386/i686/mempcpy.S b/sysdeps/i386/i686/mempcpy.S +index 402c415e06b3c80f..facff870e3f8f9de 100644 +--- a/sysdeps/i386/i686/mempcpy.S ++++ b/sysdeps/i386/i686/mempcpy.S +@@ -38,17 +38,14 @@ ENTRY_CHK (__mempcpy_chk) + END_CHK (__mempcpy_chk) + #endif + ENTRY (BP_SYM (__mempcpy)) +- ENTER + + movl LEN(%esp), %ecx + movl %edi, %eax + cfi_register (edi, eax) + movl DEST(%esp), %edi +- CHECK_BOUNDS_BOTH_WIDE (%edi, DEST(%esp), %ecx) + movl %esi, %edx + cfi_register (esi, edx) + movl SRC(%esp), %esi +- CHECK_BOUNDS_BOTH_WIDE (%esi, SRC(%esp), %ecx) + cld + shrl $1, %ecx + jnc 1f +@@ -62,9 +59,7 @@ ENTRY (BP_SYM (__mempcpy)) + cfi_restore (edi) + movl %edx, %esi + cfi_restore (esi) +- RETURN_BOUNDED_POINTER (DEST(%esp)) + +- LEAVE + RET_PTR + END (BP_SYM (__mempcpy)) + libc_hidden_def (BP_SYM (__mempcpy)) +diff --git a/sysdeps/i386/i686/memset.S b/sysdeps/i386/i686/memset.S +index 429c5386ec0a395b..7db25497117b6258 100644 +--- a/sysdeps/i386/i686/memset.S ++++ b/sysdeps/i386/i686/memset.S +@@ -46,14 +46,12 @@ ENTRY_CHK (__memset_chk) + END_CHK (__memset_chk) + #endif + ENTRY (BP_SYM (memset)) +- ENTER + + cld + pushl %edi + cfi_adjust_cfa_offset (4) + movl DEST(%esp), %edx + movl LEN(%esp), %ecx +- CHECK_BOUNDS_BOTH_WIDE (%edx, DEST(%esp), %ecx) + #if BZERO_P + xorl %eax, %eax /* fill with 0 */ + #else +@@ -90,13 +88,11 @@ ENTRY (BP_SYM (memset)) + 1: + #if !BZERO_P + movl DEST(%esp), %eax /* start address of destination is result */ +- RETURN_BOUNDED_POINTER (DEST(%esp)) + #endif + popl %edi + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + #if BZERO_P + ret + #else +diff --git a/sysdeps/i386/i686/strcmp.S b/sysdeps/i386/i686/strcmp.S +index 3dcc289bfc172db5..0423aac297358c77 100644 +--- a/sysdeps/i386/i686/strcmp.S ++++ b/sysdeps/i386/i686/strcmp.S +@@ -28,12 +28,9 @@ + + .text + ENTRY (BP_SYM (strcmp)) +- ENTER + + movl STR1(%esp), %ecx + movl STR2(%esp), %edx +- CHECK_BOUNDS_LOW (%ecx, STR1(%esp)) +- CHECK_BOUNDS_LOW (%edx, STR2(%esp)) + + L(oop): movb (%ecx), %al + cmpb (%edx), %al +@@ -46,26 +43,12 @@ L(oop): movb (%ecx), %al + xorl %eax, %eax + /* when strings are equal, pointers rest one beyond + the end of the NUL terminators. */ +- CHECK_BOUNDS_HIGH (%ecx, STR1(%esp), jbe) +- CHECK_BOUNDS_HIGH (%edx, STR2(%esp), jbe) +- LEAVE + ret + +-#ifndef __BOUNDED_POINTERS__ + L(neq): movl $1, %eax + movl $-1, %ecx + cmovbl %ecx, %eax +-#else +-L(neq): movl $1, %eax +- ja L(chk) +- negl %eax +- /* When strings differ, pointers rest on +- the unequal characters. */ +-L(chk): CHECK_BOUNDS_HIGH (%ecx, STR1(%esp), jb) +- CHECK_BOUNDS_HIGH (%edx, STR2(%esp), jb) +-#endif + +- LEAVE + ret + END (BP_SYM (strcmp)) + libc_hidden_builtin_def (strcmp) +diff --git a/sysdeps/i386/i686/strtok.S b/sysdeps/i386/i686/strtok.S +index 5589ae5360918944..372352e32a84f81d 100644 +--- a/sysdeps/i386/i686/strtok.S ++++ b/sysdeps/i386/i686/strtok.S +@@ -46,11 +46,7 @@ + .type save_ptr, @object + .size save_ptr, 4 + save_ptr: +-# if __BOUNDED_POINTERS__ +- .space 12 +-# else + .space 4 +-# endif + + # ifdef PIC + # define SAVE_PTR save_ptr@GOTOFF(%ebx) +@@ -81,7 +77,6 @@ save_ptr: + #endif + + ENTRY (BP_SYM (FUNCTION)) +- ENTER + + #if !defined USE_AS_STRTOK_R && defined PIC + pushl %ebx /* Save PIC register. */ +@@ -127,23 +122,7 @@ ENTRY (BP_SYM (FUNCTION)) + cmove %eax, %edx + testl %edx, %edx + jz L(returnNULL) +-#if __BOUNDED_POINTERS__ +-# ifdef USE_AS_STRTOK_R +- movl SAVE(%esp), %ecx /* borrow %ecx for a moment */ +-# endif +- je L(0) +- /* Save bounds of incoming non-NULL STR into save area. */ +- movl 4+STR(%esp), %eax +- movl %eax, 4+SAVE_PTR +- movl 8+STR(%esp), %eax +- movl %eax, 8+SAVE_PTR +-L(0): CHECK_BOUNDS_LOW (%edx, SAVE_PTR) +-# ifdef USE_AS_STRTOK_R +- xorl %ecx, %ecx /* restore %ecx to zero */ +-# endif +-#endif + movl DELIM(%esp), %eax /* Get start of delimiter set. */ +- CHECK_BOUNDS_LOW (%eax, DELIM(%esp)) + + /* For understanding the following code remember that %ecx == 0 now. + Although all the following instruction only modify %cl we always +@@ -151,17 +130,17 @@ L(0): CHECK_BOUNDS_LOW (%edx, SAVE_PTR) + + L(2): movb (%eax), %cl /* get byte from stopset */ + testb %cl, %cl /* is NUL char? */ +- jz L(1_1) /* yes => start compare loop */ ++ jz L(1) /* yes => start compare loop */ + movb %cl, (%esp,%ecx) /* set corresponding byte in stopset table */ + + movb 1(%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ +- jz L(1_2) /* yes => start compare loop */ ++ jz L(1) /* yes => start compare loop */ + movb %cl, (%esp,%ecx) /* set corresponding byte in stopset table */ + + movb 2(%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ +- jz L(1_3) /* yes => start compare loop */ ++ jz L(1) /* yes => start compare loop */ + movb %cl, (%esp,%ecx) /* set corresponding byte in stopset table */ + + movb 3(%eax), %cl /* get byte from stopset */ +@@ -170,16 +149,7 @@ L(2): movb (%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ + jnz L(2) /* no => process next dword from stopset */ + +-#if __BOUNDED_POINTERS__ +- jmp L(1_0) /* pointer is correct for bounds check */ +-L(1_3): incl %eax /* adjust pointer for bounds check */ +-L(1_2): incl %eax /* ditto */ +-L(1_1): incl %eax /* ditto */ +-L(1_0): CHECK_BOUNDS_HIGH (%eax, DELIM(%esp), jbe) +-#else +-L(1_3):; L(1_2):; L(1_1): /* fall through */ +-#endif +- leal -4(%edx), %eax /* prepare loop */ ++L(1): leal -4(%edx), %eax /* prepare loop */ + + /* We use a neat trick for the following loop. Normally we would + have to test for two termination conditions +@@ -253,8 +223,6 @@ L(8): cmpl %eax, %edx + movl SAVE(%esp), %ecx + #endif + movl %edx, SAVE_PTR +- CHECK_BOUNDS_HIGH (%edx, SAVE_PTR, jb) +- RETURN_BOUNDED_POINTER (SAVE_PTR) + + L(epilogue): + /* Remove the stopset table. */ +@@ -265,7 +233,6 @@ L(epilogue): + cfi_adjust_cfa_offset (-4) + cfi_restore (ebx) + #endif +- LEAVE + RET_PTR + + L(returnNULL): +@@ -274,7 +241,6 @@ L(returnNULL): + movl SAVE(%esp), %ecx + #endif + movl %edx, SAVE_PTR +- RETURN_NULL_BOUNDED_POINTER + jmp L(epilogue) + + END (BP_SYM (FUNCTION)) +diff --git a/sysdeps/i386/lshift.S b/sysdeps/i386/lshift.S +index eb2e6ffd3b92ba97..b40d4ddd3a0e7fd7 100644 +--- a/sysdeps/i386/lshift.S ++++ b/sysdeps/i386/lshift.S +@@ -29,7 +29,6 @@ + + .text + ENTRY (BP_SYM (__mpn_lshift)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -44,12 +43,6 @@ ENTRY (BP_SYM (__mpn_lshift)) + cfi_rel_offset (esi, 4) + movl SIZE(%esp),%edx + movl CNT(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %edx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %edx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S(%esp), %edx) +- shrl $2, %edx +-#endif + subl $4,%esi /* adjust s_ptr */ + + movl (%esi,%edx,4),%ebx /* read most significant limb */ +@@ -92,7 +85,6 @@ L(1): movl (%esi,%edx,4),%eax + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + + cfi_restore_state +@@ -109,6 +101,5 @@ L(end): shll %cl,%ebx /* compute least significant limb */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_lshift)) +diff --git a/sysdeps/i386/memchr.S b/sysdeps/i386/memchr.S +index a3427c17dafd0cbf..88651e527650b26b 100644 +--- a/sysdeps/i386/memchr.S ++++ b/sysdeps/i386/memchr.S +@@ -39,7 +39,6 @@ + + .text + ENTRY (BP_SYM (__memchr)) +- ENTER + + /* Save callee-safe registers used in this function. */ + pushl %esi +@@ -53,7 +52,6 @@ ENTRY (BP_SYM (__memchr)) + movl CHR(%esp), %edx /* c: byte we are looking for. */ + movl LEN(%esp), %esi /* len: length of memory block. */ + cfi_rel_offset (esi, 4) +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + + /* If my must not test more than three characters test + them one by one. This is especially true for 0. */ +@@ -312,23 +310,13 @@ L(8): testb %cl, %cl /* test first byte in dword */ + incl %eax /* increment source pointer */ + + /* No further test needed we we know it is one of the four bytes. */ +-L(9): +-#if __BOUNDED_POINTERS__ +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- /* If RTN pointer is phony, don't copy return value into it. */ +- movl RTN(%esp), %ecx +- testl %ecx, %ecx +- jz L(pop) +- RETURN_BOUNDED_POINTER (STR(%esp)) +-#endif +-L(pop): popl %edi /* pop saved registers */ ++L(9): popl %edi /* pop saved registers */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + popl %esi + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + +- LEAVE + RET_PTR + END (BP_SYM (__memchr)) + +diff --git a/sysdeps/i386/memcmp.S b/sysdeps/i386/memcmp.S +index e21e4916e6151c28..1d5535a29dd12b33 100644 +--- a/sysdeps/i386/memcmp.S ++++ b/sysdeps/i386/memcmp.S +@@ -28,7 +28,6 @@ + + .text + ENTRY (BP_SYM (memcmp)) +- ENTER + + pushl %esi /* Save callee-safe registers. */ + cfi_adjust_cfa_offset (4) +@@ -40,8 +39,6 @@ ENTRY (BP_SYM (memcmp)) + cfi_rel_offset (esi, 0) + movl BLK2(%esp), %edi + movl LEN(%esp), %ecx +- CHECK_BOUNDS_LOW (%esi, BLK1(%esp)) +- CHECK_BOUNDS_LOW (%edi, BLK2(%esp)) + + cld /* Set direction of comparison. */ + +@@ -64,15 +61,12 @@ ENTRY (BP_SYM (memcmp)) + Note that the following operation does not change 0xffffffff. */ + orb $1, %al /* Change 0 to 1. */ + +-L(1): CHECK_BOUNDS_HIGH (%esi, BLK1(%esp), jbe) +- CHECK_BOUNDS_HIGH (%edi, BLK2(%esp), jbe) +- popl %esi /* Restore registers. */ ++L(1): popl %esi /* Restore registers. */ + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + movl %edx, %edi + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (memcmp)) + +diff --git a/sysdeps/i386/mul_1.S b/sysdeps/i386/mul_1.S +index c599a96eade313e4..71f8dceb188057d9 100644 +--- a/sysdeps/i386/mul_1.S ++++ b/sysdeps/i386/mul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_mul_1)) +- ENTER + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -53,12 +52,6 @@ ENTRY (BP_SYM (__mpn_mul_1)) + movl SIZE(%esp), %size + movl S2LIMB(%esp), %s2_limb + cfi_rel_offset (s2_limb, 0) +-#if __BOUNDED_POINTERS__ +- shll $2, %size /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %size) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %size) +- shrl $2, %size +-#endif + leal (%res_ptr,%size,4), %res_ptr + leal (%s1_ptr,%size,4), %s1_ptr + negl %size +@@ -90,7 +83,6 @@ L(oop): + cfi_adjust_cfa_offset (-4) + cfi_restore (res_ptr) + +- LEAVE + ret + #undef size + END (BP_SYM (__mpn_mul_1)) +diff --git a/sysdeps/i386/rawmemchr.S b/sysdeps/i386/rawmemchr.S +index 7479e3bd75b9d4a0..3ce497485e439c02 100644 +--- a/sysdeps/i386/rawmemchr.S ++++ b/sysdeps/i386/rawmemchr.S +@@ -38,7 +38,6 @@ + + .text + ENTRY (BP_SYM (__rawmemchr)) +- ENTER + + /* Save callee-safe register used in this function. */ + pushl %edi +@@ -48,7 +47,6 @@ ENTRY (BP_SYM (__rawmemchr)) + /* Load parameters into registers. */ + movl STR(%esp), %eax + movl CHR(%esp), %edx +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + + /* At the moment %edx contains C. What we need for the + algorithm is C in all bytes of the dword. Avoid +@@ -215,13 +213,10 @@ L(8): testb %cl, %cl /* test first byte in dword */ + /* No further test needed we we know it is one of the four bytes. */ + + L(9): +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- RETURN_BOUNDED_POINTER (STR(%esp)) + popl %edi /* pop saved register */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (__rawmemchr)) + +diff --git a/sysdeps/i386/rshift.S b/sysdeps/i386/rshift.S +index c9ec570979f5b555..48f7c4f89dc408d3 100644 +--- a/sysdeps/i386/rshift.S ++++ b/sysdeps/i386/rshift.S +@@ -29,7 +29,6 @@ + + .text + ENTRY (BP_SYM (__mpn_rshift)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -44,12 +43,6 @@ ENTRY (BP_SYM (__mpn_rshift)) + cfi_rel_offset (esi, 4) + movl SIZE(%esp),%edx + movl CNT(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %edx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %edx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S(%esp), %edx) +- shrl $2, %edx +-#endif + leal -4(%edi,%edx,4),%edi + leal (%esi,%edx,4),%esi + negl %edx +@@ -94,7 +87,6 @@ L(1): movl (%esi,%edx,4),%eax + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + + cfi_restore_state +@@ -111,6 +103,5 @@ L(end): shrl %cl,%ebx /* compute most significant limb */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_rshift)) +diff --git a/sysdeps/i386/setjmp.S b/sysdeps/i386/setjmp.S +index 518f3c30c01893b5..8e7a4df25bd2ff8d 100644 +--- a/sysdeps/i386/setjmp.S ++++ b/sysdeps/i386/setjmp.S +@@ -28,10 +28,8 @@ + #define SIGMSK JMPBUF+PTR_SIZE + + ENTRY (BP_SYM (__sigsetjmp)) +- ENTER + + movl JMPBUF(%esp), %eax +- CHECK_BOUNDS_BOTH_WIDE (%eax, JMPBUF(%esp), $JB_SIZE) + + /* Save registers. */ + movl %ebx, (JB_BX*4)(%eax) +@@ -48,7 +46,6 @@ ENTRY (BP_SYM (__sigsetjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_PC*4)(%eax) +- LEAVE /* pop frame pointer to prepare for tail-call. */ + movl %ebp, (JB_BP*4)(%eax) /* Save caller's frame pointer. */ + + #if IS_IN (rtld) +diff --git a/sysdeps/i386/stpcpy.S b/sysdeps/i386/stpcpy.S +index 472c315ce7a1ad00..3a01be3174ef0863 100644 +--- a/sysdeps/i386/stpcpy.S ++++ b/sysdeps/i386/stpcpy.S +@@ -34,12 +34,9 @@ + + .text + ENTRY (BP_SYM (__stpcpy)) +- ENTER + + movl DEST(%esp), %eax + movl SRC(%esp), %ecx +- CHECK_BOUNDS_LOW (%eax, DEST(%esp)) +- CHECK_BOUNDS_LOW (%ecx, SRC(%esp)) + subl %eax, %ecx /* magic: reduce number of loop variants + to one using addressing mode */ + +@@ -85,10 +82,7 @@ L(1): addl $4, %eax /* increment loop counter */ + L(4): incl %eax + L(3): incl %eax + L(2): +- CHECK_BOUNDS_HIGH (%eax, DEST(%esp), jb) +- RETURN_BOUNDED_POINTER (DEST(%esp)) + +- LEAVE + RET_PTR + END (BP_SYM (__stpcpy)) + +diff --git a/sysdeps/i386/stpncpy.S b/sysdeps/i386/stpncpy.S +index d74a42f188d8d849..7f3ca8c3b775b42f 100644 +--- a/sysdeps/i386/stpncpy.S ++++ b/sysdeps/i386/stpncpy.S +@@ -36,7 +36,6 @@ + + .text + ENTRY (BP_SYM (__stpncpy)) +- ENTER + + pushl %esi + cfi_adjust_cfa_offset (4) +@@ -45,8 +44,6 @@ ENTRY (BP_SYM (__stpncpy)) + movl SRC(%esp), %esi + cfi_rel_offset (esi, 0) + movl LEN(%esp), %ecx +- CHECK_BOUNDS_LOW (%eax, DEST(%esp)) +- CHECK_BOUNDS_LOW (%esi, SRC(%esp)) + + subl %eax, %esi /* magic: reduce number of loop variants + to one using addressing mode */ +@@ -141,18 +138,10 @@ L(8): + L(3): decl %ecx /* all bytes written? */ + jnz L(8) /* no, then again */ + +-L(9): +-#if __BOUNDED_POINTERS__ +- addl %eax, %esi /* undo magic: %esi now points beyond end of SRC */ +- CHECK_BOUNDS_HIGH (%esi, SRC(%esp), jbe) +- CHECK_BOUNDS_HIGH (%eax, DEST(%esp), jbe) +- RETURN_BOUNDED_POINTER (DEST(%esp)) +-#endif +- popl %esi /* restore saved register content */ ++L(9): popl %esi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + +- LEAVE + RET_PTR + END (BP_SYM (__stpncpy)) + +diff --git a/sysdeps/i386/strchr.S b/sysdeps/i386/strchr.S +index 80a7bd825df55e87..aff95b9b7ee4c35c 100644 +--- a/sysdeps/i386/strchr.S ++++ b/sysdeps/i386/strchr.S +@@ -32,14 +32,12 @@ + + .text + ENTRY (BP_SYM (strchr)) +- ENTER + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) + cfi_rel_offset (edi, 0) + movl STR(%esp), %eax + movl CHR(%esp), %edx +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + + /* At the moment %edx contains C. What we need for the + algorithm is C in all bytes of the dword. Avoid +@@ -244,12 +242,10 @@ L(11): movl (%eax), %ecx /* get word (= 4 bytes) in question */ + + L(2): /* Return NULL. */ + xorl %eax, %eax +- RETURN_NULL_BOUNDED_POINTER + popl %edi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + + cfi_adjust_cfa_offset (4) +@@ -286,13 +282,10 @@ L(7): testb %cl, %cl /* is first byte C? */ + incl %eax + + L(6): +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- RETURN_BOUNDED_POINTER (STR(%esp)) + popl %edi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (strchr)) + +diff --git a/sysdeps/i386/strchrnul.S b/sysdeps/i386/strchrnul.S +index 65b950008f970a12..2aa7d82cc8af1dfc 100644 +--- a/sysdeps/i386/strchrnul.S ++++ b/sysdeps/i386/strchrnul.S +@@ -32,7 +32,6 @@ + + .text + ENTRY (BP_SYM (__strchrnul)) +- ENTER + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) +@@ -40,7 +39,6 @@ ENTRY (BP_SYM (__strchrnul)) + + movl STR(%esp), %eax + movl CHR(%esp), %edx +- CHECK_BOUNDS_LOW (%eax, STR(%esp)) + + /* At the moment %edx contains CHR. What we need for the + algorithm is CHR in all bytes of the dword. Avoid +@@ -272,13 +270,10 @@ L(7): testb %cl, %cl /* is first byte CHR? */ + /* It must be in the fourth byte and it cannot be NUL. */ + incl %eax + +-L(6): CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- RETURN_BOUNDED_POINTER (STR(%esp)) +- popl %edi /* restore saved register content */ ++L(6): popl %edi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (__strchrnul)) + +diff --git a/sysdeps/i386/strcspn.S b/sysdeps/i386/strcspn.S +index 1934daffb0ec41d1..40b5207809f74530 100644 +--- a/sysdeps/i386/strcspn.S ++++ b/sysdeps/i386/strcspn.S +@@ -31,11 +31,9 @@ + + .text + ENTRY (BP_SYM (strcspn)) +- ENTER + + movl STR(%esp), %edx + movl STOP(%esp), %eax +- CHECK_BOUNDS_LOW (%edx, STR(%esp)) + + /* First we create a table with flags for all possible characters. + For the ASCII (7bit/8bit) or ISO-8859-X character sets which are +@@ -236,11 +234,9 @@ L(5): incl %eax + + L(4): addl $256, %esp /* remove stopset */ + cfi_adjust_cfa_offset (-256) +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) + subl %edx, %eax /* we have to return the number of valid + characters, so compute distance to first + non-valid character */ +- LEAVE + ret + END (BP_SYM (strcspn)) + libc_hidden_builtin_def (strcspn) +diff --git a/sysdeps/i386/strpbrk.S b/sysdeps/i386/strpbrk.S +index 9696b9acd50b4885..ae35ba44f6a624a7 100644 +--- a/sysdeps/i386/strpbrk.S ++++ b/sysdeps/i386/strpbrk.S +@@ -32,11 +32,9 @@ + + .text + ENTRY (BP_SYM (strpbrk)) +- ENTER + + movl STR(%esp), %edx + movl STOP(%esp), %eax +- CHECK_BOUNDS_LOW (%edx, STR(%esp)) + + /* First we create a table with flags for all possible characters. + For the ASCII (7bit/8bit) or ISO-8859-X character sets which are +@@ -238,18 +236,10 @@ L(5): incl %eax + L(4): addl $256, %esp /* remove stopset */ + cfi_adjust_cfa_offset (-256) + +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) + orb %cl, %cl /* was last character NUL? */ + jnz L(7) /* no => return pointer */ + xorl %eax, %eax +- RETURN_NULL_BOUNDED_POINTER + +- LEAVE +- RET_PTR +- +-L(7): RETURN_BOUNDED_POINTER (STR(%esp)) +- +- LEAVE +- RET_PTR ++L(7): RET_PTR + END (BP_SYM (strpbrk)) + libc_hidden_builtin_def (strpbrk) +diff --git a/sysdeps/i386/strrchr.S b/sysdeps/i386/strrchr.S +index f3fe8b75540c58e1..57931c165831aa55 100644 +--- a/sysdeps/i386/strrchr.S ++++ b/sysdeps/i386/strrchr.S +@@ -31,7 +31,6 @@ + + .text + ENTRY (BP_SYM (strrchr)) +- ENTER + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) +@@ -43,7 +42,6 @@ ENTRY (BP_SYM (strrchr)) + movl STR(%esp), %esi + cfi_rel_offset (esi, 0) + movl CHR(%esp), %ecx +- CHECK_BOUNDS_LOW (%esi, STR(%esp)) + + /* At the moment %ecx contains C. What we need for the + algorithm is C in all bytes of the dword. Avoid +@@ -324,16 +322,13 @@ L(26): testb %dl, %dl /* is third byte == NUL */ + jne L(2) /* no => skip */ + leal 3(%esi), %eax /* store address as result */ + +-L(2): CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) +- RETURN_BOUNDED_POINTER (STR(%esp)) +- popl %esi /* restore saved register content */ ++L(2): popl %esi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + popl %edi + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + RET_PTR + END (BP_SYM (strrchr)) + +diff --git a/sysdeps/i386/strspn.S b/sysdeps/i386/strspn.S +index 4193f376590fa48c..2b5c2a4c670bdfa2 100644 +--- a/sysdeps/i386/strspn.S ++++ b/sysdeps/i386/strspn.S +@@ -31,11 +31,9 @@ + + .text + ENTRY (BP_SYM (strspn)) +- ENTER + + movl STR(%esp), %edx + movl SKIP(%esp), %eax +- CHECK_BOUNDS_LOW (%edx, STR(%esp)) + + /* First we create a table with flags for all possible characters. + For the ASCII (7bit/8bit) or ISO-8859-X character sets which are +@@ -236,11 +234,9 @@ L(5): incl %eax + + L(4): addl $256, %esp /* remove stopset */ + cfi_adjust_cfa_offset (-256) +- CHECK_BOUNDS_HIGH (%eax, STR(%esp), jb) + subl %edx, %eax /* we have to return the number of valid + characters, so compute distance to first + non-valid character */ +- LEAVE + ret + END (BP_SYM (strspn)) + libc_hidden_builtin_def (strspn) +diff --git a/sysdeps/i386/strtok.S b/sysdeps/i386/strtok.S +index 3b222aff3dd7d237..eb586928eb19bf21 100644 +--- a/sysdeps/i386/strtok.S ++++ b/sysdeps/i386/strtok.S +@@ -46,11 +46,7 @@ + .type save_ptr, @object + .size save_ptr, 4 + save_ptr: +-# if __BOUNDED_POINTERS__ +- .space 12 +-# else + .space 4 +-# endif + + # ifdef PIC + # define SAVE_PTR save_ptr@GOTOFF(%ebx) +@@ -69,11 +65,9 @@ save_ptr: + + .text + ENTRY (BP_SYM (FUNCTION)) +- ENTER + + movl STR(%esp), %edx + movl DELIM(%esp), %eax +- CHECK_BOUNDS_LOW (%eax, DELIM(%esp)) + + #if !defined USE_AS_STRTOK_R && defined PIC + pushl %ebx /* Save PIC register. */ +@@ -90,22 +84,7 @@ L(here): + /* If the pointer is NULL we have to use the stored value of + the last run. */ + cmpl $0, %edx +-#if __BOUNDED_POINTERS__ +- movl SAVE(%esp), %ecx +- je L(0) +- /* Save bounds of incoming non-NULL STR into save area. */ +- movl 4+STR(%esp), %eax +- movl %eax, 4+SAVE_PTR +- movl 8+STR(%esp), %eax +- movl %eax, 8+SAVE_PTR +- CHECK_BOUNDS_LOW (%edx, SAVE_PTR) +- jmp L(1) +-L(0): movl SAVE_PTR, %edx +- CHECK_BOUNDS_LOW (%edx, SAVE_PTR) +- jmp L(1) +-#else + jne L(1) +-#endif + + #ifdef USE_AS_STRTOK_R + /* The value is stored in the third argument. */ +@@ -267,12 +246,12 @@ L(2): movb (%eax), %cl /* get byte from stopset */ + + movb 1(%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ +- jz L(1_2) /* yes => start compare loop */ ++ jz L(1_1) /* yes => start compare loop */ + movb %cl, (%esp,%ecx) /* set corresponding byte in stopset table */ + + movb 2(%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ +- jz L(1_3) /* yes => start compare loop */ ++ jz L(1_1) /* yes => start compare loop */ + movb %cl, (%esp,%ecx) /* set corresponding byte in stopset table */ + + movb 3(%eax), %cl /* get byte from stopset */ +@@ -281,16 +260,7 @@ L(2): movb (%eax), %cl /* get byte from stopset */ + testb $0xff, %cl /* is NUL char? */ + jnz L(2) /* no => process next dword from stopset */ + +-#if __BOUNDED_POINTERS__ +- jmp L(1_0) /* pointer is correct for bounds check */ +-L(1_3): incl %eax /* adjust pointer for bounds check */ +-L(1_2): incl %eax /* ditto */ +-L(1_1): incl %eax /* ditto */ +-L(1_0): CHECK_BOUNDS_HIGH (%eax, DELIM(%esp), jbe) +-#else +-L(1_3):; L(1_2):; L(1_1): /* fall through */ +-#endif +- leal -4(%edx), %eax /* prepare loop */ ++L(1_1): leal -4(%edx), %eax /* prepare loop */ + + /* We use a neat trick for the following loop. Normally we would + have to test for two termination conditions +@@ -370,8 +340,6 @@ L(11): + movl SAVE(%esp), %ecx + #endif + movl %edx, SAVE_PTR +- CHECK_BOUNDS_HIGH (%edx, SAVE_PTR, jb) +- RETURN_BOUNDED_POINTER (SAVE_PTR) + + L(epilogue): + #if !defined USE_AS_STRTOK_R && defined PIC +@@ -379,7 +347,6 @@ L(epilogue): + cfi_adjust_cfa_offset (-4) + cfi_restore (ebx) + #endif +- LEAVE + RET_PTR + + L(returnNULL): +@@ -388,7 +355,6 @@ L(returnNULL): + movl SAVE(%esp), %ecx + #endif + movl %edx, SAVE_PTR +- RETURN_NULL_BOUNDED_POINTER + jmp L(epilogue) + + END (BP_SYM (FUNCTION)) +diff --git a/sysdeps/i386/sub_n.S b/sysdeps/i386/sub_n.S +index dbda4d4d4e7180f4..2a09256f9c71f93a 100644 +--- a/sysdeps/i386/sub_n.S ++++ b/sysdeps/i386/sub_n.S +@@ -31,7 +31,6 @@ + + .text + ENTRY (BP_SYM (__mpn_sub_n)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -44,13 +43,6 @@ ENTRY (BP_SYM (__mpn_sub_n)) + cfi_rel_offset (esi, 0) + movl S2(%esp),%edx + movl SIZE(%esp),%ecx +-#if __BOUNDED_POINTERS__ +- shll $2, %ecx /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%esi, S1(%esp), %ecx) +- CHECK_BOUNDS_BOTH_WIDE (%edx, S2(%esp), %ecx) +- shrl $2, %ecx +-#endif + movl %ecx,%eax + shrl $3,%ecx /* compute count for unrolled loop */ + negl %eax +@@ -118,6 +110,5 @@ L(oop): movl (%esi),%eax + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_sub_n)) +diff --git a/sysdeps/i386/submul_1.S b/sysdeps/i386/submul_1.S +index beb0eb5f07f31a06..c7054e0f6bd48a5e 100644 +--- a/sysdeps/i386/submul_1.S ++++ b/sysdeps/i386/submul_1.S +@@ -35,7 +35,6 @@ + + .text + ENTRY (BP_SYM (__mpn_submul_1)) +- ENTER + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -54,12 +53,6 @@ ENTRY (BP_SYM (__mpn_submul_1)) + movl S1(%esp), %s1_ptr + movl SIZE(%esp), %sizeP + movl S2LIMB(%esp), %s2_limb +-#if __BOUNDED_POINTERS__ +- shll $2, %sizeP /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (%res_ptr, RES(%esp), %sizeP) +- CHECK_BOUNDS_BOTH_WIDE (%s1_ptr, S1(%esp), %sizeP) +- shrl $2, %sizeP +-#endif + leal (%res_ptr,%sizeP,4), %res_ptr + leal (%s1_ptr,%sizeP,4), %s1_ptr + negl %sizeP +@@ -91,6 +84,5 @@ L(oop): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- LEAVE + ret + END (BP_SYM (__mpn_submul_1)) diff --git a/SOURCES/glibc-rh1505492-bounded-15.patch b/SOURCES/glibc-rh1505492-bounded-15.patch new file mode 100644 index 0000000..0f47ca9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-15.patch @@ -0,0 +1,2287 @@ +commit 2366713d874342c94f9362b0d6b2461e1c68dbc3 +Author: Joseph Myers +Date: Thu Feb 21 22:21:52 2013 +0000 + + Remove remaining bounded-pointers support from i386 .S files. + +Conflicts: + sysdeps/i386/bp-asm.h + +Copyright header change; file removed manually. + +diff --git a/sysdeps/i386/add_n.S b/sysdeps/i386/add_n.S +index df3ea2362c76247a..55e454f2091c67eb 100644 +--- a/sysdeps/i386/add_n.S ++++ b/sysdeps/i386/add_n.S +@@ -19,17 +19,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define S2 S1+PTR_SIZE +-#define SIZE S2+PTR_SIZE ++#define S1 RES+4 ++#define S2 S1+4 ++#define SIZE S2+4 + + .text +-ENTRY (BP_SYM (__mpn_add_n)) ++ENTRY (__mpn_add_n) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -110,4 +108,4 @@ L(oop): movl (%esi),%eax + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_add_n)) ++END (__mpn_add_n) +diff --git a/sysdeps/i386/addmul_1.S b/sysdeps/i386/addmul_1.S +index 006c08a92de4e303..286781efdb37d304 100644 +--- a/sysdeps/i386/addmul_1.S ++++ b/sysdeps/i386/addmul_1.S +@@ -19,13 +19,11 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_addmul_1)) ++ENTRY (__mpn_addmul_1) + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -85,4 +83,4 @@ L(oop): + cfi_restore (res_ptr) + + ret +-END (BP_SYM (__mpn_addmul_1)) ++END (__mpn_addmul_1) +diff --git a/sysdeps/i386/bp-asm.h b/sysdeps/i386/bp-asm.h +deleted file mode 100644 +index 75e1a007cb3eca71..0000000000000000 +--- a/sysdeps/i386/bp-asm.h ++++ /dev/null +@@ -1,60 +0,0 @@ +-/* Bounded-pointer definitions for x86 assembler. +- Copyright (C) 2000 Free Software Foundation, Inc. +- Contributed by Greg McGary +- This file is part of the GNU C Library. Its master source is NOT part of +- the C library, however. The master source lives in the GNU MP Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#ifndef _bp_asm_h_ +-# define _bp_asm_h_ 1 +- +-# if __ASSEMBLER__ +- +-# if __BOUNDED_POINTERS__ +- +-/* Bounded pointers occupy three words. */ +-# define PTR_SIZE 12 +-/* Bounded pointer return values are passed back through a hidden +- argument that points to caller-allocate space. The hidden arg +- occupies one word on the stack. */ +-# define RTN_SIZE 4 +-/* Although the caller pushes the hidden arg, the callee is +- responsible for popping it. */ +-# define RET_PTR ret $RTN_SIZE +-/* Stack space overhead of procedure-call linkage: return address and +- frame pointer. */ +-# define LINKAGE 8 +-/* Stack offset of return address after calling ENTER. */ +-# define PCOFF 4 +- +-# else /* !__BOUNDED_POINTERS__ */ +- +-/* Unbounded pointers occupy one word. */ +-# define PTR_SIZE 4 +-/* Unbounded pointer return values are passed back in the register %eax. */ +-# define RTN_SIZE 0 +-/* Use simple return instruction for unbounded pointer values. */ +-# define RET_PTR ret +-/* Stack space overhead of procedure-call linkage: return address only. */ +-# define LINKAGE 4 +-/* Stack offset of return address after calling ENTER. */ +-# define PCOFF 0 +- +-# endif /* !__BOUNDED_POINTERS__ */ +- +-# endif /* __ASSEMBLER__ */ +- +-#endif /* _bp_asm_h_ */ +diff --git a/sysdeps/i386/bsd-_setjmp.S b/sysdeps/i386/bsd-_setjmp.S +index fe0224145643ea0b..3a57995fa9811274 100644 +--- a/sysdeps/i386/bsd-_setjmp.S ++++ b/sysdeps/i386/bsd-_setjmp.S +@@ -22,15 +22,13 @@ + + #include + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + #include + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define JMPBUF PARMS +-#define SIGMSK JMPBUF+PTR_SIZE ++#define SIGMSK JMPBUF+4 + +-ENTRY (BP_SYM (_setjmp)) ++ENTRY (_setjmp) + + xorl %eax, %eax + movl JMPBUF(%esp), %edx +@@ -44,7 +42,7 @@ ENTRY (BP_SYM (_setjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_SP*4)(%edx) +- movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ ++ movl 0(%esp), %ecx /* Save PC we are returning to now. */ + LIBC_PROBE (setjmp, 3, 4@%edx, -4@$0, 4@%ecx) + #ifdef PTR_MANGLE + PTR_MANGLE (%ecx) +@@ -54,5 +52,5 @@ ENTRY (BP_SYM (_setjmp)) + + movl %eax, JB_SIZE(%edx) /* No signal mask set. */ + ret +-END (BP_SYM (_setjmp)) ++END (_setjmp) + libc_hidden_def (_setjmp) +diff --git a/sysdeps/i386/bsd-setjmp.S b/sysdeps/i386/bsd-setjmp.S +index 25470f3904a8ca73..9f2eb9d99c0807d2 100644 +--- a/sysdeps/i386/bsd-setjmp.S ++++ b/sysdeps/i386/bsd-setjmp.S +@@ -22,15 +22,13 @@ + + #include + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + #include + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define JMPBUF PARMS +-#define SIGMSK JMPBUF+PTR_SIZE ++#define SIGMSK JMPBUF+4 + +-ENTRY (BP_SYM (setjmp)) ++ENTRY (setjmp) + /* Note that we have to use a non-exported symbol in the next + jump since otherwise gas will emit it as a jump through the + PLT which is what we cannot use here. */ +@@ -46,7 +44,7 @@ ENTRY (BP_SYM (setjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_SP*4)(%eax) +- movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ ++ movl 0(%esp), %ecx /* Save PC we are returning to now. */ + LIBC_PROBE (setjmp, 3, 4@%eax, -4@$1, 4@%ecx) + #ifdef PTR_MANGLE + PTR_MANGLE (%ecx) +@@ -59,10 +57,10 @@ ENTRY (BP_SYM (setjmp)) + cfi_adjust_cfa_offset (4) + pushl 8(%esp) + cfi_adjust_cfa_offset (4) +- call BP_SYM (__sigjmp_save) ++ call __sigjmp_save + popl %ecx + cfi_adjust_cfa_offset (-4) + popl %edx + cfi_adjust_cfa_offset (-4) + ret +-END (BP_SYM (setjmp)) ++END (setjmp) +diff --git a/sysdeps/i386/fpu/s_frexp.S b/sysdeps/i386/fpu/s_frexp.S +index 6c5cd8fdfd9f825b..220eb3cb4bdedc0a 100644 +--- a/sysdeps/i386/fpu/s_frexp.S ++++ b/sysdeps/i386/fpu/s_frexp.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + + .section .rodata + +@@ -34,13 +32,13 @@ two54: .byte 0, 0, 0, 0, 0, 0, 0x50, 0x43 + #define MO(op) op + #endif + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define VAL0 PARMS + #define VAL1 VAL0+4 + #define EXPP VAL1+4 + + .text +-ENTRY (BP_SYM (__frexp)) ++ENTRY (__frexp) + + movl VAL0(%esp), %ecx + movl VAL1(%esp), %eax +@@ -81,5 +79,5 @@ ENTRY (BP_SYM (__frexp)) + movl %ecx, (%eax) + + ret +-END (BP_SYM (__frexp)) +-weak_alias (BP_SYM (__frexp), BP_SYM (frexp)) ++END (__frexp) ++weak_alias (__frexp, frexp) +diff --git a/sysdeps/i386/fpu/s_frexpf.S b/sysdeps/i386/fpu/s_frexpf.S +index 4fe2181873de7302..1515ec3d5d08fe5e 100644 +--- a/sysdeps/i386/fpu/s_frexpf.S ++++ b/sysdeps/i386/fpu/s_frexpf.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + + .section .rodata + +@@ -34,12 +32,12 @@ two25: .byte 0, 0, 0, 0x4c + #define MO(op) op + #endif + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define VAL PARMS + #define EXPP VAL+4 + + .text +-ENTRY (BP_SYM (__frexpf)) ++ENTRY (__frexpf) + + movl VAL(%esp), %eax + xorl %ecx, %ecx +@@ -78,5 +76,5 @@ ENTRY (BP_SYM (__frexpf)) + movl %ecx, (%eax) + + ret +-END (BP_SYM (__frexpf)) +-weak_alias (BP_SYM (__frexpf), BP_SYM (frexpf)) ++END (__frexpf) ++weak_alias (__frexpf, frexpf) +diff --git a/sysdeps/i386/fpu/s_frexpl.S b/sysdeps/i386/fpu/s_frexpl.S +index 54d5010185792bd9..bd8064ac46104921 100644 +--- a/sysdeps/i386/fpu/s_frexpl.S ++++ b/sysdeps/i386/fpu/s_frexpl.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + + .section .rodata + +@@ -34,14 +32,14 @@ two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 + #define MO(op) op + #endif + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define VAL0 PARMS + #define VAL1 VAL0+4 + #define VAL2 VAL1+4 + #define EXPP VAL2+4 + + .text +-ENTRY (BP_SYM (__frexpl)) ++ENTRY (__frexpl) + + movl VAL0(%esp), %ecx + movl VAL2(%esp), %eax +@@ -83,5 +81,5 @@ ENTRY (BP_SYM (__frexpl)) + movl %ecx, (%eax) + + ret +-END (BP_SYM (__frexpl)) +-weak_alias (BP_SYM (__frexpl), BP_SYM (frexpl)) ++END (__frexpl) ++weak_alias (__frexpl, frexpl) +diff --git a/sysdeps/i386/fpu/s_remquo.S b/sysdeps/i386/fpu/s_remquo.S +index e61ff5be7bc826df..341285db30448710 100644 +--- a/sysdeps/i386/fpu/s_remquo.S ++++ b/sysdeps/i386/fpu/s_remquo.S +@@ -5,16 +5,14 @@ + */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define DVDND PARMS + #define DVSOR DVDND+8 + #define QUOP DVSOR+8 + + .text +-ENTRY (BP_SYM (__remquo)) ++ENTRY (__remquo) + + fldl DVSOR(%esp) + fldl DVDND(%esp) +@@ -43,5 +41,5 @@ ENTRY (BP_SYM (__remquo)) + 1: movl %eax, (%ecx) + + ret +-END (BP_SYM (__remquo)) +-weak_alias (BP_SYM (__remquo), BP_SYM (remquo)) ++END (__remquo) ++weak_alias (__remquo, remquo) +diff --git a/sysdeps/i386/fpu/s_remquof.S b/sysdeps/i386/fpu/s_remquof.S +index c2b351b859c28e7c..62063f068f59220a 100644 +--- a/sysdeps/i386/fpu/s_remquof.S ++++ b/sysdeps/i386/fpu/s_remquof.S +@@ -5,16 +5,14 @@ + */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define DVDND PARMS + #define DVSOR DVDND+4 + #define QUOP DVSOR+4 + + .text +-ENTRY (BP_SYM (__remquof)) ++ENTRY (__remquof) + + flds DVSOR(%esp) + flds DVDND(%esp) +@@ -43,5 +41,5 @@ ENTRY (BP_SYM (__remquof)) + 1: movl %eax, (%ecx) + + ret +-END (BP_SYM (__remquof)) +-weak_alias (BP_SYM (__remquof), BP_SYM (remquof)) ++END (__remquof) ++weak_alias (__remquof, remquof) +diff --git a/sysdeps/i386/fpu/s_remquol.S b/sysdeps/i386/fpu/s_remquol.S +index 2cbe43589609a2b8..f3d84fc7c2c22d73 100644 +--- a/sysdeps/i386/fpu/s_remquol.S ++++ b/sysdeps/i386/fpu/s_remquol.S +@@ -5,16 +5,14 @@ + */ + + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define DVDND PARMS + #define DVSOR DVDND+12 + #define QUOP DVSOR+12 + + .text +-ENTRY (BP_SYM (__remquol)) ++ENTRY (__remquol) + + fldt DVSOR(%esp) + fldt DVDND(%esp) +@@ -43,5 +41,5 @@ ENTRY (BP_SYM (__remquol)) + 1: movl %eax, (%ecx) + + ret +-END (BP_SYM (__remquol)) +-weak_alias (BP_SYM (__remquol), BP_SYM (remquol)) ++END (__remquol) ++weak_alias (__remquol, remquol) +diff --git a/sysdeps/i386/i486/strcat.S b/sysdeps/i386/i486/strcat.S +index b3212c8beb948411..d772b108d1c45e2d 100644 +--- a/sysdeps/i386/i486/strcat.S ++++ b/sysdeps/i386/i486/strcat.S +@@ -21,16 +21,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 + + .text +-ENTRY (BP_SYM (strcat)) ++ENTRY (strcat) + + pushl %edi /* Save callee-safe register. */ + cfi_adjust_cfa_offset (4) +@@ -257,12 +255,11 @@ L(9): movb %al, (%ecx,%edx) /* store first byte of last word */ + + movb %ah, 3(%ecx,%edx) /* store fourth byte of last word */ + +-L(8): /* GKM FIXME: check high bounds */ +- movl DEST(%esp), %eax /* start address of destination is result */ ++L(8): movl DEST(%esp), %eax /* start address of destination is result */ + popl %edi /* restore saved register */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (strcat)) ++ ret ++END (strcat) + libc_hidden_builtin_def (strcat) +diff --git a/sysdeps/i386/i486/strlen.S b/sysdeps/i386/i486/strlen.S +index 76c31098e84a1c93..371e202902603639 100644 +--- a/sysdeps/i386/i486/strlen.S ++++ b/sysdeps/i386/i486/strlen.S +@@ -20,14 +20,12 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define STR PARMS + + .text +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + + movl STR(%esp), %ecx + movl %ecx, %eax /* duplicate it */ +@@ -130,5 +128,5 @@ L(3): testb %cl, %cl /* is first byte NUL? */ + L(2): subl STR(%esp), %eax /* compute difference to string start */ + + ret +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/i386/i586/add_n.S b/sysdeps/i386/i586/add_n.S +index a2b502d0d21bf9f5..e3f439412f7d4061 100644 +--- a/sysdeps/i386/i586/add_n.S ++++ b/sysdeps/i386/i586/add_n.S +@@ -19,17 +19,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define S2 S1+PTR_SIZE +-#define SIZE S2+PTR_SIZE ++#define S1 RES+4 ++#define S2 S1+4 ++#define SIZE S2+4 + + .text +-ENTRY (BP_SYM (__mpn_add_n)) ++ENTRY (__mpn_add_n) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -142,4 +140,4 @@ L(end2): + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_add_n)) ++END (__mpn_add_n) +diff --git a/sysdeps/i386/i586/addmul_1.S b/sysdeps/i386/i586/addmul_1.S +index a9d0b08b5e8072ab..333951f8e5d6d3ec 100644 +--- a/sysdeps/i386/i586/addmul_1.S ++++ b/sysdeps/i386/i586/addmul_1.S +@@ -19,13 +19,11 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_addmul_1)) ++ENTRY (__mpn_addmul_1) + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -93,4 +91,4 @@ L(oop): adcl $0, %ebp + + ret + #undef size +-END (BP_SYM (__mpn_addmul_1)) ++END (__mpn_addmul_1) +diff --git a/sysdeps/i386/i586/bzero.S b/sysdeps/i386/i586/bzero.S +index 220aa47c3f9c6d5c..84d2f709c16d0b46 100644 +--- a/sysdeps/i386/i586/bzero.S ++++ b/sysdeps/i386/i586/bzero.S +@@ -1,3 +1,3 @@ + #define memset __bzero + #include +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) +diff --git a/sysdeps/i386/i586/lshift.S b/sysdeps/i386/i586/lshift.S +index 23c5002d69f50f8f..2f25ed1d854e90c2 100644 +--- a/sysdeps/i386/i586/lshift.S ++++ b/sysdeps/i386/i586/lshift.S +@@ -18,17 +18,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S RES+PTR_SIZE +-#define SIZE S+PTR_SIZE ++#define S RES+4 ++#define SIZE S+4 + #define CNT SIZE+4 + + .text +-ENTRY (BP_SYM (__mpn_lshift)) ++ENTRY (__mpn_lshift) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -254,4 +252,4 @@ L(L1): movl %edx,(%edi) /* store last limb */ + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_lshift)) ++END (__mpn_lshift) +diff --git a/sysdeps/i386/i586/memcpy.S b/sysdeps/i386/i586/memcpy.S +index 07f5432d761c453d..baa8d11c44ccfd67 100644 +--- a/sysdeps/i386/i586/memcpy.S ++++ b/sysdeps/i386/i586/memcpy.S +@@ -19,19 +19,17 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* BEWARE: `#ifdef memcpy' means that memcpy is redefined as `mempcpy', + and the return value is the byte after the last one copied in + the destination. */ + #define MEMPCPY_P (defined memcpy) + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE +-#define LEN SRC+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 ++#define LEN SRC+4 + + .text + #if defined PIC && IS_IN (libc) +@@ -41,7 +39,7 @@ ENTRY (__memcpy_chk) + jb HIDDEN_JUMPTARGET (__chk_fail) + END (__memcpy_chk) + #endif +-ENTRY (BP_SYM (memcpy)) ++ENTRY (memcpy) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -124,8 +122,8 @@ L(1): rep; movsb + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (memcpy)) ++ ret ++END (memcpy) + #if !MEMPCPY_P + libc_hidden_builtin_def (memcpy) + #endif +diff --git a/sysdeps/i386/i586/mempcpy.S b/sysdeps/i386/i586/mempcpy.S +index f492be7ca0722839..afc112d9d7986697 100644 +--- a/sysdeps/i386/i586/mempcpy.S ++++ b/sysdeps/i386/i586/mempcpy.S +@@ -2,6 +2,6 @@ + #define __memcpy_chk __mempcpy_chk + #include + +-libc_hidden_def (BP_SYM (__mempcpy)) +-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy)) ++libc_hidden_def (__mempcpy) ++weak_alias (__mempcpy, mempcpy) + libc_hidden_builtin_def (mempcpy) +diff --git a/sysdeps/i386/i586/memset.S b/sysdeps/i386/i586/memset.S +index 8234b99d734b24b0..c1b08e0f7357cc00 100644 +--- a/sysdeps/i386/i586/memset.S ++++ b/sysdeps/i386/i586/memset.S +@@ -20,19 +20,17 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* BEWARE: `#ifdef memset' means that memset is redefined as `bzero' */ + #define BZERO_P (defined memset) + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE ++#define DEST RTN + #if BZERO_P +-# define LEN DEST+PTR_SIZE ++# define LEN DEST+4 + #else +-# define CHR DEST+PTR_SIZE ++# define CHR DEST+4 + # define LEN CHR+4 + #endif + +@@ -44,7 +42,7 @@ ENTRY (__memset_chk) + jb HIDDEN_JUMPTARGET (__chk_fail) + END (__memset_chk) + #endif +-ENTRY (BP_SYM (memset)) ++ENTRY (memset) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -117,7 +115,7 @@ L(2): shrl $2, %ecx /* convert byte count to longword count */ + #if BZERO_P + ret + #else +- RET_PTR ++ ret + #endif +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/i386/i586/mul_1.S b/sysdeps/i386/i586/mul_1.S +index c694afb42141b16f..f5f119c9a9125ba6 100644 +--- a/sysdeps/i386/i586/mul_1.S ++++ b/sysdeps/i386/i586/mul_1.S +@@ -19,13 +19,11 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_mul_1)) ++ENTRY (__mpn_mul_1) + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -89,4 +87,4 @@ L(oop): adcl $0, %ebp + + ret + #undef size +-END (BP_SYM (__mpn_mul_1)) ++END (__mpn_mul_1) +diff --git a/sysdeps/i386/i586/rshift.S b/sysdeps/i386/i586/rshift.S +index ce3710391193dbac..2625cf9e04122d45 100644 +--- a/sysdeps/i386/i586/rshift.S ++++ b/sysdeps/i386/i586/rshift.S +@@ -18,17 +18,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S RES+PTR_SIZE +-#define SIZE S+PTR_SIZE ++#define S RES+4 ++#define SIZE S+4 + #define CNT SIZE+4 + + .text +-ENTRY (BP_SYM (__mpn_rshift)) ++ENTRY (__mpn_rshift) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -254,4 +252,4 @@ L(L1): movl %edx,(%edi) /* store last limb */ + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_rshift)) ++END (__mpn_rshift) +diff --git a/sysdeps/i386/i586/strchr.S b/sysdeps/i386/i586/strchr.S +index 35259fb085840180..3821331851bf843d 100644 +--- a/sysdeps/i386/i586/strchr.S ++++ b/sysdeps/i386/i586/strchr.S +@@ -20,8 +20,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* This version is especially optimized for the i586 (and following?) + processors. This is mainly done by using the two pipelines. The +@@ -36,13 +34,13 @@ + /* The magic value which is used throughout in the whole code. */ + #define magic 0xfefefeff + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + + .text +-ENTRY (BP_SYM (strchr)) ++ENTRY (strchr) + + pushl %edi /* Save callee-safe registers. */ + cfi_adjust_cfa_offset (-4) +@@ -301,7 +299,7 @@ L(out): popl %ebp /* restore saved registers */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR ++ ret + + cfi_adjust_cfa_offset (16) + cfi_rel_offset (edi, 12) +@@ -343,8 +341,8 @@ L(4): subl $4, %eax /* adjust pointer */ + + L(3): xorl %eax, %eax + jmp L(out) +-END (BP_SYM (strchr)) ++END (strchr) + + #undef index +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/i386/i586/strcpy.S b/sysdeps/i386/i586/strcpy.S +index edd21f135d46a732..56659182a784bb44 100644 +--- a/sysdeps/i386/i586/strcpy.S ++++ b/sysdeps/i386/i586/strcpy.S +@@ -19,13 +19,11 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+12 /* space for 3 saved regs */ ++#define PARMS 4+12 /* space for 3 saved regs */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 + + #ifndef USE_AS_STPCPY + # define STRCPY strcpy +@@ -34,7 +32,7 @@ + #define magic 0xfefefeff + + .text +-ENTRY (BP_SYM (STRCPY)) ++ENTRY (STRCPY) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -149,7 +147,6 @@ L(4): movb %dl, (%edi) + L(end): movb %ah, (%edi) + + L(end2): +- /* GKM FIXME: check high bounds */ + #ifdef USE_AS_STPCPY + movl %edi, %eax + #else +@@ -165,8 +162,8 @@ L(end2): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (STRCPY)) ++ ret ++END (STRCPY) + #ifndef USE_AS_STPCPY + libc_hidden_builtin_def (strcpy) + #endif +diff --git a/sysdeps/i386/i586/strlen.S b/sysdeps/i386/i586/strlen.S +index 323cb950790174e6..6b5fee3acf360bc4 100644 +--- a/sysdeps/i386/i586/strlen.S ++++ b/sysdeps/i386/i586/strlen.S +@@ -20,8 +20,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* This version is especially optimized for the i586 (and following?) + processors. This is mainly done by using the two pipelines. The +@@ -36,11 +34,11 @@ + /* The magic value which is used throughout in the whole code. */ + #define magic 0xfefefeff + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define STR PARMS + + .text +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + + movl STR(%esp), %eax + movl $3, %edx /* load mask (= 3) */ +@@ -180,5 +178,5 @@ L(2): subl STR(%esp), %eax /* now compute the length as difference + between start and terminating NUL + character */ + ret +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/i386/i586/sub_n.S b/sysdeps/i386/i586/sub_n.S +index 07bddca9a8ce7fe8..68442a688ac796a3 100644 +--- a/sysdeps/i386/i586/sub_n.S ++++ b/sysdeps/i386/i586/sub_n.S +@@ -19,17 +19,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define S2 S1+PTR_SIZE +-#define SIZE S2+PTR_SIZE ++#define S1 RES+4 ++#define S2 S1+4 ++#define SIZE S2+4 + + .text +-ENTRY (BP_SYM (__mpn_sub_n)) ++ENTRY (__mpn_sub_n) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -142,4 +140,4 @@ L(end2): + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_sub_n)) ++END (__mpn_sub_n) +diff --git a/sysdeps/i386/i586/submul_1.S b/sysdeps/i386/i586/submul_1.S +index a028d7089798ceb7..b553d25804bc5091 100644 +--- a/sysdeps/i386/i586/submul_1.S ++++ b/sysdeps/i386/i586/submul_1.S +@@ -19,13 +19,11 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_submul_1)) ++ENTRY (__mpn_submul_1) + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -93,4 +91,4 @@ L(oop): adcl $0, %ebp + + ret + #undef size +-END (BP_SYM (__mpn_submul_1)) ++END (__mpn_submul_1) +diff --git a/sysdeps/i386/i686/add_n.S b/sysdeps/i386/i686/add_n.S +index f645a21c1cad52ab..2ccf0215549cda2b 100644 +--- a/sysdeps/i386/i686/add_n.S ++++ b/sysdeps/i386/i686/add_n.S +@@ -19,21 +19,19 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define S2 S1+PTR_SIZE +-#define SIZE S2+PTR_SIZE ++#define S1 RES+4 ++#define S2 S1+4 ++#define SIZE S2+4 + + .text + #ifdef PIC + L(1): addl (%esp), %eax + ret + #endif +-ENTRY (BP_SYM (__mpn_add_n)) ++ENTRY (__mpn_add_n) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -109,4 +107,4 @@ L(oop): movl (%esi),%eax + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_add_n)) ++END (__mpn_add_n) +diff --git a/sysdeps/i386/i686/bzero.S b/sysdeps/i386/i686/bzero.S +index c1e4a6d50e5e8d99..34b0faa91b964303 100644 +--- a/sysdeps/i386/i686/bzero.S ++++ b/sysdeps/i386/i686/bzero.S +@@ -1,3 +1,3 @@ + #define memset __bzero + #include +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) +diff --git a/sysdeps/i386/i686/memcmp.S b/sysdeps/i386/i686/memcmp.S +index f45a22400242cb02..77cfb42b821fee78 100644 +--- a/sysdeps/i386/i686/memcmp.S ++++ b/sysdeps/i386/i686/memcmp.S +@@ -18,13 +18,11 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* Preserve EBX. */ ++#define PARMS 4+4 /* Preserve EBX. */ + #define BLK1 PARMS +-#define BLK2 BLK1+PTR_SIZE +-#define LEN BLK2+PTR_SIZE ++#define BLK2 BLK1+4 ++#define LEN BLK2+4 + #define ENTRANCE pushl %ebx; cfi_adjust_cfa_offset (4); \ + cfi_rel_offset (ebx, 0) + #define RETURN popl %ebx; cfi_adjust_cfa_offset (-4); \ +@@ -44,7 +42,7 @@ + + .text + ALIGN (4) +-ENTRY (BP_SYM (memcmp)) ++ENTRY (memcmp) + ENTRANCE + + movl BLK1(%esp), %eax +@@ -366,7 +364,7 @@ L(set): + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + RETURN +-END (BP_SYM (memcmp)) ++END (memcmp) + + .section .rodata + ALIGN (2) +@@ -406,5 +404,5 @@ L(table_32bytes) : + + + #undef bcmp +-weak_alias (BP_SYM (memcmp), BP_SYM (bcmp)) +-libc_hidden_builtin_def (BP_SYM (memcmp)) ++weak_alias (memcmp, bcmp) ++libc_hidden_builtin_def (memcmp) +diff --git a/sysdeps/i386/i686/memcpy.S b/sysdeps/i386/i686/memcpy.S +index 68f7e40031b1b4db..fae614e682c50995 100644 +--- a/sysdeps/i386/i686/memcpy.S ++++ b/sysdeps/i386/i686/memcpy.S +@@ -20,14 +20,12 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE +-#define LEN SRC+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 ++#define LEN SRC+4 + + .text + #if defined PIC && IS_IN (libc) +@@ -37,7 +35,7 @@ ENTRY_CHK (__memcpy_chk) + jb HIDDEN_JUMPTARGET (__chk_fail) + END_CHK (__memcpy_chk) + #endif +-ENTRY (BP_SYM (memcpy)) ++ENTRY (memcpy) + + movl %edi, %eax + movl DEST(%esp), %edi +@@ -81,7 +79,7 @@ ENTRY (BP_SYM (memcpy)) + movl %edx, %esi + movl DEST(%esp), %eax + +- RET_PTR ++ ret + + /* When we come here the pointers do not have the same + alignment or the length is too short. No need to optimize for +@@ -96,5 +94,5 @@ ENTRY (BP_SYM (memcpy)) + 2: rep + movsl + jmp .Lend +-END (BP_SYM (memcpy)) ++END (memcpy) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/i386/i686/memmove.S b/sysdeps/i386/i686/memmove.S +index 683f45fc44fc4f4f..50cf1cf222b922e3 100644 +--- a/sysdeps/i386/i686/memmove.S ++++ b/sysdeps/i386/i686/memmove.S +@@ -20,22 +20,20 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* one spilled register */ ++#define PARMS 4+4 /* one spilled register */ + #define RTN PARMS + + .text + + #ifdef USE_AS_BCOPY +-# define SRC RTN+RTN_SIZE +-# define DEST SRC+PTR_SIZE +-# define LEN DEST+PTR_SIZE ++# define SRC RTN ++# define DEST SRC+4 ++# define LEN DEST+4 + #else +-# define DEST RTN+RTN_SIZE +-# define SRC DEST+PTR_SIZE +-# define LEN SRC+PTR_SIZE ++# define DEST RTN ++# define SRC DEST+4 ++# define LEN SRC+4 + + # if defined PIC && IS_IN (libc) + ENTRY_CHK (__memmove_chk) +@@ -46,7 +44,7 @@ END_CHK (__memmove_chk) + # endif + #endif + +-ENTRY (BP_SYM (memmove)) ++ENTRY (memmove) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -82,7 +80,7 @@ ENTRY (BP_SYM (memmove)) + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR ++ ret + + cfi_adjust_cfa_offset (4) + cfi_rel_offset (edi, 0) +@@ -115,8 +113,8 @@ ENTRY (BP_SYM (memmove)) + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (memmove)) ++ ret ++END (memmove) + #ifndef USE_AS_BCOPY + libc_hidden_builtin_def (memmove) + #endif +diff --git a/sysdeps/i386/i686/mempcpy.S b/sysdeps/i386/i686/mempcpy.S +index facff870e3f8f9de..c4b9d9dce361d0f0 100644 +--- a/sysdeps/i386/i686/mempcpy.S ++++ b/sysdeps/i386/i686/mempcpy.S +@@ -20,14 +20,12 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE +-#define LEN SRC+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 ++#define LEN SRC+4 + + .text + #if defined PIC && IS_IN (libc) +@@ -37,7 +35,7 @@ ENTRY_CHK (__mempcpy_chk) + jb HIDDEN_JUMPTARGET (__chk_fail) + END_CHK (__mempcpy_chk) + #endif +-ENTRY (BP_SYM (__mempcpy)) ++ENTRY (__mempcpy) + + movl LEN(%esp), %ecx + movl %edi, %eax +@@ -60,8 +58,8 @@ ENTRY (BP_SYM (__mempcpy)) + movl %edx, %esi + cfi_restore (esi) + +- RET_PTR +-END (BP_SYM (__mempcpy)) +-libc_hidden_def (BP_SYM (__mempcpy)) +-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy)) ++ ret ++END (__mempcpy) ++libc_hidden_def (__mempcpy) ++weak_alias (__mempcpy, mempcpy) + libc_hidden_builtin_def (mempcpy) +diff --git a/sysdeps/i386/i686/memset.S b/sysdeps/i386/i686/memset.S +index 7db25497117b6258..b9cb50d1bbf12f3d 100644 +--- a/sysdeps/i386/i686/memset.S ++++ b/sysdeps/i386/i686/memset.S +@@ -20,20 +20,18 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* BEWARE: `#ifdef memset' means that memset is redefined as `bzero' */ + #define BZERO_P (defined memset) + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #if BZERO_P + # define DEST PARMS +-# define LEN DEST+PTR_SIZE ++# define LEN DEST+4 + #else + # define RTN PARMS +-# define DEST RTN+RTN_SIZE +-# define CHR DEST+PTR_SIZE ++# define DEST RTN ++# define CHR DEST+4 + # define LEN CHR+4 + #endif + +@@ -45,7 +43,7 @@ ENTRY_CHK (__memset_chk) + jb HIDDEN_JUMPTARGET (__chk_fail) + END_CHK (__memset_chk) + #endif +-ENTRY (BP_SYM (memset)) ++ENTRY (memset) + + cld + pushl %edi +@@ -96,9 +94,9 @@ ENTRY (BP_SYM (memset)) + #if BZERO_P + ret + #else +- RET_PTR ++ ret + #endif +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) + + #if defined PIC && IS_IN (libc) && !BZERO_P +diff --git a/sysdeps/i386/i686/strcmp.S b/sysdeps/i386/i686/strcmp.S +index 0423aac297358c77..70c356e721c6c8b8 100644 +--- a/sysdeps/i386/i686/strcmp.S ++++ b/sysdeps/i386/i686/strcmp.S +@@ -19,15 +19,13 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define STR1 PARMS +-#define STR2 STR1+PTR_SIZE ++#define STR2 STR1+4 + + .text +-ENTRY (BP_SYM (strcmp)) ++ENTRY (strcmp) + + movl STR1(%esp), %ecx + movl STR2(%esp), %edx +@@ -50,5 +48,5 @@ L(neq): movl $1, %eax + cmovbl %ecx, %eax + + ret +-END (BP_SYM (strcmp)) ++END (strcmp) + libc_hidden_builtin_def (strcmp) +diff --git a/sysdeps/i386/i686/strtok.S b/sysdeps/i386/i686/strtok.S +index 372352e32a84f81d..cc5df557113b44c1 100644 +--- a/sysdeps/i386/i686/strtok.S ++++ b/sysdeps/i386/i686/strtok.S +@@ -20,8 +20,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* This file can be used for three variants of the strtok function: + +@@ -58,15 +56,15 @@ save_ptr: + #endif + + #if !defined USE_AS_STRTOK_R && defined PIC +-# define PARMS LINKAGE+256+4 /* space for table and saved PIC register */ ++# define PARMS 4+256+4 /* space for table and saved PIC register */ + #else +-# define PARMS LINKAGE+256 /* space for table */ ++# define PARMS 4+256 /* space for table */ + #endif + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define DELIM STR+PTR_SIZE ++#define STR RTN ++#define DELIM STR+4 + #ifdef USE_AS_STRTOK_R +-# define SAVE DELIM+PTR_SIZE ++# define SAVE DELIM+4 + #endif + + .text +@@ -76,7 +74,7 @@ save_ptr: + ret + #endif + +-ENTRY (BP_SYM (FUNCTION)) ++ENTRY (FUNCTION) + + #if !defined USE_AS_STRTOK_R && defined PIC + pushl %ebx /* Save PIC register. */ +@@ -233,7 +231,7 @@ L(epilogue): + cfi_adjust_cfa_offset (-4) + cfi_restore (ebx) + #endif +- RET_PTR ++ ret + + L(returnNULL): + xorl %eax, %eax +@@ -243,4 +241,4 @@ L(returnNULL): + movl %edx, SAVE_PTR + jmp L(epilogue) + +-END (BP_SYM (FUNCTION)) ++END (FUNCTION) +diff --git a/sysdeps/i386/i686/strtok_r.S b/sysdeps/i386/i686/strtok_r.S +index 1c24ca85f5f084d7..353e076ba7bfe5d7 100644 +--- a/sysdeps/i386/i686/strtok_r.S ++++ b/sysdeps/i386/i686/strtok_r.S +@@ -1,5 +1,5 @@ + #define FUNCTION __strtok_r + #define USE_AS_STRTOK_R 1 + #include +-weak_alias (BP_SYM (__strtok_r), BP_SYM (strtok_r)) +-strong_alias (BP_SYM (__strtok_r), BP_SYM (__GI___strtok_r)) ++weak_alias (__strtok_r, strtok_r) ++strong_alias (__strtok_r, __GI___strtok_r) +diff --git a/sysdeps/i386/lshift.S b/sysdeps/i386/lshift.S +index b40d4ddd3a0e7fd7..7f70a85d6836b816 100644 +--- a/sysdeps/i386/lshift.S ++++ b/sysdeps/i386/lshift.S +@@ -18,17 +18,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+12 /* space for 3 saved regs */ ++#define PARMS 4+12 /* space for 3 saved regs */ + #define RES PARMS +-#define S RES+PTR_SIZE +-#define SIZE S+PTR_SIZE ++#define S RES+4 ++#define SIZE S+4 + #define CNT SIZE+4 + + .text +-ENTRY (BP_SYM (__mpn_lshift)) ++ENTRY (__mpn_lshift) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -102,4 +100,4 @@ L(end): shll %cl,%ebx /* compute least significant limb */ + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_lshift)) ++END (__mpn_lshift) +diff --git a/sysdeps/i386/memchr.S b/sysdeps/i386/memchr.S +index 88651e527650b26b..c8ba5f0e9eb76d09 100644 +--- a/sysdeps/i386/memchr.S ++++ b/sysdeps/i386/memchr.S +@@ -28,17 +28,15 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + #define LEN CHR+4 + + .text +-ENTRY (BP_SYM (__memchr)) ++ENTRY (__memchr) + + /* Save callee-safe registers used in this function. */ + pushl %esi +@@ -317,8 +315,8 @@ L(9): popl %edi /* pop saved registers */ + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + +- RET_PTR +-END (BP_SYM (__memchr)) ++ ret ++END (__memchr) + +-weak_alias (BP_SYM (__memchr), BP_SYM (memchr)) ++weak_alias (__memchr, memchr) + libc_hidden_builtin_def (memchr) +diff --git a/sysdeps/i386/memcmp.S b/sysdeps/i386/memcmp.S +index 1d5535a29dd12b33..89512f0ed139f22e 100644 +--- a/sysdeps/i386/memcmp.S ++++ b/sysdeps/i386/memcmp.S +@@ -18,16 +18,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define BLK1 PARMS +-#define BLK2 BLK1+PTR_SIZE +-#define LEN BLK2+PTR_SIZE ++#define BLK2 BLK1+4 ++#define LEN BLK2+4 + + .text +-ENTRY (BP_SYM (memcmp)) ++ENTRY (memcmp) + + pushl %esi /* Save callee-safe registers. */ + cfi_adjust_cfa_offset (4) +@@ -68,8 +66,8 @@ L(1): popl %esi /* Restore registers. */ + cfi_restore (edi) + + ret +-END (BP_SYM (memcmp)) ++END (memcmp) + + #undef bcmp +-weak_alias (BP_SYM (memcmp), BP_SYM (bcmp)) +-libc_hidden_builtin_def (BP_SYM (memcmp)) ++weak_alias (memcmp, bcmp) ++libc_hidden_builtin_def (memcmp) +diff --git a/sysdeps/i386/mul_1.S b/sysdeps/i386/mul_1.S +index 71f8dceb188057d9..6ed3a3a5a4ade481 100644 +--- a/sysdeps/i386/mul_1.S ++++ b/sysdeps/i386/mul_1.S +@@ -19,13 +19,11 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_mul_1)) ++ENTRY (__mpn_mul_1) + + pushl %res_ptr + cfi_adjust_cfa_offset (4) +@@ -85,4 +83,4 @@ L(oop): + + ret + #undef size +-END (BP_SYM (__mpn_mul_1)) ++END (__mpn_mul_1) +diff --git a/sysdeps/i386/rawmemchr.S b/sysdeps/i386/rawmemchr.S +index 3ce497485e439c02..4988df295c212cd3 100644 +--- a/sysdeps/i386/rawmemchr.S ++++ b/sysdeps/i386/rawmemchr.S +@@ -28,16 +28,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + + .text +-ENTRY (BP_SYM (__rawmemchr)) ++ENTRY (__rawmemchr) + + /* Save callee-safe register used in this function. */ + pushl %edi +@@ -217,8 +215,8 @@ L(9): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (__rawmemchr)) ++ ret ++END (__rawmemchr) + +-libc_hidden_def (BP_SYM (__rawmemchr)) +-weak_alias (BP_SYM (__rawmemchr), BP_SYM (rawmemchr)) ++libc_hidden_def (__rawmemchr) ++weak_alias (__rawmemchr, rawmemchr) +diff --git a/sysdeps/i386/rshift.S b/sysdeps/i386/rshift.S +index 48f7c4f89dc408d3..eba15a2b7acf089d 100644 +--- a/sysdeps/i386/rshift.S ++++ b/sysdeps/i386/rshift.S +@@ -18,17 +18,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+12 /* space for 3 saved regs */ ++#define PARMS 4+12 /* space for 3 saved regs */ + #define RES PARMS +-#define S RES+PTR_SIZE +-#define SIZE S+PTR_SIZE ++#define S RES+4 ++#define SIZE S+4 + #define CNT SIZE+4 + + .text +-ENTRY (BP_SYM (__mpn_rshift)) ++ENTRY (__mpn_rshift) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -104,4 +102,4 @@ L(end): shrl %cl,%ebx /* compute most significant limb */ + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_rshift)) ++END (__mpn_rshift) +diff --git a/sysdeps/i386/setjmp.S b/sysdeps/i386/setjmp.S +index 8e7a4df25bd2ff8d..56e6631c489362fb 100644 +--- a/sysdeps/i386/setjmp.S ++++ b/sysdeps/i386/setjmp.S +@@ -19,15 +19,13 @@ + #include + #include + #include +-#include "bp-sym.h" +-#include "bp-asm.h" + #include + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define JMPBUF PARMS +-#define SIGMSK JMPBUF+PTR_SIZE ++#define SIGMSK JMPBUF+4 + +-ENTRY (BP_SYM (__sigsetjmp)) ++ENTRY (__sigsetjmp) + + movl JMPBUF(%esp), %eax + +@@ -40,7 +38,7 @@ ENTRY (BP_SYM (__sigsetjmp)) + PTR_MANGLE (%ecx) + #endif + movl %ecx, (JB_SP*4)(%eax) +- movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ ++ movl 0(%esp), %ecx /* Save PC we are returning to now. */ + LIBC_PROBE (setjmp, 3, 4@%eax, -4@SIGMSK(%esp), 4@%ecx) + #ifdef PTR_MANGLE + PTR_MANGLE (%ecx) +@@ -56,4 +54,4 @@ ENTRY (BP_SYM (__sigsetjmp)) + /* Make a tail call to __sigjmp_save; it takes the same args. */ + jmp __sigjmp_save + #endif +-END (BP_SYM (__sigsetjmp)) ++END (__sigsetjmp) +diff --git a/sysdeps/i386/start.S b/sysdeps/i386/start.S +index 990f3715d59fd6ea..4afb95205181e3f2 100644 +--- a/sysdeps/i386/start.S ++++ b/sysdeps/i386/start.S +@@ -52,8 +52,6 @@ + NULL + */ + +-#include "bp-sym.h" +- + .text + .globl _start + .type _start,@function +@@ -97,11 +95,11 @@ _start: + pushl %ecx /* Push second argument: argv. */ + pushl %esi /* Push first argument: argc. */ + +- pushl BP_SYM (main)@GOT(%ebx) ++ pushl main@GOT(%ebx) + + /* Call the user's main function, and exit with its value. + But let the libc call main. */ +- call BP_SYM (__libc_start_main)@PLT ++ call __libc_start_main@PLT + #else + /* Push address of our own entry points to .fini and .init. */ + pushl $__libc_csu_fini +@@ -110,11 +108,11 @@ _start: + pushl %ecx /* Push second argument: argv. */ + pushl %esi /* Push first argument: argc. */ + +- pushl $BP_SYM (main) ++ pushl $main + + /* Call the user's main function, and exit with its value. + But let the libc call main. */ +- call BP_SYM (__libc_start_main) ++ call __libc_start_main + #endif + + hlt /* Crash if somehow `exit' does return. */ +diff --git a/sysdeps/i386/stpcpy.S b/sysdeps/i386/stpcpy.S +index 3a01be3174ef0863..14573416254865c1 100644 +--- a/sysdeps/i386/stpcpy.S ++++ b/sysdeps/i386/stpcpy.S +@@ -24,16 +24,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 + + .text +-ENTRY (BP_SYM (__stpcpy)) ++ENTRY (__stpcpy) + + movl DEST(%esp), %eax + movl SRC(%esp), %ecx +@@ -83,9 +81,9 @@ L(4): incl %eax + L(3): incl %eax + L(2): + +- RET_PTR +-END (BP_SYM (__stpcpy)) ++ ret ++END (__stpcpy) + +-weak_alias (BP_SYM (__stpcpy), BP_SYM (stpcpy)) ++weak_alias (__stpcpy, stpcpy) + libc_hidden_def (__stpcpy) + libc_hidden_builtin_def (stpcpy) +diff --git a/sysdeps/i386/stpncpy.S b/sysdeps/i386/stpncpy.S +index 7f3ca8c3b775b42f..870176640450258c 100644 +--- a/sysdeps/i386/stpncpy.S ++++ b/sysdeps/i386/stpncpy.S +@@ -25,17 +25,15 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define DEST RTN+RTN_SIZE +-#define SRC DEST+PTR_SIZE +-#define LEN SRC+PTR_SIZE ++#define DEST RTN ++#define SRC DEST+4 ++#define LEN SRC+4 + + .text +-ENTRY (BP_SYM (__stpncpy)) ++ENTRY (__stpncpy) + + pushl %esi + cfi_adjust_cfa_offset (4) +@@ -142,8 +140,8 @@ L(9): popl %esi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (esi) + +- RET_PTR +-END (BP_SYM (__stpncpy)) ++ ret ++END (__stpncpy) + +-libc_hidden_def (BP_SYM (__stpncpy)) +-weak_alias (BP_SYM (__stpncpy), BP_SYM (stpncpy)) ++libc_hidden_def (__stpncpy) ++weak_alias (__stpncpy, stpncpy) +diff --git a/sysdeps/i386/strchr.S b/sysdeps/i386/strchr.S +index aff95b9b7ee4c35c..0def0d2e8c4549ee 100644 +--- a/sysdeps/i386/strchr.S ++++ b/sysdeps/i386/strchr.S +@@ -22,16 +22,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + + .text +-ENTRY (BP_SYM (strchr)) ++ENTRY (strchr) + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) +@@ -246,7 +244,7 @@ L(2): /* Return NULL. */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR ++ ret + + cfi_adjust_cfa_offset (4) + cfi_rel_offset (edi, 0) +@@ -286,8 +284,8 @@ L(6): + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (strchr)) ++ ret ++END (strchr) + +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/i386/strchrnul.S b/sysdeps/i386/strchrnul.S +index 2aa7d82cc8af1dfc..6d2da6d6b1f1d306 100644 +--- a/sysdeps/i386/strchrnul.S ++++ b/sysdeps/i386/strchrnul.S +@@ -22,16 +22,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+4 /* space for 1 saved reg */ ++#define PARMS 4+4 /* space for 1 saved reg */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + + .text +-ENTRY (BP_SYM (__strchrnul)) ++ENTRY (__strchrnul) + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) +@@ -274,7 +272,7 @@ L(6): popl %edi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (__strchrnul)) ++ ret ++END (__strchrnul) + +-weak_alias (BP_SYM (__strchrnul), BP_SYM (strchrnul)) ++weak_alias (__strchrnul, strchrnul) +diff --git a/sysdeps/i386/strcspn.S b/sysdeps/i386/strcspn.S +index 40b5207809f74530..78becc3862d0cf15 100644 +--- a/sysdeps/i386/strcspn.S ++++ b/sysdeps/i386/strcspn.S +@@ -22,15 +22,13 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define STR PARMS +-#define STOP STR+PTR_SIZE ++#define STOP STR+4 + + .text +-ENTRY (BP_SYM (strcspn)) ++ENTRY (strcspn) + + movl STR(%esp), %edx + movl STOP(%esp), %eax +@@ -238,5 +236,5 @@ L(4): addl $256, %esp /* remove stopset */ + characters, so compute distance to first + non-valid character */ + ret +-END (BP_SYM (strcspn)) ++END (strcspn) + libc_hidden_builtin_def (strcspn) +diff --git a/sysdeps/i386/strpbrk.S b/sysdeps/i386/strpbrk.S +index ae35ba44f6a624a7..0ecd6dae9fcaa701 100644 +--- a/sysdeps/i386/strpbrk.S ++++ b/sysdeps/i386/strpbrk.S +@@ -22,16 +22,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define STOP STR+PTR_SIZE ++#define STR RTN ++#define STOP STR+4 + + .text +-ENTRY (BP_SYM (strpbrk)) ++ENTRY (strpbrk) + + movl STR(%esp), %edx + movl STOP(%esp), %eax +@@ -240,6 +238,6 @@ L(4): addl $256, %esp /* remove stopset */ + jnz L(7) /* no => return pointer */ + xorl %eax, %eax + +-L(7): RET_PTR +-END (BP_SYM (strpbrk)) ++L(7): ret ++END (strpbrk) + libc_hidden_builtin_def (strpbrk) +diff --git a/sysdeps/i386/strrchr.S b/sysdeps/i386/strrchr.S +index 57931c165831aa55..1fed985db81f6da2 100644 +--- a/sysdeps/i386/strrchr.S ++++ b/sysdeps/i386/strrchr.S +@@ -21,16 +21,14 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define CHR STR+PTR_SIZE ++#define STR RTN ++#define CHR STR+4 + + .text +-ENTRY (BP_SYM (strrchr)) ++ENTRY (strrchr) + + pushl %edi /* Save callee-safe registers used here. */ + cfi_adjust_cfa_offset (4) +@@ -329,8 +327,8 @@ L(2): popl %esi /* restore saved register content */ + cfi_adjust_cfa_offset (-4) + cfi_restore (edi) + +- RET_PTR +-END (BP_SYM (strrchr)) ++ ret ++END (strrchr) + +-weak_alias (BP_SYM (strrchr), BP_SYM (rindex)) ++weak_alias (strrchr, rindex) + libc_hidden_builtin_def (strrchr) +diff --git a/sysdeps/i386/strspn.S b/sysdeps/i386/strspn.S +index 2b5c2a4c670bdfa2..aec4f290a332b2cf 100644 +--- a/sysdeps/i386/strspn.S ++++ b/sysdeps/i386/strspn.S +@@ -22,15 +22,13 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define STR PARMS +-#define SKIP STR+PTR_SIZE ++#define SKIP STR+4 + + .text +-ENTRY (BP_SYM (strspn)) ++ENTRY (strspn) + + movl STR(%esp), %edx + movl SKIP(%esp), %eax +@@ -238,5 +236,5 @@ L(4): addl $256, %esp /* remove stopset */ + characters, so compute distance to first + non-valid character */ + ret +-END (BP_SYM (strspn)) ++END (strspn) + libc_hidden_builtin_def (strspn) +diff --git a/sysdeps/i386/strtok.S b/sysdeps/i386/strtok.S +index eb586928eb19bf21..d852027b870b0530 100644 +--- a/sysdeps/i386/strtok.S ++++ b/sysdeps/i386/strtok.S +@@ -20,8 +20,6 @@ + + #include + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + + /* This file can be used for three variants of the strtok function: + +@@ -57,14 +55,14 @@ save_ptr: + # define FUNCTION strtok + #endif + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define RTN PARMS +-#define STR RTN+RTN_SIZE +-#define DELIM STR+PTR_SIZE +-#define SAVE DELIM+PTR_SIZE ++#define STR RTN ++#define DELIM STR+4 ++#define SAVE DELIM+4 + + .text +-ENTRY (BP_SYM (FUNCTION)) ++ENTRY (FUNCTION) + + movl STR(%esp), %edx + movl DELIM(%esp), %eax +@@ -347,7 +345,7 @@ L(epilogue): + cfi_adjust_cfa_offset (-4) + cfi_restore (ebx) + #endif +- RET_PTR ++ ret + + L(returnNULL): + xorl %eax, %eax +@@ -357,4 +355,4 @@ L(returnNULL): + movl %edx, SAVE_PTR + jmp L(epilogue) + +-END (BP_SYM (FUNCTION)) ++END (FUNCTION) +diff --git a/sysdeps/i386/strtok_r.S b/sysdeps/i386/strtok_r.S +index f4a6a2c409ed1e22..508729370a17069b 100644 +--- a/sysdeps/i386/strtok_r.S ++++ b/sysdeps/i386/strtok_r.S +@@ -1,5 +1,5 @@ + #define FUNCTION __strtok_r + #define USE_AS_STRTOK_R 1 + #include +-weak_alias (BP_SYM (__strtok_r), BP_SYM (strtok_r)) +-strong_alias (BP_SYM (__strtok_r), BP_SYM (__GI___strtok_r)) ++weak_alias (__strtok_r, strtok_r) ++strong_alias (__strtok_r, __GI___strtok_r) +diff --git a/sysdeps/i386/sub_n.S b/sysdeps/i386/sub_n.S +index 2a09256f9c71f93a..1c6592db037cf19e 100644 +--- a/sysdeps/i386/sub_n.S ++++ b/sysdeps/i386/sub_n.S +@@ -20,17 +20,15 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+8 /* space for 2 saved regs */ ++#define PARMS 4+8 /* space for 2 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define S2 S1+PTR_SIZE +-#define SIZE S2+PTR_SIZE ++#define S1 RES+4 ++#define S2 S1+4 ++#define SIZE S2+4 + + .text +-ENTRY (BP_SYM (__mpn_sub_n)) ++ENTRY (__mpn_sub_n) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -111,4 +109,4 @@ L(oop): movl (%esi),%eax + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_sub_n)) ++END (__mpn_sub_n) +diff --git a/sysdeps/i386/submul_1.S b/sysdeps/i386/submul_1.S +index c7054e0f6bd48a5e..9e03f504cf5070cd 100644 +--- a/sysdeps/i386/submul_1.S ++++ b/sysdeps/i386/submul_1.S +@@ -19,13 +19,11 @@ + + #include "sysdep.h" + #include "asm-syntax.h" +-#include "bp-sym.h" +-#include "bp-asm.h" + +-#define PARMS LINKAGE+16 /* space for 4 saved regs */ ++#define PARMS 4+16 /* space for 4 saved regs */ + #define RES PARMS +-#define S1 RES+PTR_SIZE +-#define SIZE S1+PTR_SIZE ++#define S1 RES+4 ++#define SIZE S1+4 + #define S2LIMB SIZE+4 + + #define res_ptr edi +@@ -34,7 +32,7 @@ + #define s2_limb ebx + + .text +-ENTRY (BP_SYM (__mpn_submul_1)) ++ENTRY (__mpn_submul_1) + + pushl %edi + cfi_adjust_cfa_offset (4) +@@ -85,4 +83,4 @@ L(oop): + cfi_restore (edi) + + ret +-END (BP_SYM (__mpn_submul_1)) ++END (__mpn_submul_1) +diff --git a/sysdeps/unix/i386/sysdep.S b/sysdeps/unix/i386/sysdep.S +index 1795ace4136abdde..aee9655fe9497f9f 100644 +--- a/sysdeps/unix/i386/sysdep.S ++++ b/sysdeps/unix/i386/sysdep.S +@@ -19,8 +19,6 @@ + #include + #define _ERRNO_H + #include +-#include +-#include + + #if IS_IN (rtld) + # include /* Defines RTLD_PRIVATE_ERRNO. */ +diff --git a/sysdeps/unix/sysv/linux/i386/clone.S b/sysdeps/unix/sysv/linux/i386/clone.S +index 1aa2a1f828b944a6..da57c8e5df43ab54 100644 +--- a/sysdeps/unix/sysv/linux/i386/clone.S ++++ b/sysdeps/unix/sysv/linux/i386/clone.S +@@ -23,20 +23,18 @@ + #define _ERRNO_H 1 + #include + #include +-#include +-#include + + /* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg, + pid_t *ptid, struct user_desc *tls, pid_t *ctid); */ + +-#define PARMS LINKAGE /* no space for saved regs */ ++#define PARMS 4 /* no space for saved regs */ + #define FUNC PARMS + #define STACK FUNC+4 +-#define FLAGS STACK+PTR_SIZE ++#define FLAGS STACK+4 + #define ARG FLAGS+4 +-#define PTID ARG+PTR_SIZE +-#define TLS PTID+PTR_SIZE +-#define CTID TLS+PTR_SIZE ++#define PTID ARG+4 ++#define TLS PTID+4 ++#define CTID TLS+4 + + #define __NR_clone 120 + #define SYS_clone 120 +@@ -45,7 +43,7 @@ + #define CLONE_THREAD 0x00010000 + + .text +-ENTRY (BP_SYM (__clone)) ++ENTRY (__clone) + /* Sanity check arguments. */ + movl $-EINVAL,%eax + movl FUNC(%esp),%ecx /* no NULL function pointers */ +@@ -156,6 +154,6 @@ L(nomoregetpid): + cfi_endproc; + + cfi_startproc +-PSEUDO_END (BP_SYM (__clone)) ++PSEUDO_END (__clone) + +-weak_alias (BP_SYM (__clone), BP_SYM (clone)) ++weak_alias (__clone, clone) +diff --git a/sysdeps/unix/sysv/linux/i386/mmap64.S b/sysdeps/unix/sysv/linux/i386/mmap64.S +index 8855109ff935a666..6765cd87000e27b8 100644 +--- a/sysdeps/unix/sysv/linux/i386/mmap64.S ++++ b/sysdeps/unix/sysv/linux/i386/mmap64.S +@@ -16,8 +16,6 @@ + . */ + + #include +-#include +-#include + + #include + +@@ -25,9 +23,9 @@ + #define ENOSYS 38 + + #define SVRSP 16 /* saved register space */ +-#define PARMS LINKAGE+SVRSP /* space for 4 saved regs */ ++#define PARMS 4+SVRSP /* space for 4 saved regs */ + #define ADDR PARMS +-#define LEN ADDR+PTR_SIZE ++#define LEN ADDR+4 + #define PROT LEN+4 + #define FLAGS PROT+4 + #define FD FLAGS+4 +@@ -35,7 +33,7 @@ + #define OFFHI OFFLO+4 + + .text +-ENTRY (BP_SYM (__mmap64)) ++ENTRY (__mmap64) + + /* Save registers. */ + pushl %ebp +@@ -115,6 +113,6 @@ L(einval): + movl $-EINVAL, %eax + jmp SYSCALL_ERROR_LABEL + +-PSEUDO_END (BP_SYM (__mmap64)) ++PSEUDO_END (__mmap64) + +-weak_alias (BP_SYM (__mmap64), BP_SYM (mmap64)) ++weak_alias (__mmap64, mmap64) +diff --git a/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S b/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S +index 00e6a4194d557645..1f29d8c37f61abd6 100644 +--- a/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S ++++ b/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S +@@ -16,15 +16,13 @@ + . */ + + #include +-#include +-#include + + #define EINVAL 22 + #define ENOSYS 38 + #define EOVERFLOW 75 + + #define SVRSP 16 /* saved register space */ +-#define PARMS LINKAGE+SVRSP /* space for 4 saved regs */ ++#define PARMS 4+SVRSP /* space for 4 saved regs */ + #define FD PARMS + #define OFFLO FD+4 + #define OFFHI OFFLO+4 +@@ -33,7 +31,7 @@ + #define FLAGS LENHI+4 + + .text +-ENTRY (BP_SYM (__posix_fadvise64_l64)) ++ENTRY (__posix_fadvise64_l64) + + /* Save registers. */ + pushl %ebp +@@ -81,7 +79,7 @@ ENTRY (BP_SYM (__posix_fadvise64_l64)) + /* Successful; return the syscall's value. */ + ret + +-END (BP_SYM (__posix_fadvise64_l64)) ++END (__posix_fadvise64_l64) + + .section .text.compat, "ax" + ENTRY (__posix_fadvise64_l32) +diff --git a/sysdeps/unix/sysv/linux/i386/semtimedop.S b/sysdeps/unix/sysv/linux/i386/semtimedop.S +index 785be2efc9dd93c5..1acf775b80a20b53 100644 +--- a/sysdeps/unix/sysv/linux/i386/semtimedop.S ++++ b/sysdeps/unix/sysv/linux/i386/semtimedop.S +@@ -21,14 +21,14 @@ + #define SYSOP_semtimedop 4 + + #define SVRSP 12 /* saved register space */ +-#define PARMS LINKAGE+SVRSP /* space for 3 saved regs */ ++#define PARMS 4+SVRSP /* space for 3 saved regs */ + #define SEMID PARMS + #define SOPS SEMID+4 +-#define NSOPS SOPS+PTR_SIZE ++#define NSOPS SOPS+4 + #define TIMEOUT NSOPS+4 + + .text +-ENTRY (BP_SYM (semtimedop)) ++ENTRY (semtimedop) + + pushl %ebp + cfi_adjust_cfa_offset (4) +@@ -70,4 +70,4 @@ ENTRY (BP_SYM (semtimedop)) + #ifdef PIC + .align 4 + #endif +-PSEUDO_END (BP_SYM (semtimedop)) ++PSEUDO_END (semtimedop) +diff --git a/sysdeps/unix/sysv/linux/i386/sysdep.h b/sysdeps/unix/sysv/linux/i386/sysdep.h +index b99b67c830184e95..dfbdb2084491af90 100644 +--- a/sysdeps/unix/sysv/linux/i386/sysdep.h ++++ b/sysdeps/unix/sysv/linux/i386/sysdep.h +@@ -21,8 +21,6 @@ + + /* There is some commonality. */ + #include +-#include +-#include + /* Defines RTLD_PRIVATE_ERRNO and USE_DL_SYSINFO. */ + #include + #include diff --git a/SOURCES/glibc-rh1505492-bounded-16.patch b/SOURCES/glibc-rh1505492-bounded-16.patch new file mode 100644 index 0000000..4bbea5c --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-16.patch @@ -0,0 +1,1837 @@ +commit b5510883226aede4e54f9271bbfa9d5585038bde +Author: Joseph Myers +Date: Thu Feb 28 21:23:47 2013 +0000 + + Remove powerpc32 bounded-pointers code. + +Conflicts: + sysdeps/powerpc/powerpc32/bp-asm.h + (Copyright header change; file removed manually.) + sysdeps/powerpc/powerpc32/power7/memcmp.S + sysdeps/powerpc/powerpc32/power7/strnlen.S + sysdeps/powerpc/powerpc32/strlen.S + (Conflicts due to earlier string function backports.) + +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S b/ports/sysdeps/powerpc/powerpc32/405/memcmp.S +index b9628b194160caae..b28877e211fa2b26 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/memcmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* memcmp + +@@ -32,7 +30,7 @@ + return src1 > src2, src1 < src2 or src1 = src2. + If src1 = src2 and no null, repeat. */ + +-EALIGN (BP_SYM (memcmp), 5, 0) ++EALIGN (memcmp, 5, 0) + srwi. r6,r5,5 + beq L(preword2_count_loop) + mtctr r6 +@@ -125,6 +123,6 @@ L(st2): + blt cr5,L(l_r) + addi r3,r0,-1 + blr +-END (BP_SYM (memcmp)) ++END (memcmp) + libc_hidden_builtin_def (memcmp) + weak_alias (memcmp,bcmp) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S b/ports/sysdeps/powerpc/powerpc32/405/memcpy.S +index 61025cf818093f37..56fc3a8139feda9b 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* memcpy + +@@ -33,7 +31,7 @@ + If 32 or more bytes to copy we use 32 byte copy loop. + Finaly we copy 0-31 extra bytes. */ + +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + /* Check if bytes to copy are greater than 256 and if + source and destination are unaligned */ + cmpwi r5,0x0100 +@@ -128,5 +126,5 @@ L(word4_count_loop_no_dcbt): /* Copy 32 bytes at a time */ + L(end_memcpy): + mr r3,r0 + blr +-END (BP_SYM (memcpy)) ++END (memcpy) + libc_hidden_builtin_def (memcpy) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memset.S b/ports/sysdeps/powerpc/powerpc32/405/memset.S +index c2ee6c593cf9e80f..bf3edaa92df78928 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/memset.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/memset.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* memset + +@@ -37,7 +35,7 @@ + If 16 or more words to set we use 16 word copy loop. + Finaly we set 0-15 extra bytes with string store. */ + +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + rlwinm r11,r4,0,24,31 + rlwimi r11,r4,8,16,23 + rlwimi r11,r11,16,0,15 +@@ -150,5 +148,5 @@ L(postword2_count_loop): + mtxer r7 + stswx r8,0,r3 + b L(end_memset) +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S b/ports/sysdeps/powerpc/powerpc32/405/strcmp.S +index 9cd0e24f24604d4a..be536b50f4c56149 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/strcmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* strcmp + +@@ -34,7 +32,7 @@ + return src1 > src2, src1 < src2 or src1 = src2. + If src1 = src2 and no null, repeat. */ + +-EALIGN (BP_SYM(strcmp),5,0) ++EALIGN (strcmp,5,0) + neg r7,r3 + clrlwi r7,r7,20 + neg r8,r4 +@@ -132,5 +130,5 @@ L(byte_loop): + cmpwi r5,0 + beq L(end_strcmp) + b L(byte_loop) +-END (BP_SYM (strcmp)) ++END (strcmp) + libc_hidden_builtin_def (strcmp) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S b/ports/sysdeps/powerpc/powerpc32/405/strcpy.S +index 8e6c396e5d3b0e7c..17f3d020f3914ca4 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/strcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* strcpy + +@@ -33,7 +31,7 @@ + where in the last 8 bytes it is. Copy the appropriate bytes of the last + 8 according to the null position. */ + +-EALIGN (BP_SYM (strcpy), 5, 0) ++EALIGN (strcpy, 5, 0) + neg r7,r4 + subi r4,r4,1 + clrlwi. r8,r7,29 +@@ -105,5 +103,5 @@ L(last_bytes_copy_loop2): + + L(end_strcpy): + blr +-END (BP_SYM (strcpy)) ++END (strcpy) + libc_hidden_builtin_def (strcpy) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strlen.S b/ports/sysdeps/powerpc/powerpc32/405/strlen.S +index 210a3afd92460378..f53951d99bc7e13c 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/strlen.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/strlen.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* strlen + +@@ -31,7 +29,7 @@ + the count and return the count value. We need to subtract one because + we don't count the null character as a byte. */ + +-EALIGN (BP_SYM (strlen),5,0) ++EALIGN (strlen,5,0) + neg r7,r3 + clrlwi. r8,r7,29 + addi r4,0,0 +@@ -73,5 +71,5 @@ L(byte_count_loop): + L(end_strlen): + addi r3,r4,-1 + blr +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S b/ports/sysdeps/powerpc/powerpc32/405/strncmp.S +index af374c9068796a4f..68079091273e0293 100644 +--- a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S ++++ b/ports/sysdeps/powerpc/powerpc32/405/strncmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* strncmp + +@@ -39,7 +37,7 @@ + return src1 > src2, src1 < src2 or src1 = src2. + If src1 = src2 and no null, repeat. */ + +-EALIGN (BP_SYM(strncmp),5,0) ++EALIGN (strncmp,5,0) + neg r7,r3 + clrlwi r7,r7,20 + neg r8,r4 +@@ -126,5 +124,5 @@ L(end_strncmp): + L(st1): + mfcr r3 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/ports/sysdeps/powerpc/powerpc32/476/memset.S b/ports/sysdeps/powerpc/powerpc32/476/memset.S +index 8b5750442b785769..17b933430a99d41b 100644 +--- a/ports/sysdeps/powerpc/powerpc32/476/memset.S ++++ b/ports/sysdeps/powerpc/powerpc32/476/memset.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* memset + +@@ -37,7 +35,7 @@ + If 16 or more words to set we use 16 word copy loop. + Finaly we set 0-15 extra bytes with string store. */ + +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + rlwinm r11,r4,0,24,31 + rlwimi r11,r4,8,16,23 + rlwimi r11,r11,16,0,15 +@@ -150,5 +148,5 @@ L(postword2_count_loop): + mtxer r7 + stswx r8,0,r3 + b L(end_memset) +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/powerpc/powerpc32/__longjmp-common.S b/sysdeps/powerpc/powerpc32/__longjmp-common.S +index fa46b6dcf4db352b..dc464e499d538ab1 100644 +--- a/sysdeps/powerpc/powerpc32/__longjmp-common.S ++++ b/sysdeps/powerpc/powerpc32/__longjmp-common.S +@@ -24,11 +24,8 @@ + #else + # include + #endif +-#include +-#include + +-ENTRY (BP_SYM (__longjmp)) +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) ++ENTRY (__longjmp) + + #if defined PTR_DEMANGLE || defined CHECK_SP + lwz r24,(JB_GPR1*4)(r3) +@@ -72,4 +69,4 @@ ENTRY (BP_SYM (__longjmp)) + lwz r31,((JB_GPRS+17)*4)(r3) + mr r3,r4 + blr +-END (BP_SYM (__longjmp)) ++END (__longjmp) +diff --git a/sysdeps/powerpc/powerpc32/a2/memcpy.S b/sysdeps/powerpc/powerpc32/a2/memcpy.S +index f88e2dcd43b32319..257113d1a356924c 100644 +--- a/sysdeps/powerpc/powerpc32/a2/memcpy.S ++++ b/sysdeps/powerpc/powerpc32/a2/memcpy.S +@@ -18,14 +18,12 @@ + . */ + + #include +-#include +-#include + + #define PREFETCH_AHEAD 4 /* no cache lines SRC prefetching ahead */ + #define ZERO_AHEAD 2 /* no cache lines DST zeroing ahead */ + + .machine a2 +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT + + dcbt 0,r4 /* Prefetch ONE SRC cacheline */ +@@ -525,5 +523,5 @@ L(endloop2_128): + b L(lessthancacheline) + + +-END (BP_SYM (memcpy)) ++END (memcpy) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc32/add_n.S b/sysdeps/powerpc/powerpc32/add_n.S +index 4ff7c87675080fd1..fa9d35f7bf269811 100644 +--- a/sysdeps/powerpc/powerpc32/add_n.S ++++ b/sysdeps/powerpc/powerpc32/add_n.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, + mp_size_t size) +@@ -28,14 +26,8 @@ + possible 2-unrolled inner loop will not be. Also, watch out for the + alignment... */ + +-EALIGN (BP_SYM (__mpn_add_n), 3, 0) ++EALIGN (__mpn_add_n, 3, 0) + +-#if __BOUNDED_POINTERS__ +- slwi r10,r6,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10) +-#endif + /* Set up for loop below. */ + mtcrf 0x01,r6 + srwi. r7,r6,1 +@@ -73,4 +65,4 @@ L(0): lwz r9,4(r4) + /* Return the carry. */ + L(1): addze r3,r10 + blr +-END (BP_SYM (__mpn_add_n)) ++END (__mpn_add_n) +diff --git a/sysdeps/powerpc/powerpc32/addmul_1.S b/sysdeps/powerpc/powerpc32/addmul_1.S +index 3f23833bcbba023a..8cf3001b3f5140c3 100644 +--- a/sysdeps/powerpc/powerpc32/addmul_1.S ++++ b/sysdeps/powerpc/powerpc32/addmul_1.S +@@ -17,18 +17,11 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_addmul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr, + mp_size_t s1_size, mp_limb_t s2_limb) + Calculate res+s1*s2 and put result back in res; return carry. */ +-ENTRY (BP_SYM (__mpn_addmul_1)) +-#if __BOUNDED_POINTERS__ +- slwi r10,r5,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +-#endif ++ENTRY (__mpn_addmul_1) + mtctr r5 + + lwz r0,0(r4) +@@ -52,4 +45,4 @@ L(0): lwzu r0,4(r4) + L(1): stw r8,4(r3) + addze r3,r10 + blr +-END (BP_SYM (__mpn_addmul_1)) ++END (__mpn_addmul_1) +diff --git a/sysdeps/powerpc/powerpc32/bp-asm.h b/sysdeps/powerpc/powerpc32/bp-asm.h +deleted file mode 100644 +index 16afbb22510e257b..0000000000000000 +--- a/sysdeps/powerpc/powerpc32/bp-asm.h ++++ /dev/null +@@ -1,112 +0,0 @@ +-/* Bounded-pointer definitions for PowerPC assembler. +- Copyright (C) 2000 Free Software Foundation, Inc. +- Contributed by Greg McGary +- This file is part of the GNU C Library. Its master source is NOT part of +- the C library, however. The master source lives in the GNU MP Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#if __BOUNDED_POINTERS__ +- +-/* Byte offsets of BP components. */ +-# define oVALUE 0 +-# define oLOW 4 +-# define oHIGH 8 +- +-/* Don't check bounds, just convert the BP register to its simple +- pointer value. */ +- +-# define DISCARD_BOUNDS(rBP) \ +- lwz rBP, oVALUE(rBP) +- +-/* Check low bound, with the side effect that the BP register is converted +- its simple pointer value. Move the high bound into a register for +- later use. */ +- +-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH) \ +- lwz rHIGH, oHIGH(rBP); \ +- lwz rLOW, oLOW(rBP); \ +- lwz rBP, oVALUE(rBP); \ +- twllt rBP, rLOW +- +-/* Check the high bound, which is in a register, using the given +- conditional trap instruction. */ +- +-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) \ +- TWLcc rVALUE, rHIGH +- +-/* Check the high bound, which is stored at the return-value's high +- bound slot, using the given conditional trap instruction. */ +- +-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc) \ +- lwz rHIGH, oHIGH(rRTN); \ +- TWLcc rVALUE, rHIGH +- +-/* Check both bounds, with the side effect that the BP register is +- converted to its simple pointer value. */ +- +-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH) \ +- CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH); \ +- twlge rBP, rHIGH +- +-/* Check bounds on a memory region of given length, with the side +- effect that the BP register is converted to its simple pointer +- value. */ +- +-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH) \ +- CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH); \ +- sub rHIGH, rHIGH, rLENGTH; \ +- twlgt rBP, rHIGH +- +-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH) \ +- CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH); \ +- subi rHIGH, rHIGH, LENGTH; \ +- twlgt rBP, rHIGH +- +-/* Store a pointer value register into the return-value's pointer +- value slot. */ +- +-# define STORE_RETURN_VALUE(rVALUE) \ +- stw rVALUE, oVALUE(rRTN) +- +-/* Store a low and high bounds into the return-value's pointer bounds +- slots. */ +- +-# define STORE_RETURN_BOUNDS(rLOW, rHIGH) \ +- stw rLOW, oLOW(rRTN); \ +- stw rHIGH, oHIGH(rRTN) +- +-/* Stuff zero value/low/high into the BP addressed by rRTN. */ +- +-# define RETURN_NULL_BOUNDED_POINTER \ +- li r4, 0; \ +- STORE_RETURN_VALUE (r4); \ +- STORE_RETURN_BOUNDS (r4, r4) +- +-#else +- +-# define DISCARD_BOUNDS(rBP) +-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH) +-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) +-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc) +-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH) +-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH) +-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH) +-# define STORE_RETURN_VALUE(rVALUE) +-# define STORE_RETURN_BOUNDS(rLOW, rHIGH) +- +-# define RETURN_NULL_BOUNDED_POINTER li rRTN, 0 +- +-#endif +diff --git a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S +index 79b0aa4746f653a8..b5232e634e00ed32 100644 +--- a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S ++++ b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S +@@ -19,14 +19,13 @@ + #include + #include + #include +-#include + + #if !IS_IN (libc) + /* Build a non-versioned object for rtld-*. */ +-ENTRY (BP_SYM (_setjmp)) ++ENTRY (_setjmp) + li r4,0 /* Set second argument to 0. */ +- b BP_SYM (__sigsetjmp@local) +-END (BP_SYM (_setjmp)) ++ b __sigsetjmp@local ++END (_setjmp) + libc_hidden_def (_setjmp) + #else + /* Build a versioned object for libc. */ +@@ -34,10 +33,10 @@ libc_hidden_def (_setjmp) + # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) + compat_symbol (libc, __novmx_setjmp, _setjmp, GLIBC_2_0); + +-ENTRY (BP_SYM (__novmx_setjmp)) ++ENTRY (__novmx_setjmp) + li r4,0 /* Set second argument to 0. */ +- b BP_SYM (__novmx__sigsetjmp@local) +-END (BP_SYM (__novmx_setjmp)) ++ b __novmx__sigsetjmp@local ++END (__novmx_setjmp) + libc_hidden_def (__novmx_setjmp) + # endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */ + +@@ -45,14 +44,14 @@ versioned_symbol (libc, __vmx_setjmp, _setjmp, GLIBC_2_3_4) + /* __GI__setjmp prototype is needed for ntpl i.e. _setjmp is defined + as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c + if HAVE_CLEANUP_JMP_BUF is defined */ +-ENTRY (BP_SYM (__GI__setjmp)) ++ENTRY (__GI__setjmp) + li r4,0 /* Set second argument to 0. */ +- b BP_SYM (__vmx__sigsetjmp@local) +-END (BP_SYM (__GI__setjmp)) ++ b __vmx__sigsetjmp@local ++END (__GI__setjmp) + +-ENTRY (BP_SYM (__vmx_setjmp)) ++ENTRY (__vmx_setjmp) + li r4,0 /* Set second argument to 0. */ +- b BP_SYM (__vmx__sigsetjmp@local) +-END (BP_SYM (__vmx_setjmp)) ++ b __vmx__sigsetjmp@local ++END (__vmx_setjmp) + libc_hidden_def (__vmx_setjmp) + #endif /* !IS_IN (libc) */ +diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S +index 78248c0108c695ed..0a6beb6459db8fea 100644 +--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S ++++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S +@@ -18,7 +18,6 @@ + #include + #include + #include +-#include + + #if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) + +diff --git a/sysdeps/powerpc/powerpc32/bzero.S b/sysdeps/powerpc/powerpc32/bzero.S +index aa5a237a6ac60c30..3080945afe359efe 100644 +--- a/sysdeps/powerpc/powerpc32/bzero.S ++++ b/sysdeps/powerpc/powerpc32/bzero.S +@@ -17,20 +17,11 @@ + . */ + + #include +-#include + +-ENTRY (BP_SYM (__bzero)) ++ENTRY (__bzero) + +-#if __BOUNDED_POINTERS__ +- mr r6,r4 +- li r5,0 +- mr r4,r3 +- /* Tell memset that we don't want a return value. */ +- li r3,0 +-#else + mr r5,r4 + li r4,0 +-#endif +- b BP_SYM (memset)@local +-END (BP_SYM (__bzero)) +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++ b memset@local ++END (__bzero) ++weak_alias (__bzero, bzero) +diff --git a/sysdeps/powerpc/powerpc32/cell/memcpy.S b/sysdeps/powerpc/powerpc32/cell/memcpy.S +index a25547feb4e8425b..2cf6a505d060e72b 100644 +--- a/sysdeps/powerpc/powerpc32/cell/memcpy.S ++++ b/sysdeps/powerpc/powerpc32/cell/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + #define PREFETCH_AHEAD 6 /* no cache lines SRC prefetching ahead */ + #define ZERO_AHEAD 4 /* no cache lines DST zeroing ahead */ +@@ -41,7 +39,7 @@ + + .align 7 + +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT + + dcbt 0,r4 /* Prefetch ONE SRC cacheline */ +@@ -240,5 +238,5 @@ EALIGN (BP_SYM (memcpy), 5, 0) + stb r0,0(r6) + 1: blr + +-END (BP_SYM (memcpy)) ++END (memcpy) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S +index adc69a5c57327a31..862d4b837f2ca7f6 100644 +--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S ++++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S +@@ -23,12 +23,9 @@ + #else + # include + #endif +-#include +-#include + + .machine "altivec" +-ENTRY (BP_SYM (__longjmp)) +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) ++ENTRY (__longjmp) + #ifndef __NO_VMX__ + # ifdef PIC + mflr r6 +@@ -173,4 +170,4 @@ L(no_vmx): + lfd fp31,((JB_FPRS+17*2)*4)(r3) + mr r3,r4 + blr +-END (BP_SYM (__longjmp)) ++END (__longjmp) +diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S +index 0ce05f7bdfbfbfc1..b6a1ce062de2e7a0 100644 +--- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S ++++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S +@@ -23,12 +23,9 @@ + #else + # include + #endif +-#include +-#include + + .machine "altivec" +-ENTRY (BP_SYM (__sigsetjmp)) +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) ++ENTRY (__sigsetjmp) + + #ifdef PTR_MANGLE + mr r5,r1 +@@ -178,5 +175,5 @@ L(aligned_save_vmx): + stvx 31,0,r6 + L(no_vmx): + #endif +- b BP_SYM (__sigjmp_save@local) +-END (BP_SYM (__sigsetjmp)) ++ b __sigjmp_save@local ++END (__sigsetjmp) +diff --git a/sysdeps/powerpc/powerpc32/lshift.S b/sysdeps/powerpc/powerpc32/lshift.S +index d376266710056d58..83e2747b2a9a482f 100644 +--- a/sysdeps/powerpc/powerpc32/lshift.S ++++ b/sysdeps/powerpc/powerpc32/lshift.S +@@ -17,19 +17,12 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_lshift (mp_ptr wp, mp_srcptr up, mp_size_t usize, + unsigned int cnt) */ + +-EALIGN (BP_SYM (__mpn_lshift), 3, 0) ++EALIGN (__mpn_lshift, 3, 0) + +-#if __BOUNDED_POINTERS__ +- slwi r10,r5,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +-#endif + mtctr r5 # copy size into CTR + cmplwi cr0,r5,16 # is size < 16 + slwi r0,r5,2 +@@ -129,4 +122,4 @@ L(n): lwzu r10,-4(r4); \ + DO_LSHIFT(30) + DO_LSHIFT(31) + +-END (BP_SYM (__mpn_lshift)) ++END (__mpn_lshift) +diff --git a/sysdeps/powerpc/powerpc32/memset.S b/sysdeps/powerpc/powerpc32/memset.S +index 8459b926ee9b1543..416434a554031914 100644 +--- a/sysdeps/powerpc/powerpc32/memset.S ++++ b/sysdeps/powerpc/powerpc32/memset.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. +@@ -30,21 +28,14 @@ + takes advantage of the dcbz instruction. */ + + .section ".text" +-EALIGN (BP_SYM (memset), 5, 1) ++EALIGN (memset, 5, 1) + + #define rTMP r0 + #define rRTN r3 /* initial value of 1st argument */ +-#if __BOUNDED_POINTERS__ +-# define rMEMP0 r4 /* original value of 1st arg */ +-# define rCHR r5 /* char to set in each byte */ +-# define rLEN r6 /* length of region to set */ +-# define rMEMP r10 /* address at which we are storing */ +-#else +-# define rMEMP0 r3 /* original value of 1st arg */ +-# define rCHR r4 /* char to set in each byte */ +-# define rLEN r5 /* length of region to set */ +-# define rMEMP r6 /* address at which we are storing */ +-#endif ++#define rMEMP0 r3 /* original value of 1st arg */ ++#define rCHR r4 /* char to set in each byte */ ++#define rLEN r5 /* length of region to set */ ++#define rMEMP r6 /* address at which we are storing */ + #define rALIGN r7 /* number of bytes we are setting now (when aligning) */ + #define rMEMP2 r8 + +@@ -56,15 +47,6 @@ EALIGN (BP_SYM (memset), 5, 1) + #define rCLS r8 /* Cache line size obtained from static. */ + #define rCLM r9 /* Cache line size mask to check for cache alignment. */ + +-#if __BOUNDED_POINTERS__ +- cmplwi cr1, rRTN, 0 +- CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN) +- beq cr1, L(b0) +- STORE_RETURN_VALUE (rMEMP0) +- STORE_RETURN_BOUNDS (rTMP, rTMP2) +-L(b0): +-#endif +- + /* take care of case for size <= 4 */ + cmplwi cr1, rLEN, 4 + andi. rALIGN, rMEMP0, 3 +@@ -322,5 +304,5 @@ L(handletail32): + clrrwi. rALIGN, rLEN, 5 + b L(nondcbz) + +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/powerpc/powerpc32/mul_1.S b/sysdeps/powerpc/powerpc32/mul_1.S +index 32a33f296ec3b463..6b6286a0f1fabc45 100644 +--- a/sysdeps/powerpc/powerpc32/mul_1.S ++++ b/sysdeps/powerpc/powerpc32/mul_1.S +@@ -17,19 +17,12 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_mul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr, + mp_size_t s1_size, mp_limb_t s2_limb) + Calculate s1*s2 and put result in res_ptr; return carry. */ + +-ENTRY (BP_SYM (__mpn_mul_1)) +-#if __BOUNDED_POINTERS__ +- slwi r10,r5,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +-#endif ++ENTRY (__mpn_mul_1) + mtctr r5 + + lwz r0,0(r4) +@@ -49,4 +42,4 @@ L(0): lwzu r0,4(r4) + L(1): stw r7,4(r3) + addze r3,r10 + blr +-END (BP_SYM (__mpn_mul_1)) ++END (__mpn_mul_1) +diff --git a/sysdeps/powerpc/powerpc32/power4/memcmp.S b/sysdeps/powerpc/powerpc32/power4/memcmp.S +index c726520d6a6f373d..6c42dcd94cff2b47 100644 +--- a/sysdeps/powerpc/powerpc32/power4/memcmp.S ++++ b/sysdeps/powerpc/powerpc32/power4/memcmp.S +@@ -17,15 +17,13 @@ + . */ + + #include +-#include +-#include + + /* int [r3] memcmp (const char *s1 [r3], + const char *s2 [r4], + size_t size [r5]) */ + + .machine power4 +-EALIGN (BP_SYM(memcmp), 4, 0) ++EALIGN (memcmp, 4, 0) + CALL_MCOUNT + + #define rRTN r3 +@@ -1371,7 +1369,7 @@ L(dureturn25): + addi 1, 1, 64 + cfi_adjust_cfa_offset(-64) + blr +-END (BP_SYM (memcmp)) ++END (memcmp) + + libc_hidden_builtin_def (memcmp) + weak_alias (memcmp, bcmp) +diff --git a/sysdeps/powerpc/powerpc32/power4/memcpy.S b/sysdeps/powerpc/powerpc32/power4/memcpy.S +index 20ed28b2abeaf092..363b6bf0b5cbb809 100644 +--- a/sysdeps/powerpc/powerpc32/power4/memcpy.S ++++ b/sysdeps/powerpc/powerpc32/power4/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst'. +@@ -34,7 +32,7 @@ + Each case has an optimized unrolled loop. */ + + .machine power4 +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT + + stwu 1,-32(1) +@@ -478,6 +476,6 @@ EALIGN (BP_SYM (memcpy), 5, 0) + lwz 31,24(1) + addi 1,1,32 + blr +-END (BP_SYM (memcpy)) ++END (memcpy) + + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc32/power4/memset.S b/sysdeps/powerpc/powerpc32/power4/memset.S +index f3da588e10ad639d..faefc70258c2c211 100644 +--- a/sysdeps/powerpc/powerpc32/power4/memset.S ++++ b/sysdeps/powerpc/powerpc32/power4/memset.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. +@@ -28,7 +26,7 @@ + to 0, to take advantage of the dcbz instruction. */ + + .machine power4 +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + CALL_MCOUNT + + #define rTMP r0 +@@ -224,5 +222,5 @@ L(medium_28t): + stw rCHR, -4(rMEMP) + stw rCHR, -8(rMEMP) + blr +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/powerpc/powerpc32/power4/strncmp.S b/sysdeps/powerpc/powerpc32/power4/strncmp.S +index c74b690aa8929ccb..54ab0ad42acaeb14 100644 +--- a/sysdeps/powerpc/powerpc32/power4/strncmp.S ++++ b/sysdeps/powerpc/powerpc32/power4/strncmp.S +@@ -17,14 +17,12 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp), 4, 0) ++EALIGN (strncmp, 4, 0) + + #define rTMP2 r0 + #define rRTN r3 +@@ -197,5 +195,5 @@ L(u4): sub rRTN, rWORD1, rWORD2 + L(ux): + li rRTN, 0 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/powerpc/powerpc32/power6/memcpy.S b/sysdeps/powerpc/powerpc32/power6/memcpy.S +index 78cbd30795a5a866..89ac4ff8517e2368 100644 +--- a/sysdeps/powerpc/powerpc32/power6/memcpy.S ++++ b/sysdeps/powerpc/powerpc32/power6/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst'. +@@ -34,7 +32,7 @@ + Each case has an optimized unrolled loop. */ + + .machine power6 +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT + + stwu 1,-32(1) +@@ -904,6 +902,6 @@ L(wdus_0): + lwz 31,24(1) + addi 1,1,32 + blr +-END (BP_SYM (memcpy)) ++END (memcpy) + + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc32/power6/memset.S b/sysdeps/powerpc/powerpc32/power6/memset.S +index e4966f5e597f34f3..29095b73cb05d7ac 100644 +--- a/sysdeps/powerpc/powerpc32/power6/memset.S ++++ b/sysdeps/powerpc/powerpc32/power6/memset.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. +@@ -28,7 +26,7 @@ + to 0, to take advantage of the dcbz instruction. */ + + .machine power6 +-EALIGN (BP_SYM (memset), 7, 0) ++EALIGN (memset, 7, 0) + CALL_MCOUNT + + #define rTMP r0 +@@ -537,5 +535,5 @@ L(medium_28t): + stw rCHR, -4(rMEMP) + stw rCHR, -8(rMEMP) + blr +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/powerpc/powerpc32/power7/memcmp.S b/sysdeps/powerpc/powerpc32/power7/memcmp.S +index 59833b9e5efae1dc..12ad5dbc28c5c37b 100644 +--- a/sysdeps/powerpc/powerpc32/power7/memcmp.S ++++ b/sysdeps/powerpc/powerpc32/power7/memcmp.S +@@ -17,15 +17,13 @@ + . */ + + #include +-#include +-#include + + /* int [r3] memcmp (const char *s1 [r3], + const char *s2 [r4], + size_t size [r5]) */ + + .machine power7 +-EALIGN (BP_SYM(memcmp), 4, 0) ++EALIGN (memcmp, 4, 0) + CALL_MCOUNT + + #define rRTN r3 +@@ -1371,7 +1369,7 @@ L(dureturn25): + addi r1, r1, 64 + cfi_adjust_cfa_offset(-64) + blr +-END (BP_SYM (memcmp)) ++END (memcmp) + + libc_hidden_builtin_def (memcmp) + weak_alias (memcmp,bcmp) +diff --git a/sysdeps/powerpc/powerpc32/power7/memcpy.S b/sysdeps/powerpc/powerpc32/power7/memcpy.S +index 795d9626790f5e00..5821b1e40b14a038 100644 +--- a/sysdeps/powerpc/powerpc32/power7/memcpy.S ++++ b/sysdeps/powerpc/powerpc32/power7/memcpy.S +@@ -18,14 +18,12 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst'. */ + + .machine power7 +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT + + stwu 1,-32(1) +@@ -536,5 +534,5 @@ L(end_unaligned_loop): + addi 1,1,32 + blr + +-END (BP_SYM (memcpy)) ++END (memcpy) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc32/power7/mempcpy.S b/sysdeps/powerpc/powerpc32/power7/mempcpy.S +index ede20304057a1009..a29bdbb5ad302d55 100644 +--- a/sysdeps/powerpc/powerpc32/power7/mempcpy.S ++++ b/sysdeps/powerpc/powerpc32/power7/mempcpy.S +@@ -18,14 +18,12 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] __mempcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst' + 'len'. */ + + .machine power7 +-EALIGN (BP_SYM (__mempcpy), 5, 0) ++EALIGN (__mempcpy, 5, 0) + CALL_MCOUNT + + stwu 1,-32(1) +@@ -478,7 +476,7 @@ L(end_unaligned_loop): + addi 1,1,32 + blr + +-END (BP_SYM (__mempcpy)) +-libc_hidden_def (BP_SYM (__mempcpy)) +-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy)) ++END (__mempcpy) ++libc_hidden_def (__mempcpy) ++weak_alias (__mempcpy, mempcpy) + libc_hidden_builtin_def (mempcpy) +diff --git a/sysdeps/powerpc/powerpc32/power7/memset.S b/sysdeps/powerpc/powerpc32/power7/memset.S +index fa2e0b7e56f0f636..9944ebcaa2f79317 100644 +--- a/sysdeps/powerpc/powerpc32/power7/memset.S ++++ b/sysdeps/powerpc/powerpc32/power7/memset.S +@@ -18,14 +18,12 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. */ + + .machine power7 +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + CALL_MCOUNT + + .align 4 +@@ -429,5 +427,5 @@ L(small): + stw 4,4(10) + blr + +-END (BP_SYM (memset)) ++END (memset) + libc_hidden_builtin_def (memset) +diff --git a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S +index 403a6c4421aff854..30de892046542ec5 100644 +--- a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S ++++ b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] rawmemchr (void *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(__rawmemchr)) ++ENTRY (__rawmemchr) + CALL_MCOUNT + dcbt 0,r3 + clrrwi r8,r3,2 /* Align the address to word boundary. */ +@@ -107,6 +105,6 @@ L(done): + srwi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of the matching char. */ + blr +-END (BP_SYM (__rawmemchr)) ++END (__rawmemchr) + weak_alias (__rawmemchr,rawmemchr) + libc_hidden_builtin_def (__rawmemchr) +diff --git a/sysdeps/powerpc/powerpc32/power7/strcasecmp.S b/sysdeps/powerpc/powerpc32/power7/strcasecmp.S +index 7162142b29933894..3b92ec3b1f135b6f 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strcasecmp.S ++++ b/sysdeps/powerpc/powerpc32/power7/strcasecmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + #include + + /* int [r3] strcasecmp (const char *s1 [r3], const char *s2 [r4] ) +@@ -33,7 +31,7 @@ + # define STRCMP strcasecmp + #endif + +-ENTRY (BP_SYM (__STRCMP)) ++ENTRY (__STRCMP) + + #define rRTN r3 /* Return value */ + #define rSTR1 r5 /* 1st string */ +@@ -125,7 +123,7 @@ L(loop): + bnelr + bne cr7,L(loop) + blr +-END (BP_SYM (__STRCMP)) ++END (__STRCMP) + +-weak_alias (BP_SYM (__STRCMP), BP_SYM (STRCMP)) ++weak_alias (__STRCMP, STRCMP) + libc_hidden_builtin_def (__STRCMP) +diff --git a/sysdeps/powerpc/powerpc32/power7/strchr.S b/sysdeps/powerpc/powerpc32/power7/strchr.S +index a6fbafe9a8824ba3..c1ddfec9fc4aa3f8 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strchr.S ++++ b/sysdeps/powerpc/powerpc32/power7/strchr.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strchr (char *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(strchr)) ++ENTRY (strchr) + CALL_MCOUNT + dcbt 0,r3 + clrrwi r8,r3,2 /* Align the address to word boundary. */ +@@ -222,6 +220,6 @@ L(done_null): + srwi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of the matching null byte. */ + blr +-END (BP_SYM (strchr)) +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++END (strchr) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/powerpc/powerpc32/power7/strchrnul.S b/sysdeps/powerpc/powerpc32/power7/strchrnul.S +index 3bf11c992500cc7c..31fd2339fb896ad6 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strchrnul.S ++++ b/sysdeps/powerpc/powerpc32/power7/strchrnul.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strchrnul (char *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(__strchrnul)) ++ENTRY (__strchrnul) + CALL_MCOUNT + dcbt 0,r3 + clrrwi r8,r3,2 /* Align the address to word boundary. */ +@@ -124,6 +122,6 @@ L(done): + srwi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of matching c/null byte. */ + blr +-END (BP_SYM (__strchrnul)) ++END (__strchrnul) + weak_alias (__strchrnul,strchrnul) + libc_hidden_builtin_def (__strchrnul) +diff --git a/sysdeps/powerpc/powerpc32/power7/strlen.S b/sysdeps/powerpc/powerpc32/power7/strlen.S +index 950f621cfe7da807..6d603e7d708eeac1 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strlen.S ++++ b/sysdeps/powerpc/powerpc32/power7/strlen.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strlen (char *s [r3]) */ + .machine power7 +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + CALL_MCOUNT + dcbt 0,r3 + clrrwi r4,r3,2 /* Align the address to word boundary. */ +@@ -100,5 +98,5 @@ L(done): + srwi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r5,r0 /* Compute final length. */ + blr +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/powerpc/powerpc32/power7/strncmp.S b/sysdeps/powerpc/powerpc32/power7/strncmp.S +index 555f588a2e2d0860..4dde199fdf692225 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strncmp.S ++++ b/sysdeps/powerpc/powerpc32/power7/strncmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + +@@ -26,7 +24,7 @@ + const char *s2 [r4], + size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp),5,0) ++EALIGN (strncmp,5,0) + + #define rTMP2 r0 + #define rRTN r3 +@@ -200,5 +198,5 @@ L(u4): sub rRTN,rWORD1,rWORD2 + L(ux): + li rRTN,0 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/powerpc/powerpc32/power7/strnlen.S b/sysdeps/powerpc/powerpc32/power7/strnlen.S +index 513e418329704647..74dbec80fa5bf32d 100644 +--- a/sysdeps/powerpc/powerpc32/power7/strnlen.S ++++ b/sysdeps/powerpc/powerpc32/power7/strnlen.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strnlen (char *s [r3], int size [r4]) */ + .machine power7 +-ENTRY (BP_SYM (__strnlen)) ++ENTRY (__strnlen) + CALL_MCOUNT + dcbt 0,r3 + clrrwi r8,r3,2 /* Align the address to word boundary. */ +@@ -172,6 +170,6 @@ L(loop_small): + mr r3,r4 + blr + +-END (BP_SYM (__strnlen)) +-weak_alias (BP_SYM (__strnlen), BP_SYM(strnlen)) ++END (__strnlen) ++weak_alias (__strnlen, strnlen) + libc_hidden_builtin_def (strnlen) +diff --git a/sysdeps/powerpc/powerpc32/rshift.S b/sysdeps/powerpc/powerpc32/rshift.S +index bc99bf129c402229..b6016c1a741cdb3e 100644 +--- a/sysdeps/powerpc/powerpc32/rshift.S ++++ b/sysdeps/powerpc/powerpc32/rshift.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* INPUT PARAMETERS + res_ptr r3 +@@ -26,12 +24,7 @@ + size r5 + cnt r6 */ + +-ENTRY (BP_SYM (__mpn_rshift)) +-#if __BOUNDED_POINTERS__ +- slwi r10,r5,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +-#endif ++ENTRY (__mpn_rshift) + mtctr r5 # copy size into CTR + addi r7,r3,-4 # move adjusted res_ptr to free return reg + subfic r8,r6,32 +@@ -59,4 +52,4 @@ L(1): srw r0,r11,r6 + L(2): srw r0,r10,r6 + stw r0,4(r7) + blr +-END (BP_SYM (__mpn_rshift)) ++END (__mpn_rshift) +diff --git a/sysdeps/powerpc/powerpc32/setjmp-common.S b/sysdeps/powerpc/powerpc32/setjmp-common.S +index 8f2b36cfb1901ba7..2ccf9df166b51b5c 100644 +--- a/sysdeps/powerpc/powerpc32/setjmp-common.S ++++ b/sysdeps/powerpc/powerpc32/setjmp-common.S +@@ -24,12 +24,9 @@ + #else + # include + #endif +-#include +-#include + + +-ENTRY (BP_SYM (__sigsetjmp)) +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) ++ENTRY (__sigsetjmp) + + #ifdef PTR_MANGLE + mr r5,r1 +@@ -68,6 +65,6 @@ ENTRY (BP_SYM (__sigsetjmp)) + li r3,0 + blr + #else +- b BP_SYM (__sigjmp_save@local) ++ b __sigjmp_save@local + #endif +-END (BP_SYM (__sigsetjmp)) ++END (__sigsetjmp) +diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S +index 2e454c0722e28129..1d3fea305f8c02cc 100644 +--- a/sysdeps/powerpc/powerpc32/start.S ++++ b/sysdeps/powerpc/powerpc32/start.S +@@ -35,7 +35,6 @@ + . */ + + #include +-#include "bp-sym.h" + + /* We do not want .eh_frame info for crt1.o since crt1.o is linked + before crtbegin.o, the file defining __EH_FRAME_BEGIN__. */ +@@ -53,7 +52,7 @@ + .align 2 + L(start_addresses): + .long _SDA_BASE_ +- .long BP_SYM (main) ++ .long main + .long __libc_csu_init + .long __libc_csu_fini + ASM_SIZE_DIRECTIVE(L(start_addresses)) +@@ -86,7 +85,7 @@ ENTRY(_start) + lwzu r13,L(start_addresses)@l(r8) + #endif + /* and continue in libc-start, in glibc. */ +- b JUMPTARGET(BP_SYM (__libc_start_main)) ++ b JUMPTARGET(__libc_start_main) + END(_start) + + /* Define a symbol for the first piece of initialized data. */ +diff --git a/sysdeps/powerpc/powerpc32/stpcpy.S b/sysdeps/powerpc/powerpc32/stpcpy.S +index 4ae8c71e753e77c8..9e99e86c51471a7e 100644 +--- a/sysdeps/powerpc/powerpc32/stpcpy.S ++++ b/sysdeps/powerpc/powerpc32/stpcpy.S +@@ -17,35 +17,23 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* char * [r3] stpcpy (char *dest [r3], const char *src [r4]) */ + +-EALIGN (BP_SYM (__stpcpy), 4, 0) ++EALIGN (__stpcpy, 4, 0) + + #define rTMP r0 + #define rRTN r3 +-#if __BOUNDED_POINTERS__ +-# define rDEST r4 /* pointer to previous word in dest */ +-# define rSRC r5 /* pointer to previous word in src */ +-# define rLOW r11 +-# define rHIGH r12 +-#else +-# define rDEST r3 /* pointer to previous word in dest */ +-# define rSRC r4 /* pointer to previous word in src */ +-#endif ++#define rDEST r3 /* pointer to previous word in dest */ ++#define rSRC r4 /* pointer to previous word in src */ + #define rWORD r6 /* current word from src */ + #define rFEFE r7 /* 0xfefefeff */ + #define r7F7F r8 /* 0x7f7f7f7f */ + #define rNEG r9 /* ~(word in src | 0x7f7f7f7f) */ + #define rALT r10 /* alternate word from src */ + +- CHECK_BOUNDS_LOW (rSRC, rLOW, rHIGH) +- CHECK_BOUNDS_LOW (rDEST, rLOW, rHIGH) +- STORE_RETURN_BOUNDS (rLOW, rHIGH) + + or rTMP, rSRC, rDEST + clrlwi. rTMP, rTMP, 30 +@@ -99,8 +87,6 @@ L(g1): + stbu rTMP, 1(rDEST) + beqlr- + stbu rALT, 1(rDEST) +- CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt) +- STORE_RETURN_VALUE (rDEST) + blr + #endif + +@@ -123,15 +109,11 @@ L(u0): lbzu rALT, 1(rSRC) + cmpwi rWORD, 0 + bne+ L(u0) + L(u2): stbu rWORD, 1(rDEST) +- CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt) +- STORE_RETURN_VALUE (rDEST) + blr + L(u1): stbu rALT, 1(rDEST) +- CHECK_BOUNDS_HIGH (rDEST, rHIGH, twlgt) +- STORE_RETURN_VALUE (rDEST) + blr +-END (BP_SYM (__stpcpy)) ++END (__stpcpy) + +-weak_alias (BP_SYM (__stpcpy), BP_SYM (stpcpy)) ++weak_alias (__stpcpy, stpcpy) + libc_hidden_def (__stpcpy) + libc_hidden_builtin_def (stpcpy) +diff --git a/sysdeps/powerpc/powerpc32/strchr.S b/sysdeps/powerpc/powerpc32/strchr.S +index c8a2c2bbbc11036b..a045675f07646646 100644 +--- a/sysdeps/powerpc/powerpc32/strchr.S ++++ b/sysdeps/powerpc/powerpc32/strchr.S +@@ -17,26 +17,18 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how this works. */ + + /* char * [r3] strchr (const char *s [r3] , int c [r4] ) */ + +-ENTRY (BP_SYM (strchr)) ++ENTRY (strchr) + + #define rTMP1 r0 + #define rRTN r3 /* outgoing result */ +-#if __BOUNDED_POINTERS__ +-# define rSTR r4 +-# define rCHR r5 /* byte we're looking for, spread over the whole word */ +-# define rWORD r8 /* the current word */ +-#else +-# define rSTR r8 /* current word pointer */ +-# define rCHR r4 /* byte we're looking for, spread over the whole word */ +-# define rWORD r5 /* the current word */ +-#endif ++#define rSTR r8 /* current word pointer */ ++#define rCHR r4 /* byte we're looking for, spread over the whole word */ ++#define rWORD r5 /* the current word */ + #define rCLZB rCHR /* leading zero byte count */ + #define rFEFE r6 /* constant 0xfefefeff (-0x01010101) */ + #define r7F7F r7 /* constant 0x7f7f7f7f */ +@@ -47,8 +39,6 @@ ENTRY (BP_SYM (strchr)) + #define rTMP4 rIGN + #define rTMP5 rMASK + +- CHECK_BOUNDS_LOW (rSTR, rTMP1, rTMP2) +- STORE_RETURN_BOUNDS (rTMP1, rTMP2) + + rlwimi rCHR, rCHR, 8, 16, 23 + li rMASK, -1 +@@ -96,7 +86,6 @@ L(loopentry): + zero byte, in which case we return a match. */ + and. rTMP5, rTMP1, rTMP2 + li rRTN, 0 +- STORE_RETURN_VALUE (rSTR) + beqlr + /* At this point: + rTMP5 bytes are 0x80 for each match of c, 0 otherwise. +@@ -131,8 +120,6 @@ L(loopentry): + #endif + srwi rCLZB, rCLZB, 3 + add rRTN, rSTR, rCLZB +- CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge) +- STORE_RETURN_VALUE (rSTR) + blr + + L(foundit): +@@ -152,10 +139,8 @@ L(foundit): + srwi rCLZB, rCLZB, 3 + #endif + add rRTN, rSTR, rCLZB +- CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge) +- STORE_RETURN_VALUE (rSTR) + blr +-END (BP_SYM (strchr)) ++END (strchr) + +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/powerpc/powerpc32/strcmp.S b/sysdeps/powerpc/powerpc32/strcmp.S +index 041aa2988d2248e1..6fc6878677c139a4 100644 +--- a/sysdeps/powerpc/powerpc32/strcmp.S ++++ b/sysdeps/powerpc/powerpc32/strcmp.S +@@ -17,23 +17,17 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strcmp (const char *s1 [r3], const char *s2 [r4]) */ + +-EALIGN (BP_SYM (strcmp), 4, 0) ++EALIGN (strcmp, 4, 0) + + #define rTMP2 r0 + #define rRTN r3 + #define rSTR1 r3 /* first string arg */ + #define rSTR2 r4 /* second string arg */ +-#if __BOUNDED_POINTERS__ +-# define rHIGH1 r11 +-# define rHIGH2 r12 +-#endif + #define rWORD1 r5 /* current word in s1 */ + #define rWORD2 r6 /* current word in s2 */ + #define rFEFE r7 /* constant 0xfefefeff (-0x01010101) */ +@@ -42,8 +36,6 @@ EALIGN (BP_SYM (strcmp), 4, 0) + #define rBITDIF r10 /* bits that differ in s1 & s2 words */ + #define rTMP r11 + +- CHECK_BOUNDS_LOW (rSTR1, rTMP, rHIGH1) +- CHECK_BOUNDS_LOW (rSTR2, rTMP, rHIGH2) + + or rTMP, rSTR2, rSTR1 + clrlwi. rTMP, rTMP, 30 +@@ -118,7 +110,6 @@ L(endstring): + bgelr+ cr1 + L(equal): + li rRTN, 0 +- /* GKM FIXME: check high bounds. */ + blr + + L(different): +@@ -128,7 +119,6 @@ L(different): + bgelr+ + L(highbit): + ori rRTN, rWORD2, 1 +- /* GKM FIXME: check high bounds. */ + blr + #endif + +@@ -152,11 +142,9 @@ L(u1): cmpwi cr1, rWORD1, 0 + cmpw rWORD1, rWORD2 + bne+ cr1, L(u0) + L(u3): sub rRTN, rWORD1, rWORD2 +- /* GKM FIXME: check high bounds. */ + blr + L(u4): lbz rWORD1, -1(rSTR1) + sub rRTN, rWORD1, rWORD2 +- /* GKM FIXME: check high bounds. */ + blr +-END (BP_SYM (strcmp)) ++END (strcmp) + libc_hidden_builtin_def (strcmp) +diff --git a/sysdeps/powerpc/powerpc32/strcpy.S b/sysdeps/powerpc/powerpc32/strcpy.S +index 2bc50155da0b486c..4e21f9b17c332cc8 100644 +--- a/sysdeps/powerpc/powerpc32/strcpy.S ++++ b/sysdeps/powerpc/powerpc32/strcpy.S +@@ -17,43 +17,27 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* char * [r3] strcpy (char *dest [r3], const char *src [r4]) */ + +-EALIGN (BP_SYM (strcpy), 4, 0) ++EALIGN (strcpy, 4, 0) + + #define rTMP r0 + #define rRTN r3 /* incoming DEST arg preserved as result */ +-#if __BOUNDED_POINTERS__ +-# define rDEST r4 /* pointer to previous word in dest */ +-# define rSRC r5 /* pointer to previous word in src */ +-# define rLOW r11 +-# define rHIGH r12 +-#else +-# define rSRC r4 /* pointer to previous word in src */ +-# define rDEST r5 /* pointer to previous word in dest */ +-#endif ++#define rSRC r4 /* pointer to previous word in src */ ++#define rDEST r5 /* pointer to previous word in dest */ + #define rWORD r6 /* current word from src */ + #define rFEFE r7 /* constant 0xfefefeff (-0x01010101) */ + #define r7F7F r8 /* constant 0x7f7f7f7f */ + #define rNEG r9 /* ~(word in s1 | 0x7f7f7f7f) */ + #define rALT r10 /* alternate word from src */ + +- CHECK_BOUNDS_LOW (rSRC, rLOW, rHIGH) +- CHECK_BOUNDS_LOW (rDEST, rLOW, rHIGH) +- STORE_RETURN_BOUNDS (rLOW, rHIGH) + + or rTMP, rSRC, rRTN + clrlwi. rTMP, rTMP, 30 +-#if __BOUNDED_POINTERS__ +- addi rDEST, rDEST, -4 +-#else + addi rDEST, rRTN, -4 +-#endif + bne L(unaligned) + + lis rFEFE, -0x101 +@@ -103,7 +87,6 @@ L(g1): + stb rTMP, 6(rDEST) + beqlr- + stb rALT, 7(rDEST) +- /* GKM FIXME: check high bound. */ + blr + #endif + +@@ -126,11 +109,9 @@ L(u0): lbzu rALT, 1(rSRC) + cmpwi rWORD, 0 + bne+ L(u0) + L(u2): stb rWORD, 1(rDEST) +- /* GKM FIXME: check high bound. */ + blr + L(u1): stb rALT, 1(rDEST) +- /* GKM FIXME: check high bound. */ + blr + +-END (BP_SYM (strcpy)) ++END (strcpy) + libc_hidden_builtin_def (strcpy) +diff --git a/sysdeps/powerpc/powerpc32/strlen.S b/sysdeps/powerpc/powerpc32/strlen.S +index eef1114d5de0dd66..65637a976751fd68 100644 +--- a/sysdeps/powerpc/powerpc32/strlen.S ++++ b/sysdeps/powerpc/powerpc32/strlen.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* The algorithm here uses the following techniques: + +@@ -77,7 +75,7 @@ + + /* int [r3] strlen (char *s [r3]) */ + +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + + #define rTMP4 r0 + #define rRTN r3 /* incoming STR arg, outgoing result */ +@@ -93,7 +91,6 @@ ENTRY (BP_SYM (strlen)) + #define rTMP2 r11 + #define rTMP3 r12 + +- CHECK_BOUNDS_LOW (rRTN, rTMP1, rTMP2) + + clrrwi rSTR, rRTN, 2 + lis r7F7F, 0x7f7f +@@ -165,7 +162,6 @@ L(done0): + subf rTMP1, rRTN, rSTR + srwi rTMP3, rTMP3, 3 + add rRTN, rTMP1, rTMP3 +- /* GKM FIXME: check high bound. */ + blr + #else + +@@ -190,5 +186,5 @@ L(done1): + blr + #endif + +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/powerpc/powerpc32/strncmp.S b/sysdeps/powerpc/powerpc32/strncmp.S +index 1e2f47bf533fe25a..f48964a4c45a67fa 100644 +--- a/sysdeps/powerpc/powerpc32/strncmp.S ++++ b/sysdeps/powerpc/powerpc32/strncmp.S +@@ -17,14 +17,12 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp), 4, 0) ++EALIGN (strncmp, 4, 0) + + #define rTMP2 r0 + #define rRTN r3 +@@ -182,5 +180,5 @@ L(u1): + L(u2): lbzu rWORD1, -1(rSTR1) + L(u3): sub rRTN, rWORD1, rWORD2 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/powerpc/powerpc32/sub_n.S b/sysdeps/powerpc/powerpc32/sub_n.S +index fdce132811e0945c..7181ecd494d810c0 100644 +--- a/sysdeps/powerpc/powerpc32/sub_n.S ++++ b/sysdeps/powerpc/powerpc32/sub_n.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_sub_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, + mp_size_t size) +@@ -28,14 +26,7 @@ + possible 2-unrolled inner loop will not be. Also, watch out for the + alignment... */ + +-EALIGN (BP_SYM (__mpn_sub_n), 3, 1) +- +-#if __BOUNDED_POINTERS__ +- slwi r10,r6,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10) +-#endif ++EALIGN (__mpn_sub_n, 3, 1) + + /* Set up for loop below. */ + mtcrf 0x01,r6 +@@ -74,4 +65,4 @@ L(0): + L(1): subfe r3,r3,r3 + neg r3,r3 + blr +-END (BP_SYM (__mpn_sub_n)) ++END (__mpn_sub_n) +diff --git a/sysdeps/powerpc/powerpc32/submul_1.S b/sysdeps/powerpc/powerpc32/submul_1.S +index 35ee0d76d399f67f..4bb06c010f341df8 100644 +--- a/sysdeps/powerpc/powerpc32/submul_1.S ++++ b/sysdeps/powerpc/powerpc32/submul_1.S +@@ -17,19 +17,12 @@ + . */ + + #include +-#include +-#include + + /* mp_limb_t mpn_submul_1 (mp_ptr res_ptr, mp_srcptr s1_ptr, + mp_size_t s1_size, mp_limb_t s2_limb) + Calculate res-s1*s2 and put result back in res; return carry. */ + +-ENTRY (BP_SYM (__mpn_submul_1)) +-#if __BOUNDED_POINTERS__ +- slwi r10,r5,2 /* convert limbs to bytes */ +- CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10) +- CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10) +-#endif ++ENTRY (__mpn_submul_1) + mtctr r5 + + lwz r0,0(r4) +@@ -55,4 +48,4 @@ L(0): lwzu r0,4(r4) + L(1): stw r8,4(r3) + addze r3,r10 + blr +-END (BP_SYM (__mpn_submul_1)) ++END (__mpn_submul_1) +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S +index 9f0390e6f813ada5..cca8768bf71e971a 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S +@@ -19,13 +19,10 @@ + #include + #define _ERRNO_H 1 + #include +-#include +-#include + + .comm __curbrk,4,4 + .section ".text" +-ENTRY (BP_SYM (__brk)) +- DISCARD_BOUNDS (r3) /* the bounds are meaningless, so toss 'em */ ++ENTRY (__brk) + mflr r0 + stwu r1,-16(r1) + cfi_adjust_cfa_offset (16) +@@ -50,6 +47,6 @@ ENTRY (BP_SYM (__brk)) + blelr+ + li r3,ENOMEM + b __syscall_error@local +-END (BP_SYM (__brk)) ++END (__brk) + +-weak_alias (BP_SYM (__brk), BP_SYM (brk)) ++weak_alias (__brk, brk) +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S +index fb16519efa455985..d088a16824085236 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S +@@ -20,8 +20,6 @@ + #define _ERRNO_H 1 + #include + #include +-#include +-#include + + #define CLONE_VM 0x00000100 + #define CLONE_THREAD 0x00010000 +@@ -35,10 +33,7 @@ + int flags [r5], void *arg [r6], void *parent_tid [r7], + void *tls [r8], void *child_tid [r9]); */ + +-ENTRY (BP_SYM (__clone)) +- /* GKM FIXME: add bounds checks, where sensible. */ +- DISCARD_BOUNDS (r4) +- DISCARD_BOUNDS (r6) ++ENTRY (__clone) + + /* Check for child_stack == NULL || fn == NULL. */ + cmpwi cr0,r4,0 +@@ -124,6 +119,6 @@ L(badargs): + b __syscall_error@local + + cfi_startproc +-END (BP_SYM (__clone)) ++END (__clone) + +-weak_alias (BP_SYM (__clone), BP_SYM (clone)) ++weak_alias (__clone, clone) diff --git a/SOURCES/glibc-rh1505492-bounded-17.patch b/SOURCES/glibc-rh1505492-bounded-17.patch new file mode 100644 index 0000000..68bb578 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-17.patch @@ -0,0 +1,1220 @@ +commit 2d67d91ac08aa2f793d220ad8712541fefa0ba79 +Author: Joseph Myers +Date: Wed Mar 6 00:10:21 2013 +0000 + + Remove powerpc64 bounded-pointers code. + +Conflicts: + sysdeps/generic/bp-sym.h + (Copyright header change; file deleted manually.) + sysdeps/powerpc/powerpc64/bp-asm.h + sysdeps/powerpc/powerpc64/memset.S + sysdeps/powerpc/powerpc64/power4/memset.S + sysdeps/powerpc/powerpc64/power6/memset.S + sysdeps/powerpc/powerpc64/power7/memchr.S + sysdeps/powerpc/powerpc64/power7/memcmp.S + sysdeps/powerpc/powerpc64/power7/memrchr.S + sysdeps/powerpc/powerpc64/power7/memset.S + sysdeps/powerpc/powerpc64/power7/strnlen.S + sysdeps/powerpc/powerpc64/setjmp-common.S + sysdeps/powerpc/powerpc64/stpcpy.S + sysdeps/powerpc/powerpc64/strcmp.S + sysdeps/powerpc/powerpc64/strcpy.S + sysdeps/powerpc/powerpc64/strlen.S + (Resolved textual conflicts due to previous backports.) + +diff --git a/sysdeps/generic/bp-sym.h b/sysdeps/generic/bp-sym.h +deleted file mode 100644 +index f581e5fc59dfedd9..0000000000000000 +--- a/sysdeps/generic/bp-sym.h ++++ /dev/null +@@ -1,25 +0,0 @@ +-/* Bounded-pointer symbol modifier. +- Copyright (C) 2000 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Greg McGary +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#define BP_SYM(name) _BP_SYM (name) +-#if __BOUNDED_POINTERS__ +-# define _BP_SYM(name) __BP_##name +-#else +-# define _BP_SYM(name) name +-#endif +diff --git a/sysdeps/powerpc/powerpc64/__longjmp-common.S b/sysdeps/powerpc/powerpc64/__longjmp-common.S +index 95caaa77c322562a..da65c6f1bbdb6dc3 100644 +--- a/sysdeps/powerpc/powerpc64/__longjmp-common.S ++++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S +@@ -24,8 +24,6 @@ + #else + # include + #endif +-#include +-#include + + #ifndef __NO_VMX__ + .section ".toc","aw" +@@ -45,9 +43,8 @@ + #endif + + .machine "altivec" +-ENTRY (BP_SYM (__longjmp)) ++ENTRY (__longjmp) + CALL_MCOUNT 2 +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) + #ifndef __NO_VMX__ + ld r5,.LC__dl_hwcap@toc(r2) + # ifdef SHARED +@@ -178,4 +175,4 @@ L(no_vmx): + lfd fp31,((JB_FPRS+17)*8)(r3) + mr r3,r4 + blr +-END (BP_SYM (__longjmp)) ++END (__longjmp) +diff --git a/sysdeps/powerpc/powerpc64/a2/memcpy.S b/sysdeps/powerpc/powerpc64/a2/memcpy.S +index 4ffe19a0e6b04d2f..f640feb45ce306c6 100644 +--- a/sysdeps/powerpc/powerpc64/a2/memcpy.S ++++ b/sysdeps/powerpc/powerpc64/a2/memcpy.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include +-#include + + #define PREFETCH_AHEAD 4 /* no cache lines SRC prefetching ahead */ + #define ZERO_AHEAD 2 /* no cache lines DST zeroing ahead */ +@@ -32,7 +30,7 @@ + + + .machine a2 +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT 3 + + dcbt 0,r4 /* Prefetch ONE SRC cacheline */ +@@ -522,5 +520,5 @@ L(endloop2_128): + b L(lessthancacheline) + + +-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS) ++END_GEN_TB (memcpy,TB_TOCLESS) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc64/bp-asm.h b/sysdeps/powerpc/powerpc64/bp-asm.h +deleted file mode 100644 +index f1ec72204b685801..0000000000000000 +--- a/sysdeps/powerpc/powerpc64/bp-asm.h ++++ /dev/null +@@ -1,113 +0,0 @@ +-/* Bounded-pointer definitions for PowerPC64 assembler. +- Copyright (C) 2000, 2002 Free Software Foundation, Inc. +- Contributed by Greg McGary +- +- This file is part of the GNU C Library. Its master source is NOT part of +- the C library, however. The master source lives in the GNU MP Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library; see the file COPYING.LIB. If +- not, see . */ +- +-#if __BOUNDED_POINTERS__ +- +-/* Byte offsets of BP components. */ +-# define oVALUE 0 +-# define oLOW 4 +-# define oHIGH 8 +- +-/* Don't check bounds, just convert the BP register to its simple +- pointer value. */ +- +-# define DISCARD_BOUNDS(rBP) \ +- ld rBP, oVALUE(rBP) +- +-/* Check low bound, with the side effect that the BP register is converted +- its simple pointer value. Move the high bound into a register for +- later use. */ +- +-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH) \ +- ld rHIGH, oHIGH(rBP); \ +- ld rLOW, oLOW(rBP); \ +- ld rBP, oVALUE(rBP); \ +- tdllt rBP, rLOW +- +-/* Check the high bound, which is in a register, using the given +- conditional trap instruction. */ +- +-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) \ +- TWLcc rVALUE, rHIGH +- +-/* Check the high bound, which is stored at the return-value's high +- bound slot, using the given conditional trap instruction. */ +- +-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc) \ +- ld rHIGH, oHIGH(rRTN); \ +- TWLcc rVALUE, rHIGH +- +-/* Check both bounds, with the side effect that the BP register is +- converted to its simple pointer value. */ +- +-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH) \ +- CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH); \ +- tdlge rBP, rHIGH +- +-/* Check bounds on a memory region of given length, with the side +- effect that the BP register is converted to its simple pointer +- value. */ +- +-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH) \ +- CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH); \ +- sub rHIGH, rHIGH, rLENGTH; \ +- tdlgt rBP, rHIGH +- +-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH) \ +- CHECK_BOUNDS_LOW (rBP, rLOW, rHIGH); \ +- subi rHIGH, rHIGH, LENGTH; \ +- tdlgt rBP, rHIGH +- +-/* Store a pointer value register into the return-value's pointer +- value slot. */ +- +-# define STORE_RETURN_VALUE(rVALUE) \ +- std rVALUE, oVALUE(rRTN) +- +-/* Store a low and high bounds into the return-value's pointer bounds +- slots. */ +- +-# define STORE_RETURN_BOUNDS(rLOW, rHIGH) \ +- std rLOW, oLOW(rRTN); \ +- std rHIGH, oHIGH(rRTN) +- +-/* Stuff zero value/low/high into the BP addressed by rRTN. */ +- +-# define RETURN_NULL_BOUNDED_POINTER \ +- li r4, 0; \ +- STORE_RETURN_VALUE (r4); \ +- STORE_RETURN_BOUNDS (r4, r4) +- +-#else +- +-# define DISCARD_BOUNDS(rBP) +-# define CHECK_BOUNDS_LOW(rBP, rLOW, rHIGH) +-# define CHECK_BOUNDS_HIGH(rVALUE, rHIGH, TWLcc) +-# define CHECK_BOUNDS_HIGH_RTN(rVALUE, rHIGH, TWLcc) +-# define CHECK_BOUNDS_BOTH(rBP, rLOW, rHIGH) +-# define CHECK_BOUNDS_BOTH_WIDE(rBP, rLOW, rHIGH, rLENGTH) +-# define CHECK_BOUNDS_BOTH_WIDE_LIT(rBP, rLOW, rHIGH, LENGTH) +-# define STORE_RETURN_VALUE(rVALUE) +-# define STORE_RETURN_BOUNDS(rLOW, rHIGH) +- +-# define RETURN_NULL_BOUNDED_POINTER li rRTN, 0 +- +-#endif +diff --git a/sysdeps/powerpc/powerpc64/cell/memcpy.S b/sysdeps/powerpc/powerpc64/cell/memcpy.S +index 5c2019498af23df0..ad2b506f1e5fba74 100644 +--- a/sysdeps/powerpc/powerpc64/cell/memcpy.S ++++ b/sysdeps/powerpc/powerpc64/cell/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + #define PREFETCH_AHEAD 6 /* no cache lines SRC prefetching ahead */ + #define ZERO_AHEAD 4 /* no cache lines DST zeroing ahead */ +@@ -41,7 +39,7 @@ + + .align 7 + +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT 3 + + dcbt 0,r4 /* Prefetch ONE SRC cacheline */ +@@ -240,5 +238,5 @@ EALIGN (BP_SYM (memcpy), 5, 0) + stb r0,0(r6) + 1: blr + +-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS) ++END_GEN_TB (memcpy,TB_TOCLESS) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc64/memcpy.S b/sysdeps/powerpc/powerpc64/memcpy.S +index 680560e3513be8e0..7652fe380d62d45c 100644 +--- a/sysdeps/powerpc/powerpc64/memcpy.S ++++ b/sysdeps/powerpc/powerpc64/memcpy.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst'. +@@ -35,7 +33,7 @@ + posible when both source and destination are doubleword aligned. + Each case has a optimized unrolled loop. */ + +-EALIGN (BP_SYM (memcpy), 5, 0) ++EALIGN (memcpy, 5, 0) + CALL_MCOUNT 3 + + cmpldi cr1,5,31 +@@ -391,5 +389,5 @@ EALIGN (BP_SYM (memcpy), 5, 0) + ld 31,-8(1) + ld 3,-16(1) + blr +-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS) ++END_GEN_TB (memcpy,TB_TOCLESS) + libc_hidden_builtin_def (memcpy) +diff --git a/sysdeps/powerpc/powerpc64/memset.S b/sysdeps/powerpc/powerpc64/memset.S +index caba3564a136c9b1..9177dfc71800487f 100644 +--- a/sysdeps/powerpc/powerpc64/memset.S ++++ b/sysdeps/powerpc/powerpc64/memset.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include +-#include + + .section ".toc","aw" + .LC0: +@@ -34,22 +32,15 @@ + cache line (256 bits). There is a special case for setting cache lines + to 0, to take advantage of the dcbz instruction. */ + +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + CALL_MCOUNT 3 + + #define rTMP r0 + #define rRTN r3 /* Initial value of 1st argument. */ +-#if __BOUNDED_POINTERS__ +-# define rMEMP0 r4 /* Original value of 1st arg. */ +-# define rCHR r5 /* Char to set in each byte. */ +-# define rLEN r6 /* Length of region to set. */ +-# define rMEMP r10 /* Address at which we are storing. */ +-#else +-# define rMEMP0 r3 /* Original value of 1st arg. */ +-# define rCHR r4 /* Char to set in each byte. */ +-# define rLEN r5 /* Length of region to set. */ +-# define rMEMP r6 /* Address at which we are storing. */ +-#endif ++#define rMEMP0 r3 /* Original value of 1st arg. */ ++#define rCHR r4 /* Char to set in each byte. */ ++#define rLEN r5 /* Length of region to set. */ ++#define rMEMP r6 /* Address at which we are storing. */ + #define rALIGN r7 /* Number of bytes we are setting now (when aligning). */ + #define rMEMP2 r8 + +@@ -57,14 +48,6 @@ EALIGN (BP_SYM (memset), 5, 0) + #define rCLS r8 /* Cache line size obtained from static. */ + #define rCLM r9 /* Cache line size mask to check for cache alignment. */ + L(_memset): +-#if __BOUNDED_POINTERS__ +- cmpldi cr1, rRTN, 0 +- CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN) +- beq cr1, L(b0) +- STORE_RETURN_VALUE (rMEMP0) +- STORE_RETURN_BOUNDS (rTMP, rTMP2) +-L(b0): +-#endif + /* Take care of case for size <= 4. */ + cmpldi cr1, rLEN, 8 + andi. rALIGN, rMEMP0, 7 +@@ -262,27 +245,18 @@ L(medium_27f): + L(medium_28t): + std rCHR, -8(rMEMP) + blr +-END_GEN_TB (BP_SYM (memset),TB_TOCLESS) ++END_GEN_TB (memset,TB_TOCLESS) + libc_hidden_builtin_def (memset) + + #ifndef NO_BZERO_IMPL + /* Copied from bzero.S to prevent the linker from inserting a stub + between bzero and memset. */ +-ENTRY (BP_SYM (__bzero)) ++ENTRY (__bzero) + CALL_MCOUNT 3 +-#if __BOUNDED_POINTERS__ +- mr r6,r4 +- li r5,0 +- mr r4,r3 +- /* Tell memset that we don't want a return value. */ +- li r3,0 +- b L(_memset) +-#else + mr r5,r4 + li r4,0 + b L(_memset) +-#endif +-END_GEN_TB (BP_SYM (__bzero),TB_TOCLESS) ++END_GEN_TB (__bzero,TB_TOCLESS) + +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) + #endif +diff --git a/sysdeps/powerpc/powerpc64/power4/memset.S b/sysdeps/powerpc/powerpc64/power4/memset.S +index 55e4013f1c7062c6..cfb731ddf49b64f4 100644 +--- a/sysdeps/powerpc/powerpc64/power4/memset.S ++++ b/sysdeps/powerpc/powerpc64/power4/memset.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. +@@ -29,22 +27,15 @@ + to 0, to take advantage of the dcbz instruction. */ + + .machine power4 +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + CALL_MCOUNT 3 + + #define rTMP r0 + #define rRTN r3 /* Initial value of 1st argument. */ +-#if __BOUNDED_POINTERS__ +-# define rMEMP0 r4 /* Original value of 1st arg. */ +-# define rCHR r5 /* Char to set in each byte. */ +-# define rLEN r6 /* Length of region to set. */ +-# define rMEMP r10 /* Address at which we are storing. */ +-#else +-# define rMEMP0 r3 /* Original value of 1st arg. */ +-# define rCHR r4 /* Char to set in each byte. */ +-# define rLEN r5 /* Length of region to set. */ +-# define rMEMP r6 /* Address at which we are storing. */ +-#endif ++#define rMEMP0 r3 /* Original value of 1st arg. */ ++#define rCHR r4 /* Char to set in each byte. */ ++#define rLEN r5 /* Length of region to set. */ ++#define rMEMP r6 /* Address at which we are storing. */ + #define rALIGN r7 /* Number of bytes we are setting now (when aligning). */ + #define rMEMP2 r8 + +@@ -52,14 +43,6 @@ EALIGN (BP_SYM (memset), 5, 0) + #define rCLS r8 /* Cache line size obtained from static. */ + #define rCLM r9 /* Cache line size mask to check for cache alignment. */ + L(_memset): +-#if __BOUNDED_POINTERS__ +- cmpldi cr1, rRTN, 0 +- CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN) +- beq cr1, L(b0) +- STORE_RETURN_VALUE (rMEMP0) +- STORE_RETURN_BOUNDS (rTMP, rTMP2) +-L(b0): +-#endif + /* Take care of case for size <= 4. */ + cmpldi cr1, rLEN, 8 + andi. rALIGN, rMEMP0, 7 +@@ -250,27 +233,18 @@ L(medium_27f): + L(medium_28t): + std rCHR, -8(rMEMP) + blr +-END_GEN_TB (BP_SYM (memset),TB_TOCLESS) ++END_GEN_TB (memset,TB_TOCLESS) + libc_hidden_builtin_def (memset) + + #ifndef NO_BZERO_IMPL + /* Copied from bzero.S to prevent the linker from inserting a stub + between bzero and memset. */ +-ENTRY (BP_SYM (__bzero)) ++ENTRY (__bzero) + CALL_MCOUNT 3 +-#if __BOUNDED_POINTERS__ +- mr r6,r4 +- li r5,0 +- mr r4,r3 +- /* Tell memset that we don't want a return value. */ +- li r3,0 +- b L(_memset) +-#else + mr r5,r4 + li r4,0 + b L(_memset) +-#endif +-END_GEN_TB (BP_SYM (__bzero),TB_TOCLESS) ++END_GEN_TB (__bzero,TB_TOCLESS) + +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) + #endif +diff --git a/sysdeps/powerpc/powerpc64/power4/strncmp.S b/sysdeps/powerpc/powerpc64/power4/strncmp.S +index 2ce93040765b2321..412b92e585000f44 100644 +--- a/sysdeps/powerpc/powerpc64/power4/strncmp.S ++++ b/sysdeps/powerpc/powerpc64/power4/strncmp.S +@@ -17,14 +17,12 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp), 4, 0) ++EALIGN (strncmp, 4, 0) + CALL_MCOUNT 3 + + #define rTMP2 r0 +@@ -32,9 +30,6 @@ EALIGN (BP_SYM(strncmp), 4, 0) + #define rSTR1 r3 /* first string arg */ + #define rSTR2 r4 /* second string arg */ + #define rN r5 /* max string length */ +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Current PPC gcc does not support -fbounds-check or -fbounded-pointers. */ + #define rWORD1 r6 /* current word in s1 */ + #define rWORD2 r7 /* current word in s2 */ + #define rWORD3 r10 +@@ -222,5 +217,5 @@ L(u4): sub rRTN, rWORD1, rWORD2 + L(ux): + li rRTN, 0 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/powerpc/powerpc64/power6/memset.S b/sysdeps/powerpc/powerpc64/power6/memset.S +index d2a8d3403f6058ce..b28d285232bbd595 100644 +--- a/sysdeps/powerpc/powerpc64/power6/memset.S ++++ b/sysdeps/powerpc/powerpc64/power6/memset.S +@@ -18,8 +18,6 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. +@@ -29,34 +27,19 @@ + to 0, to take advantage of the dcbz instruction. */ + + .machine power6 +-EALIGN (BP_SYM (memset), 7, 0) ++EALIGN (memset, 7, 0) + CALL_MCOUNT 3 + + #define rTMP r0 + #define rRTN r3 /* Initial value of 1st argument. */ +-#if __BOUNDED_POINTERS__ +-# define rMEMP0 r4 /* Original value of 1st arg. */ +-# define rCHR r5 /* Char to set in each byte. */ +-# define rLEN r6 /* Length of region to set. */ +-# define rMEMP r10 /* Address at which we are storing. */ +-#else +-# define rMEMP0 r3 /* Original value of 1st arg. */ +-# define rCHR r4 /* Char to set in each byte. */ +-# define rLEN r5 /* Length of region to set. */ +-# define rMEMP r6 /* Address at which we are storing. */ +-#endif ++#define rMEMP0 r3 /* Original value of 1st arg. */ ++#define rCHR r4 /* Char to set in each byte. */ ++#define rLEN r5 /* Length of region to set. */ ++#define rMEMP r6 /* Address at which we are storing. */ + #define rALIGN r7 /* Number of bytes we are setting now (when aligning). */ + #define rMEMP2 r8 + #define rMEMP3 r9 /* Alt mem pointer. */ + L(_memset): +-#if __BOUNDED_POINTERS__ +- cmpldi cr1, rRTN, 0 +- CHECK_BOUNDS_BOTH_WIDE (rMEMP0, rTMP, rTMP2, rLEN) +- beq cr1, L(b0) +- STORE_RETURN_VALUE (rMEMP0) +- STORE_RETURN_BOUNDS (rTMP, rTMP2) +-L(b0): +-#endif + /* Take care of case for size <= 4. */ + cmpldi cr1, rLEN, 8 + andi. rALIGN, rMEMP0, 7 +@@ -394,27 +377,18 @@ L(medium_27f): + L(medium_28t): + std rCHR, -8(rMEMP) + blr +-END_GEN_TB (BP_SYM (memset),TB_TOCLESS) ++END_GEN_TB (memset,TB_TOCLESS) + libc_hidden_builtin_def (memset) + + #ifndef NO_BZERO_IMPL + /* Copied from bzero.S to prevent the linker from inserting a stub + between bzero and memset. */ +-ENTRY (BP_SYM (__bzero)) ++ENTRY (__bzero) + CALL_MCOUNT 3 +-#if __BOUNDED_POINTERS__ +- mr r6,r4 +- li r5,0 +- mr r4,r3 +- /* Tell memset that we don't want a return value. */ +- li r3,0 +- b L(_memset) +-#else + mr r5,r4 + li r4,0 + b L(_memset) +-#endif +-END_GEN_TB (BP_SYM (__bzero),TB_TOCLESS) ++END_GEN_TB (__bzero,TB_TOCLESS) + +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) + #endif +diff --git a/sysdeps/powerpc/powerpc64/power7/mempcpy.S b/sysdeps/powerpc/powerpc64/power7/mempcpy.S +index ca524b584f1bcf92..17db88f65a87a198 100644 +--- a/sysdeps/powerpc/powerpc64/power7/mempcpy.S ++++ b/sysdeps/powerpc/powerpc64/power7/mempcpy.S +@@ -18,15 +18,13 @@ + . */ + + #include +-#include +-#include + + + /* __ptr_t [r3] __mempcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]); + Returns 'dst' + 'len'. */ + + .machine power7 +-EALIGN (BP_SYM (__mempcpy), 5, 0) ++EALIGN (__mempcpy, 5, 0) + CALL_MCOUNT 3 + + cmpldi cr1,5,31 +@@ -465,7 +463,7 @@ L(end_unaligned_loop): + add 3,3,5 + blr + +-END_GEN_TB (BP_SYM (__mempcpy),TB_TOCLESS) +-libc_hidden_def (BP_SYM (__mempcpy)) +-weak_alias (BP_SYM (__mempcpy), BP_SYM (mempcpy)) ++END_GEN_TB (__mempcpy,TB_TOCLESS) ++libc_hidden_def (__mempcpy) ++weak_alias (__mempcpy, mempcpy) + libc_hidden_builtin_def (mempcpy) +diff --git a/sysdeps/powerpc/powerpc64/power7/memset.S b/sysdeps/powerpc/powerpc64/power7/memset.S +index 0f7d03e19dd5d2b8..73c129a4c1f64dcd 100644 +--- a/sysdeps/powerpc/powerpc64/power7/memset.S ++++ b/sysdeps/powerpc/powerpc64/power7/memset.S +@@ -18,14 +18,12 @@ + . */ + + #include +-#include +-#include + + /* __ptr_t [r3] memset (__ptr_t s [r3], int c [r4], size_t n [r5])); + Returns 's'. */ + + .machine power7 +-EALIGN (BP_SYM (memset), 5, 0) ++EALIGN (memset, 5, 0) + CALL_MCOUNT 3 + + L(_memset): +@@ -382,18 +380,18 @@ L(small): + stw 4,4(10) + blr + +-END_GEN_TB (BP_SYM (memset),TB_TOCLESS) ++END_GEN_TB (memset,TB_TOCLESS) + libc_hidden_builtin_def (memset) + + #ifndef NO_BZERO_IMPL + /* Copied from bzero.S to prevent the linker from inserting a stub + between bzero and memset. */ +-ENTRY (BP_SYM (__bzero)) ++ENTRY (__bzero) + CALL_MCOUNT 3 + mr r5,r4 + li r4,0 + b L(_memset) +-END_GEN_TB (BP_SYM (__bzero),TB_TOCLESS) ++END_GEN_TB (__bzero,TB_TOCLESS) + +-weak_alias (BP_SYM (__bzero), BP_SYM (bzero)) ++weak_alias (__bzero, bzero) + #endif +diff --git a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S +index 2eaaf2fc13004acc..17d79a10240dcd26 100644 +--- a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S ++++ b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] rawmemchr (void *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(__rawmemchr)) ++ENTRY (__rawmemchr) + CALL_MCOUNT 2 + dcbt 0,r3 + clrrdi r8,r3,3 /* Align the address to doubleword boundary. */ +@@ -108,6 +106,6 @@ L(done): + srdi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of the matching char. */ + blr +-END (BP_SYM (__rawmemchr)) ++END (__rawmemchr) + weak_alias (__rawmemchr,rawmemchr) + libc_hidden_builtin_def (__rawmemchr) +diff --git a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S +index 47e2fefe59c59900..65c343e52493440c 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S ++++ b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + #include + + /* int [r3] strcasecmp (const char *s1 [r3], const char *s2 [r4] ) +@@ -33,7 +31,7 @@ + # define STRCMP strcasecmp + #endif + +-ENTRY (BP_SYM (__STRCMP)) ++ENTRY (__STRCMP) + CALL_MCOUNT 2 + + #define rRTN r3 /* Return value */ +@@ -118,7 +116,7 @@ L(done): + subf r0, rLWR2, rLWR1 + extsw rRTN, r0 + blr +-END (BP_SYM (__STRCMP)) ++END (__STRCMP) + +-weak_alias (BP_SYM (__STRCMP), BP_SYM (STRCMP)) ++weak_alias (__STRCMP, STRCMP) + libc_hidden_builtin_def (__STRCMP) +diff --git a/sysdeps/powerpc/powerpc64/power7/strchr.S b/sysdeps/powerpc/powerpc64/power7/strchr.S +index f840dfc8384b65db..ebba8ecad0045a75 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strchr.S ++++ b/sysdeps/powerpc/powerpc64/power7/strchr.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strchr (char *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(strchr)) ++ENTRY (strchr) + CALL_MCOUNT 2 + dcbt 0,r3 + clrrdi r8,r3,3 /* Align the address to doubleword boundary. */ +@@ -223,6 +221,6 @@ L(done_null): + srdi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of the matching null byte. */ + blr +-END (BP_SYM (strchr)) +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++END (strchr) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/powerpc/powerpc64/power7/strchrnul.S b/sysdeps/powerpc/powerpc64/power7/strchrnul.S +index 388d4e91a70dbf7a..8d34dc7d8d8450ae 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strchrnul.S ++++ b/sysdeps/powerpc/powerpc64/power7/strchrnul.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strchrnul (char *s [r3], int c [r4]) */ + .machine power7 +-ENTRY (BP_SYM(__strchrnul)) ++ENTRY (__strchrnul) + CALL_MCOUNT 2 + dcbt 0,r3 + clrrdi r8,r3,3 /* Align the address to doubleword boundary. */ +@@ -125,6 +123,6 @@ L(done): + srdi r0,r0,3 /* Convert leading zeros to bytes. */ + add r3,r8,r0 /* Return address of matching c/null byte. */ + blr +-END (BP_SYM (__strchrnul)) ++END (__strchrnul) + weak_alias (__strchrnul,strchrnul) + libc_hidden_builtin_def (__strchrnul) +diff --git a/sysdeps/powerpc/powerpc64/power7/strlen.S b/sysdeps/powerpc/powerpc64/power7/strlen.S +index 39bca5ae288bc098..88b9d921ccbaf403 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strlen.S ++++ b/sysdeps/powerpc/powerpc64/power7/strlen.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strlen (char *s [r3]) */ + .machine power7 +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + CALL_MCOUNT 1 + dcbt 0,r3 + clrrdi r4,r3,3 /* Align the address to doubleword boundary. */ +@@ -101,5 +99,5 @@ L(done): + srdi r0,r0,3 /* Convert leading/trailing zeros to bytes. */ + add r3,r5,r0 /* Compute final length. */ + blr +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/powerpc/powerpc64/power7/strncmp.S b/sysdeps/powerpc/powerpc64/power7/strncmp.S +index d356bffab448a80e..349f5c6e4182f364 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strncmp.S ++++ b/sysdeps/powerpc/powerpc64/power7/strncmp.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + +@@ -26,7 +24,7 @@ + const char *s2 [r4], + size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp),5,0) ++EALIGN (strncmp,5,0) + CALL_MCOUNT 3 + + #define rTMP2 r0 +@@ -34,9 +32,6 @@ EALIGN (BP_SYM(strncmp),5,0) + #define rSTR1 r3 /* first string arg */ + #define rSTR2 r4 /* second string arg */ + #define rN r5 /* max string length */ +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Current PPC gcc does not support -fbounds-check or -fbounded-pointers. */ + #define rWORD1 r6 /* current word in s1 */ + #define rWORD2 r7 /* current word in s2 */ + #define rWORD3 r10 +@@ -224,5 +219,5 @@ L(u4): sub rRTN,rWORD1,rWORD2 + L(ux): + li rRTN,0 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/powerpc/powerpc64/power7/strnlen.S b/sysdeps/powerpc/powerpc64/power7/strnlen.S +index 0a440258fa67fccb..a68a839a032db21e 100644 +--- a/sysdeps/powerpc/powerpc64/power7/strnlen.S ++++ b/sysdeps/powerpc/powerpc64/power7/strnlen.S +@@ -18,12 +18,10 @@ + . */ + + #include +-#include +-#include + + /* int [r3] strnlen (char *s [r3], int size [r4]) */ + .machine power7 +-ENTRY (BP_SYM (__strnlen)) ++ENTRY (__strnlen) + CALL_MCOUNT 2 + dcbt 0,r3 + clrrdi r8,r3,3 +@@ -174,6 +172,6 @@ L(loop_small): + mr r3,r4 + blr + +-END (BP_SYM (__strnlen)) +-weak_alias (BP_SYM (__strnlen), BP_SYM(strnlen)) ++END (__strnlen) ++weak_alias (__strnlen, strnlen) + libc_hidden_builtin_def (strnlen) +diff --git a/sysdeps/powerpc/powerpc64/setjmp-common.S b/sysdeps/powerpc/powerpc64/setjmp-common.S +index e8c6e0adfdc88f93..5b1fdcdedd6963c1 100644 +--- a/sysdeps/powerpc/powerpc64/setjmp-common.S ++++ b/sysdeps/powerpc/powerpc64/setjmp-common.S +@@ -23,8 +23,6 @@ + #else + #include + #endif +-#include +-#include + + #ifndef __NO_VMX__ + .section ".toc","aw" +@@ -73,7 +71,6 @@ libc_hidden_def (_setjmp) + ENTRY (__sigsetjmp) + CALL_MCOUNT 2 + JUMPTARGET(GLUE(__sigsetjmp,_ent)): +- CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) + #ifdef PTR_MANGLE + mr r5, r1 + PTR_MANGLE (r5, r6) +diff --git a/sysdeps/powerpc/powerpc64/start.S b/sysdeps/powerpc/powerpc64/start.S +index aadaf0fae862b017..d69896f7ebb43bb9 100644 +--- a/sysdeps/powerpc/powerpc64/start.S ++++ b/sysdeps/powerpc/powerpc64/start.S +@@ -35,7 +35,6 @@ + . */ + + #include +-#include "bp-sym.h" + + /* We do not want .eh_frame info for crt1.o since crt1.o is linked + before crtbegin.o, the file defining __EH_FRAME_BEGIN__. */ +@@ -54,7 +53,7 @@ + L(start_addresses): + .quad 0 /* was _SDA_BASE_ but not in 64-bit ABI*/ + /* function descriptors so don't need JUMPTARGET */ +- .quad BP_SYM(main) ++ .quad main + .quad __libc_csu_init + .quad __libc_csu_fini + +@@ -79,7 +78,7 @@ ENTRY(_start) + ld r8,.L01(r2) + + /* and continue in libc-start, in glibc. */ +- b JUMPTARGET(BP_SYM(__libc_start_main)) ++ b JUMPTARGET(__libc_start_main) + /* The linker needs this nop to recognize that it's OK to call via a + TOC adjusting stub. */ + nop +diff --git a/sysdeps/powerpc/powerpc64/strchr.S b/sysdeps/powerpc/powerpc64/strchr.S +index 0df4c3d8a303167c..72858903342d35ec 100644 +--- a/sysdeps/powerpc/powerpc64/strchr.S ++++ b/sysdeps/powerpc/powerpc64/strchr.S +@@ -17,32 +17,19 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how this works. */ + + /* char * [r3] strchr (const char *s [r3] , int c [r4] ) */ + +-ENTRY (BP_SYM (strchr)) ++ENTRY (strchr) + CALL_MCOUNT 2 + + #define rTMP1 r0 + #define rRTN r3 /* outgoing result */ +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Currently PPC gcc does not support -fbounds-check or -fbounded-pointers. +- These artifacts are left in the code as a reminder in case we need +- bounded pointer support in the future. */ +-#if __BOUNDED_POINTERS__ +-# define rSTR r4 +-# define rCHR r5 /* byte we're looking for, spread over the whole word */ +-# define rWORD r8 /* the current word */ +-#else +-# define rSTR r8 /* current word pointer */ +-# define rCHR r4 /* byte we're looking for, spread over the whole word */ +-# define rWORD r5 /* the current word */ +-#endif ++#define rSTR r8 /* current word pointer */ ++#define rCHR r4 /* byte we're looking for, spread over the whole word */ ++#define rWORD r5 /* the current word */ + #define rCLZB rCHR /* leading zero byte count */ + #define rFEFE r6 /* constant 0xfefefefefefefeff (-0x0101010101010101) */ + #define r7F7F r7 /* constant 0x7f7f7f7f7f7f7f7f */ +@@ -53,9 +40,6 @@ ENTRY (BP_SYM (strchr)) + #define rTMP4 rIGN + #define rTMP5 rMASK + +- CHECK_BOUNDS_LOW (rSTR, rTMP1, rTMP2) +- STORE_RETURN_BOUNDS (rTMP1, rTMP2) +- + dcbt 0,rRTN + insrdi rCHR, rCHR, 8, 48 + li rMASK, -1 +@@ -107,7 +91,6 @@ L(loopentry): + zero byte, in which case we return a match. */ + and. rTMP5, rTMP1, rTMP2 + li rRTN, 0 +- STORE_RETURN_VALUE (rSTR) + beqlr + /* At this point: + rTMP5 bytes are 0x80 for each match of c, 0 otherwise. +@@ -142,8 +125,6 @@ L(loopentry): + #endif + srdi rCLZB, rCLZB, 3 + add rRTN, rSTR, rCLZB +- CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, tdlge) +- STORE_RETURN_VALUE (rSTR) + blr + + L(foundit): +@@ -163,10 +144,8 @@ L(foundit): + srdi rCLZB, rCLZB, 3 + #endif + add rRTN, rSTR, rCLZB +- CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, tdlge) +- STORE_RETURN_VALUE (rSTR) + blr +-END (BP_SYM (strchr)) ++END (strchr) + +-weak_alias (BP_SYM (strchr), BP_SYM (index)) ++weak_alias (strchr, index) + libc_hidden_builtin_def (strchr) +diff --git a/sysdeps/powerpc/powerpc64/strcmp.S b/sysdeps/powerpc/powerpc64/strcmp.S +index c00774d5fb432ce8..6cfe53630b034622 100644 +--- a/sysdeps/powerpc/powerpc64/strcmp.S ++++ b/sysdeps/powerpc/powerpc64/strcmp.S +@@ -17,29 +17,18 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strcmp (const char *s1 [r3], const char *s2 [r4]) */ + +-EALIGN (BP_SYM(strcmp), 4, 0) ++EALIGN (strcmp, 4, 0) + CALL_MCOUNT 2 + + #define rTMP2 r0 + #define rRTN r3 + #define rSTR1 r3 /* first string arg */ + #define rSTR2 r4 /* second string arg */ +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Current PPC gcc does not support -fbounds-check or -fbounded-pointers. +- These artifacts are left in the code as a reminder in case we need +- bounded pointer support in the future. */ +-#if __BOUNDED_POINTERS__ +-# define rHIGH1 r11 +-# define rHIGH2 r12 +-#endif + #define rWORD1 r5 /* current word in s1 */ + #define rWORD2 r6 /* current word in s2 */ + #define rFEFE r7 /* constant 0xfefefefefefefeff (-0x0101010101010101) */ +@@ -48,9 +37,6 @@ EALIGN (BP_SYM(strcmp), 4, 0) + #define rBITDIF r10 /* bits that differ in s1 & s2 words */ + #define rTMP r11 + +- CHECK_BOUNDS_LOW (rSTR1, rTMP, rHIGH1) +- CHECK_BOUNDS_LOW (rSTR2, rTMP, rHIGH2) +- + dcbt 0,rSTR1 + or rTMP, rSTR2, rSTR1 + dcbt 0,rSTR2 +@@ -146,7 +132,6 @@ L(endstring): + blr + L(equal): + li rRTN, 0 +- /* GKM FIXME: check high bounds. */ + blr + + L(different): +@@ -184,11 +169,9 @@ L(u1): cmpwi cr1, rWORD1, 0 + cmpd rWORD1, rWORD2 + bne+ cr1, L(u0) + L(u3): sub rRTN, rWORD1, rWORD2 +- /* GKM FIXME: check high bounds. */ + blr + L(u4): lbz rWORD1, -1(rSTR1) + sub rRTN, rWORD1, rWORD2 +- /* GKM FIXME: check high bounds. */ + blr +-END (BP_SYM (strcmp)) ++END (strcmp) + libc_hidden_builtin_def (strcmp) +diff --git a/sysdeps/powerpc/powerpc64/strlen.S b/sysdeps/powerpc/powerpc64/strlen.S +index 47032aa1b6d457f1..ab1e60cff1a2ec47 100644 +--- a/sysdeps/powerpc/powerpc64/strlen.S ++++ b/sysdeps/powerpc/powerpc64/strlen.S +@@ -17,8 +17,6 @@ + . */ + + #include +-#include +-#include + + /* The algorithm here uses the following techniques: + +@@ -82,7 +80,7 @@ + + /* int [r3] strlen (char *s [r3]) */ + +-ENTRY (BP_SYM (strlen)) ++ENTRY (strlen) + CALL_MCOUNT 1 + + #define rTMP4 r0 +@@ -99,13 +97,6 @@ ENTRY (BP_SYM (strlen)) + #define rTMP2 r11 + #define rTMP3 r12 + +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Current PPC gcc does not support -fbounds-check or -fbounded-pointers. +- These artifacts are left in the code as a reminder in case we need +- bounded pointer support in the future. */ +- CHECK_BOUNDS_LOW (rRTN, rTMP1, rTMP2) +- + dcbt 0,rRTN + clrrdi rSTR, rRTN, 3 + lis r7F7F, 0x7f7f +@@ -180,7 +171,6 @@ L(done0): + subf rTMP1, rRTN, rSTR + srdi rTMP3, rTMP3, 3 + add rRTN, rTMP1, rTMP3 +- /* GKM FIXME: check high bound. */ + blr + #else + +@@ -205,5 +195,5 @@ L(done1): + blr + #endif + +-END (BP_SYM (strlen)) ++END (strlen) + libc_hidden_builtin_def (strlen) +diff --git a/sysdeps/powerpc/powerpc64/strncmp.S b/sysdeps/powerpc/powerpc64/strncmp.S +index 18c73f4f64f6d98f..89a7d6f3ea6c138c 100644 +--- a/sysdeps/powerpc/powerpc64/strncmp.S ++++ b/sysdeps/powerpc/powerpc64/strncmp.S +@@ -17,14 +17,12 @@ + . */ + + #include +-#include +-#include + + /* See strlen.s for comments on how the end-of-string testing works. */ + + /* int [r3] strncmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */ + +-EALIGN (BP_SYM(strncmp), 4, 0) ++EALIGN (strncmp, 4, 0) + CALL_MCOUNT 3 + + #define rTMP2 r0 +@@ -32,9 +30,6 @@ EALIGN (BP_SYM(strncmp), 4, 0) + #define rSTR1 r3 /* first string arg */ + #define rSTR2 r4 /* second string arg */ + #define rN r5 /* max string length */ +-/* Note: The Bounded pointer support in this code is broken. This code +- was inherited from PPC32 and that support was never completed. +- Current PPC gcc does not support -fbounds-check or -fbounded-pointers. */ + #define rWORD1 r6 /* current word in s1 */ + #define rWORD2 r7 /* current word in s2 */ + #define rFEFE r8 /* constant 0xfefefefefefefeff (-0x0101010101010101) */ +@@ -207,5 +202,5 @@ L(u1): + L(u2): lbzu rWORD1, -1(rSTR1) + L(u3): sub rRTN, rWORD1, rWORD2 + blr +-END (BP_SYM (strncmp)) ++END (strncmp) + libc_hidden_builtin_def (strncmp) +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S +index 3ea61af161584a58..562f74702b7dfbd8 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S +@@ -19,17 +19,14 @@ + #include + #define _ERRNO_H 1 + #include +-#include +-#include + + .comm __curbrk,8,8 + .section ".toc","aw" + .LC__curbrk: + .tc __curbrk[TC],__curbrk + .section ".text" +-ENTRY (BP_SYM (__brk)) ++ENTRY (__brk) + CALL_MCOUNT 1 +- DISCARD_BOUNDS (r3) /* the bounds are meaningless, so toss 'em. */ + + std r3,-8(r1) + DO_CALL(SYS_ify(brk)) +@@ -41,6 +38,6 @@ ENTRY (BP_SYM (__brk)) + blelr+ + li r3,ENOMEM + TAIL_CALL_SYSCALL_ERROR +-END (BP_SYM (__brk)) ++END (__brk) + +-weak_alias (BP_SYM (__brk), BP_SYM (brk)) ++weak_alias (__brk, brk) +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S +index e3fa5f55b92834b9..87c0797058558288 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S +@@ -19,8 +19,6 @@ + #include + #define _ERRNO_H 1 + #include +-#include +-#include + + #define CLONE_VM 0x00000100 + #define CLONE_THREAD 0x00010000 +@@ -33,11 +31,8 @@ + int flags [r5], void *arg [r6], void *parent_tid [r7], + void *tls [r8], void *child_tid [r9]); */ + +-ENTRY (BP_SYM (__clone)) ++ENTRY (__clone) + CALL_MCOUNT 7 +- /* GKM FIXME: add bounds checks, where sensible. */ +- DISCARD_BOUNDS (r4) +- DISCARD_BOUNDS (r6) + + /* Check for child_stack == NULL || fn == NULL. */ + cmpdi cr0,r4,0 +@@ -142,6 +137,6 @@ L(parent): + cfi_restore(r31) + PSEUDO_RET + +-END (BP_SYM (__clone)) ++END (__clone) + +-weak_alias (BP_SYM (__clone), BP_SYM (clone)) ++weak_alias (__clone, clone) diff --git a/SOURCES/glibc-rh1505492-bounded-2.patch b/SOURCES/glibc-rh1505492-bounded-2.patch new file mode 100644 index 0000000..2bc6829 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-2.patch @@ -0,0 +1,274 @@ +commit 2e8a5c8c46f0a897a2629131eb86d1cae8321234 +Author: Joseph Myers +Date: Thu Jan 31 22:59:04 2013 +0000 + + Remove bp-semctl.h and CHECK_SEMCTL. + +Conflicts: + sysdeps/generic/bp-semctl.h + +Copyright header change; file removed manually. + +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c +index 0e59ee27af5d25cd..0d28667bf84b57bc 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c +@@ -33,10 +33,6 @@ union semun + struct seminfo *__buf; /* buffer for IPC_INFO */ + }; + +-#include +-#include +- +- + int + __new_semctl (int semid, int semnum, int cmd, ...) + { +@@ -51,7 +47,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array); ++ arg.array); + } + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c +index 3c1c9106420bd67b..7c7d7caafe5db9bf 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c +@@ -30,9 +30,6 @@ union semun + struct seminfo *__buf; /* buffer for IPC_INFO */ + }; + +-#include +-#include /* definition of CHECK_SEMCTL needs union semum */ +- + int __semctl (int semid, int semnum, int cmd, ...); + + int +@@ -49,7 +46,7 @@ __semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array); ++ arg.array); + } + + #include +diff --git a/sysdeps/generic/bp-semctl.h b/sysdeps/generic/bp-semctl.h +deleted file mode 100644 +index af132837cc40bcc9..0000000000000000 +--- a/sysdeps/generic/bp-semctl.h ++++ /dev/null +@@ -1,66 +0,0 @@ +-/* Bounded-pointer checking macros for C. +- Copyright (C) 2000 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Greg McGary +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#ifndef _bp_semctl_h_ +-#define _bp_semctl_h_ 1 +- +-#if __BOUNDED_POINTERS__ +- +-# define CHECK_SEMCTL(ARGP, SEMID, CMD) check_semctl (ARGP, SEMID, CMD) +- +-union semun *__unbounded +-check_semctl (union semun *arg, int semid, int cmd) +-{ +- int ipc64 = (cmd & __IPC_64); +- +- switch (cmd & ~__IPC_64) +- { +- case IPC_STAT: +- case IPC_SET: +- (void) CHECK_1 (arg->buf); +- break; +- +- case GETALL: +- case SETALL: +- { +- struct semid_ds ds; +- union semun un = { .buf = &ds }; +- unsigned int length = ~0; +- +- /* It's unfortunate that we need to make a recursive +- system call to get the size of the semaphore set... */ +- if (semctl (semid, 0, IPC_STAT | ipc64, un) == 0) +- length = ds.sem_nsems; +- (void) CHECK_N (arg->array, length); +- break; +- } +- +- case IPC_INFO: +- (void) CHECK_1 (arg->__buf); +- break; +- } +- +- return __ptrvalue (arg); +-} +- +-#else +-# define CHECK_SEMCTL(ARGP, SEMID, CMD) (ARGP) +-#endif +- +-#endif /* _bp_semctl_h_ */ +diff --git a/sysdeps/unix/sysv/linux/i386/semctl.c b/sysdeps/unix/sysv/linux/i386/semctl.c +index 5e2d9480598e56c4..c340e57f0e6899c0 100644 +--- a/sysdeps/unix/sysv/linux/i386/semctl.c ++++ b/sysdeps/unix/sysv/linux/i386/semctl.c +@@ -49,9 +49,6 @@ union semun + struct __old_semid_ds *__old_buf; + }; + +-#include +-#include /* definition of CHECK_SEMCTL needs union semum */ +- + /* Return identifier for array of NSEMS semaphores associated with + KEY. */ + #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2) +@@ -75,7 +72,7 @@ __old_semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)); ++ &arg); + } + compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0); + #endif +@@ -94,7 +91,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); ++ &arg); + } + + versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2); +diff --git a/sysdeps/unix/sysv/linux/semctl.c b/sysdeps/unix/sysv/linux/semctl.c +index 2d28cf661e9b3ad0..bae5a8d28306e653 100644 +--- a/sysdeps/unix/sysv/linux/semctl.c ++++ b/sysdeps/unix/sysv/linux/semctl.c +@@ -51,9 +51,6 @@ union semun + struct __old_semid_ds *__old_buf; + }; + +-#include +-#include /* definition of CHECK_SEMCTL needs union semum */ +- + /* Return identifier for array of NSEMS semaphores associated with + KEY. */ + #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2) +@@ -92,7 +89,7 @@ __old_semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)); ++ &arg); + } + compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0); + #endif +@@ -127,7 +124,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + + #if __ASSUME_IPC64 > 0 + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); ++ &arg); + #else + switch (cmd) + { +@@ -137,7 +134,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + break; + default: + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)); ++ &arg); + } + + { +@@ -148,7 +145,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + /* Unfortunately there is no way how to find out for sure whether + we should use old or new semctl. */ + result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); ++ &arg); + if (result != -1 || errno != EINVAL) + return result; + +@@ -168,7 +165,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + } + } + result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)); ++ &arg); + if (result != -1 && cmd != IPC_SET) + { + memset(buf, 0, sizeof(*buf)); +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c b/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c +index 464f0b502d65c52a..9dac28c4f1cb4657 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c +@@ -50,9 +50,6 @@ union semun + struct __old_semid_ds *__old_buf; + }; + +-#include +-#include /* definition of CHECK_SEMCTL needs union semum */ +- + /* Return identifier for array of NSEMS semaphores associated with + KEY. */ + #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2) +@@ -87,7 +84,7 @@ __old_semctl (int semid, int semnum, int cmd, ...) + } + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)); ++ &arg); + } + compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0); + #endif +@@ -117,7 +114,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + } + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64, +- CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); ++ &arg); + } + + versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2); +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c b/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c +index 3ac389e5b178a01d..658db0e8d91afa88 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c +@@ -33,9 +33,6 @@ union semun + struct seminfo *__buf; /* buffer for IPC_INFO */ + }; + +-#include +-#include /* definition of CHECK_SEMCTL needs union semum */ +- + /* Return identifier for array of NSEMS semaphores associated with + KEY. */ + +@@ -53,5 +50,5 @@ semctl (int semid, int semnum, int cmd, ...) + va_end (ap); + + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd, +- CHECK_SEMCTL (&arg, semid, cmd)->array); ++ arg.array); + } diff --git a/SOURCES/glibc-rh1505492-bounded-3.patch b/SOURCES/glibc-rh1505492-bounded-3.patch new file mode 100644 index 0000000..477fbfa --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-3.patch @@ -0,0 +1,269 @@ +commit 32a45bea390b39e3be3cfa81c68a5892eaa539d2 +Author: Joseph Myers +Date: Thu Jan 31 23:00:15 2013 +0000 + + Remove CHECK_SIGSET and CHECK_SIGSET_NULL_OK. + +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c b/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c +index 8d02643a151cb18c..c56147c97802108b 100644 +--- a/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c ++++ b/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c +@@ -24,7 +24,6 @@ + + #include + #include +-#include + + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ +@@ -34,5 +33,5 @@ sigpending (set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8); + } +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c b/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +index 8776c2000aca1945..97fd364073bfd4f4 100644 +--- a/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c ++++ b/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + /* Get and/or change the set of blocked signals. */ + int +@@ -38,7 +37,6 @@ __sigprocmask (how, set, oset) + + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set), +- CHECK_SIGSET_NULL_OK (oset), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8); + } + weak_alias (__sigprocmask, sigprocmask) +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index f007eee12db8543c..86f998ae69feb81f 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -66,11 +66,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + /* Same as CHECK_STRING, but tolerate ARG == NULL. */ + # define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG)) + +-/* Check bounds of signal syscall args with type sigset_t. */ +-# define CHECK_SIGSET(SET) CHECK_N ((SET), _NSIG / (8 * sizeof *(SET))) +-/* Same as CHECK_SIGSET, but tolerate SET == NULL. */ +-# define CHECK_SIGSET_NULL_OK(SET) CHECK_N_NULL_OK ((SET), _NSIG / (8 * sizeof *(SET))) +- + # if defined (_IOC_SIZESHIFT) && defined (_IOC_SIZEBITS) + /* Extract the size of the ioctl data and check its bounds. */ + # define CHECK_IOCTL(ARG, CMD) \ +@@ -114,8 +109,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + # define CHECK_N(ARG, N) (ARG) + # define CHECK_N_NULL_OK(ARG, N) (ARG) + # define CHECK_STRING(ARG) (ARG) +-# define CHECK_SIGSET(SET) (SET) +-# define CHECK_SIGSET_NULL_OK(SET) (SET) + # define CHECK_IOCTL(ARG, CMD) (ARG) + # define CHECK_FCNTL(ARG, CMD) (ARG) + # define CHECK_N_PAGES(ARG, NBYTES) (ARG) +diff --git a/sysdeps/unix/sysv/linux/sigpending.c b/sysdeps/unix/sysv/linux/sigpending.c +index 7174b4ae3a791f86..bd6126143923ab8e 100644 +--- a/sysdeps/unix/sysv/linux/sigpending.c ++++ b/sysdeps/unix/sysv/linux/sigpending.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -32,5 +31,5 @@ int + sigpending (set) + sigset_t *set; + { +- return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8); + } +diff --git a/sysdeps/unix/sysv/linux/sigprocmask.c b/sysdeps/unix/sysv/linux/sigprocmask.c +index a5ac4dd501964dff..8d69613049c9629c 100644 +--- a/sysdeps/unix/sysv/linux/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/sigprocmask.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -55,7 +54,6 @@ __sigprocmask (how, set, oset) + } + #endif + +- return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET_NULL_OK (set), +- CHECK_SIGSET_NULL_OK (oset), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8); + } + weak_alias (__sigprocmask, sigprocmask) +diff --git a/sysdeps/unix/sysv/linux/sigsuspend.c b/sysdeps/unix/sysv/linux/sigsuspend.c +index e1ee87b29fa258ee..c673cf2b65cfe7ea 100644 +--- a/sysdeps/unix/sysv/linux/sigsuspend.c ++++ b/sysdeps/unix/sysv/linux/sigsuspend.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -29,7 +28,7 @@ + static inline int __attribute__ ((always_inline)) + do_sigsuspend (const sigset_t *set) + { +- return INLINE_SYSCALL (rt_sigsuspend, 2, CHECK_SIGSET (set), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigsuspend, 2, set, _NSIG / 8); + } + + /* Change the set of blocked signals to SET, +diff --git a/sysdeps/unix/sysv/linux/sigtimedwait.c b/sysdeps/unix/sysv/linux/sigtimedwait.c +index 8686b9a66bd99738..34834c0cb1f9e362 100644 +--- a/sysdeps/unix/sysv/linux/sigtimedwait.c ++++ b/sysdeps/unix/sysv/linux/sigtimedwait.c +@@ -51,7 +51,7 @@ do_sigtimedwait (const sigset_t *set, siginfo_t *info, + + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- int result = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set), ++ int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, + CHECK_1 (info), timeout, _NSIG / 8); + + /* The kernel generates a SI_TKILL code in si_code in case tkill is +diff --git a/sysdeps/unix/sysv/linux/sigwait.c b/sysdeps/unix/sysv/linux/sigwait.c +index a304ed978bcdbd1d..5e7d8ca8c8a62f19 100644 +--- a/sysdeps/unix/sysv/linux/sigwait.c ++++ b/sysdeps/unix/sysv/linux/sigwait.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #ifdef __NR_rt_sigtimedwait + +@@ -58,7 +57,7 @@ do_sigwait (const sigset_t *set, int *sig) + #ifdef INTERNAL_SYSCALL + INTERNAL_SYSCALL_DECL (err); + do +- ret = INTERNAL_SYSCALL (rt_sigtimedwait, err, 4, CHECK_SIGSET (set), ++ ret = INTERNAL_SYSCALL (rt_sigtimedwait, err, 4, set, + NULL, NULL, _NSIG / 8); + while (INTERNAL_SYSCALL_ERROR_P (ret, err) + && INTERNAL_SYSCALL_ERRNO (ret, err) == EINTR); +@@ -71,8 +70,7 @@ do_sigwait (const sigset_t *set, int *sig) + ret = INTERNAL_SYSCALL_ERRNO (ret, err); + #else + do +- ret = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set), +- NULL, NULL, _NSIG / 8); ++ ret = INLINE_SYSCALL (rt_sigtimedwait, 4, set, NULL, NULL, _NSIG / 8); + while (ret == -1 && errno == EINTR); + if (ret != -1) + { +diff --git a/sysdeps/unix/sysv/linux/sigwaitinfo.c b/sysdeps/unix/sysv/linux/sigwaitinfo.c +index 9f2b1d40c941bbfc..f70386a31bce66bd 100644 +--- a/sysdeps/unix/sysv/linux/sigwaitinfo.c ++++ b/sysdeps/unix/sysv/linux/sigwaitinfo.c +@@ -52,7 +52,7 @@ do_sigwaitinfo (const sigset_t *set, siginfo_t *info) + + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- int result = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set), ++ int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, + CHECK_1 (info), NULL, _NSIG / 8); + + /* The kernel generates a SI_TKILL code in si_code in case tkill is +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c b/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c +index 011aa2ab3964b887..7548435ca29ae294 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ +@@ -31,5 +30,5 @@ sigpending (set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8); + } +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c b/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c +index 7622c0a28ca0d04a..60f95b4f554d7966 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + /* Get and/or change the set of blocked signals. */ + int +@@ -32,7 +31,6 @@ __sigprocmask (how, set, oset) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set), +- CHECK_SIGSET_NULL_OK (oset), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8); + } + weak_alias (__sigprocmask, sigprocmask) +diff --git a/sysdeps/unix/sysv/linux/x86_64/sigpending.c b/sysdeps/unix/sysv/linux/x86_64/sigpending.c +index b3f2547b137847d3..7e448c0327cbcd19 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/x86_64/sigpending.c +@@ -24,7 +24,6 @@ + + #include + #include +-#include + + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ +@@ -34,5 +33,5 @@ sigpending (set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8); + } +diff --git a/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c b/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c +index 9f05e4a5d306839f..210fd97f9f33521e 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c +@@ -25,7 +25,6 @@ + + #include + #include +-#include + + /* Get and/or change the set of blocked signals. */ + int +@@ -37,7 +36,6 @@ __sigprocmask (how, set, oset) + + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set), +- CHECK_SIGSET_NULL_OK (oset), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8); + } + weak_alias (__sigprocmask, sigprocmask) diff --git a/SOURCES/glibc-rh1505492-bounded-4.patch b/SOURCES/glibc-rh1505492-bounded-4.patch new file mode 100644 index 0000000..ffc8ef9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-4.patch @@ -0,0 +1,121 @@ +commit 3a7ac8a0f596bb73093212cd1109c1413777e1f8 +Author: Joseph Myers +Date: Fri Feb 1 00:06:18 2013 +0000 + + Remove bp-start.h and INIT_ARGV_and_ENVIRON. + +Conflicts: + sysdeps/generic/bp-start.h + +Copyright header change; file removed manually. + +diff --git a/csu/libc-start.c b/csu/libc-start.c +index ebf9f4ec7335f992..2fab8556a5e2cb26 100644 +--- a/csu/libc-start.c ++++ b/csu/libc-start.c +@@ -19,7 +19,6 @@ + #include + #include + #include +-#include + #include + + extern void __libc_init_first (int argc, char **argv, char **envp); +@@ -146,7 +145,7 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL), + #ifndef SHARED + char *__unbounded *__unbounded ubp_ev = &ubp_av[argc + 1]; + +- INIT_ARGV_and_ENVIRON; ++ __environ = ubp_ev; + + /* Store the lowest stack address. This is done in ld.so if this is + the code for the DSO. */ +diff --git a/sysdeps/generic/bp-start.h b/sysdeps/generic/bp-start.h +deleted file mode 100644 +index 0f0339f54cba4aa8..0000000000000000 +--- a/sysdeps/generic/bp-start.h ++++ /dev/null +@@ -1,71 +0,0 @@ +-/* Bounded-pointer checking macros for C. +- Copyright (C) 2000 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Greg McGary +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +- +-#if __BOUNDED_POINTERS__ +- +- /* The command-line arg vector and environment vector come to us from +- the OS as an unbounded pointer to an array of unbounded strings. +- The user's main expects argv and __environ to be bounded pointers +- to arrays of bounded strings. */ +-# define INIT_ARGV_and_ENVIRON \ +- do { \ +- int envc; \ +- for (envc = 0; *ubp_ev; ubp_ev++, envc++) \ +- ; \ +- ubp_ev -= envc; \ +- \ +- /* GKM FIXME: we could save some space by allocating only enough for \ +- the additional low & high words, and destructively rewriting \ +- argv in place. */ \ +- __ptrvalue (argv) = __ptrlow (argv) \ +- = alloca ((argc + envc + 2) * sizeof (*argv)); \ +- __ptrhigh (argv) = __ptrvalue (argv) + argc + 1; \ +- __ptrvalue (__environ) = __ptrlow (__environ) = __ptrhigh (argv); \ +- __ptrhigh (__environ) = __ptrvalue (__environ) + envc + 1; \ +- boundify_vector (__environ, ubp_ev); \ +- boundify_vector (argv, ubp_av); \ +- } while (0) +- +- +-/* Copy an unbounded vector of unbounded strings into a bounded +- counterpart. */ +- +-static void +-boundify_vector (char **dest, char *__unbounded *__unbounded src) +-{ +- char *__unbounded s; +- for (; *src; src++, dest++) +- { +- __ptrvalue (*dest) = __ptrlow (*dest) = *src; +- __ptrhigh (*dest) = src[1]; +- } +- *dest = 0; +- /* The OS lays out strings contiguously in vector order, +- so */ +- for (s = __ptrvalue (dest[-1]); *s; s++) +- ; +- __ptrhigh (dest[-1]) = ++s; +-} +- +-#else +- +-# define INIT_ARGV_and_ENVIRON __environ = ubp_ev +- +-#endif +diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +index 98a793e0894f6936..89de1aa7e6e1df59 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c ++++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c +@@ -20,7 +20,6 @@ + #include + #include + #include +-#include + #include + + diff --git a/SOURCES/glibc-rh1505492-bounded-5.patch b/SOURCES/glibc-rh1505492-bounded-5.patch new file mode 100644 index 0000000..3e27f1d --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-5.patch @@ -0,0 +1,168 @@ +commit e782a927c24430100bf2008c96cd421a70285a7e +Author: Joseph Myers +Date: Fri Feb 1 06:35:29 2013 +0000 + + Remove BOUNDED_N and BOUNDED_1. + +Conflicts: + sysdeps/sparc/backtrace.c + +The changes to that file have been applied to +sysdeps/sparc/sparc64/backtrace.c instead. + +diff --git a/debug/backtrace.c b/debug/backtrace.c +index a3fd81c32d176089..d0785329a2514e20 100644 +--- a/debug/backtrace.c ++++ b/debug/backtrace.c +@@ -21,7 +21,6 @@ + #include + #include + #include +-#include + #include + + /* This implementation assumes a stack layout that matches the defaults +@@ -50,7 +49,7 @@ + /* By default assume the `next' pointer in struct layout points to the + next struct layout. */ + #ifndef ADVANCE_STACK_FRAME +-# define ADVANCE_STACK_FRAME(next) BOUNDED_1 ((struct layout *) (next)) ++# define ADVANCE_STACK_FRAME(next) ((struct layout *) (next)) + #endif + + /* By default, the frame pointer is just what we get from gcc. */ +@@ -72,7 +71,7 @@ __backtrace (array, size) + top_stack = CURRENT_STACK_FRAME; + + /* We skip the call to this function, it makes no sense to record it. */ +- current = BOUNDED_1 ((struct layout *) top_frame); ++ current = ((struct layout *) top_frame); + while (cnt < size) + { + if ((void *) current INNER_THAN top_stack +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index d43e299d4dc06b6b..f2610786aed0cc85 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -66,13 +66,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + /* Same as CHECK_STRING, but tolerate ARG == NULL. */ + # define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG)) + +-/* Return a bounded pointer with value PTR that satisfies CHECK_N (PTR, N). */ +-# define BOUNDED_N(PTR, N) \ +- ({ __typeof (PTR) __bounded _p_; \ +- __ptrvalue _p_ = __ptrlow _p_ = __ptrvalue (PTR); \ +- __ptrhigh _p_ = __ptrvalue _p_ + (N); \ +- _p_; }) +- + #else /* !__BOUNDED_POINTERS__ */ + + /* Do nothing if not compiling with -fbounded-pointers. */ +@@ -85,10 +78,7 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + # define CHECK_N(ARG, N) (ARG) + # define CHECK_N_NULL_OK(ARG, N) (ARG) + # define CHECK_STRING(ARG) (ARG) +-# define BOUNDED_N(PTR, N) (PTR) + + #endif /* !__BOUNDED_POINTERS__ */ + +-#define BOUNDED_1(PTR) BOUNDED_N (PTR, 1) +- + #endif /* _bp_checks_h_ */ +diff --git a/sysdeps/powerpc/powerpc32/backtrace.c b/sysdeps/powerpc/powerpc32/backtrace.c +index 942951f2bc0ce45d..0e2e5c296876444e 100644 +--- a/sysdeps/powerpc/powerpc32/backtrace.c ++++ b/sysdeps/powerpc/powerpc32/backtrace.c +@@ -18,7 +18,6 @@ + + #include + #include +-#include + + /* This is the stack layout we see with every stack frame. + Note that every routine is required by the ABI to lay out the stack +@@ -47,11 +46,10 @@ __backtrace (void **array, int size) + + /* Get the address on top-of-stack. */ + asm volatile ("lwz %0,0(1)" : "=r"(current)); +- current = BOUNDED_1 (current); + + for ( count = 0; + current != NULL && count < size; +- current = BOUNDED_1 (current->next), count++) ++ current = current->next, count++) + array[count] = current->return_address; + + /* It's possible the second-last stack frame can't return +diff --git a/sysdeps/powerpc/powerpc64/backtrace.c b/sysdeps/powerpc/powerpc64/backtrace.c +index 89957a5f4e1efb95..08e535585ef2a104 100644 +--- a/sysdeps/powerpc/powerpc64/backtrace.c ++++ b/sysdeps/powerpc/powerpc64/backtrace.c +@@ -18,7 +18,6 @@ + + #include + #include +-#include + + /* This is the stack layout we see with every stack frame. + Note that every routine is required by the ABI to lay out the stack +@@ -50,11 +49,10 @@ __backtrace (void **array, int size) + + /* Get the address on top-of-stack. */ + asm volatile ("ld %0,0(1)" : "=r"(current)); +- current = BOUNDED_1 (current); + + for ( count = 0; + current != NULL && count < size; +- current = BOUNDED_1 (current->next), count++) ++ current = current->next, count++) + array[count] = current->return_address; + + /* It's possible the second-last stack frame can't return +diff --git a/sysdeps/sparc/sparc64/backtrace.c b/sysdeps/sparc/sparc64/backtrace.c +index e9a72a69a0c64d75..d5a1ebec000ce91e 100644 +--- a/sysdeps/sparc/sparc64/backtrace.c ++++ b/sysdeps/sparc/sparc64/backtrace.c +@@ -19,7 +19,6 @@ + + #include + #include +-#include + #include + + struct layout +@@ -40,7 +39,6 @@ __backtrace (void **array, int size) + asm volatile ("flushw"); + asm volatile ("mov %%fp, %0" : "=r"(fp)); + current = (struct layout *__unbounded) (fp + STACK_BIAS); +- current = BOUNDED_1 (current); + + for (count = 0; count < size; count++) + { +@@ -48,7 +46,6 @@ __backtrace (void **array, int size) + if (!current->next) + break; + current = (struct layout *__unbounded) (current->next + STACK_BIAS); +- current = BOUNDED_1 (current); + } + + return count; +diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c +index d01bb1bdb779fb0d..21417f4ced70e778 100644 +--- a/sysdeps/unix/sysv/linux/shmat.c ++++ b/sysdeps/unix/sysv/linux/shmat.c +@@ -23,7 +23,6 @@ + #include + #include + #include +-#include + + /* Attach the shared memory segment associated with SHMID to the data + segment of the calling process. SHMADDR and SHMFLG determine how +@@ -58,5 +57,5 @@ shmat (shmid, shmaddr, shmflg) + return (void *) -1l; + } + +- return BOUNDED_N (raddr, length); ++ return raddr; + } diff --git a/SOURCES/glibc-rh1505492-bounded-6.patch b/SOURCES/glibc-rh1505492-bounded-6.patch new file mode 100644 index 0000000..0228646 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-6.patch @@ -0,0 +1,726 @@ +commit 6277fdabc074afa76ad5883a4b99cdf8e75de31a +Author: Joseph Myers +Date: Mon Feb 4 16:29:39 2013 +0000 + + Remove CHECK_STRING, CHECK_STRING_NULL_OK and __ubp_memchr. + +Conflicts: + sysdeps/unix/sysv/linux/getcwd.c + +Conflict due to context change in glibc-rh1534635.patch. + +diff --git a/ports/sysdeps/ia64/memchr.S b/ports/sysdeps/ia64/memchr.S +index 6836571599c0a0af..a6f2451b9a3698a5 100644 +--- a/ports/sysdeps/ia64/memchr.S ++++ b/ports/sysdeps/ia64/memchr.S +@@ -154,7 +154,4 @@ ENTRY(__memchr) + END(__memchr) + + weak_alias (__memchr, memchr) +-#if !__BOUNDED_POINTERS__ +-weak_alias (__memchr, __ubp_memchr) +-#endif + libc_hidden_builtin_def (memchr) +diff --git a/ports/sysdeps/m68k/memchr.S b/ports/sysdeps/m68k/memchr.S +index 9e7aff816d84c6e6..5f2478f5d150e787 100644 +--- a/ports/sysdeps/m68k/memchr.S ++++ b/ports/sysdeps/m68k/memchr.S +@@ -304,7 +304,4 @@ L(L9:) + END(__memchr) + + weak_alias (__memchr, memchr) +-#if !__BOUNDED_POINTERS__ +-weak_alias (__memchr, __ubp_memchr) +-#endif + libc_hidden_builtin_def (memchr) +diff --git a/ports/sysdeps/unix/sysv/linux/arm/truncate64.c b/ports/sysdeps/unix/sysv/linux/arm/truncate64.c +index 3fad93f50e745396..a9a8059379fdbba5 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/truncate64.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/truncate64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Truncate the file FD refers to to LENGTH bytes. */ + int +@@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length) + { + unsigned int low = length & 0xffffffff; + unsigned int high = length >> 32; +- int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0, ++ int result = INLINE_SYSCALL (truncate64, 4, path, 0, + __LONG_LONG_PAIR (high, low)); + return result; + } +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/umount.c b/ports/sysdeps/unix/sysv/linux/ia64/umount.c +index ae0c03659f0fef9b..86b1acc9c634e55c 100644 +--- a/ports/sysdeps/unix/sysv/linux/ia64/umount.c ++++ b/ports/sysdeps/unix/sysv/linux/ia64/umount.c +@@ -20,11 +20,10 @@ + #include + + #include +-#include + + /* Unmount a filesystem. */ + int + umount (const char *special_file) + { +- return INLINE_SYSCALL (umount, 2, CHECK_STRING (special_file), 0); ++ return INLINE_SYSCALL (umount, 2, special_file, 0); + } +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c b/ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c +index 3fad93f50e745396..a9a8059379fdbba5 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Truncate the file FD refers to to LENGTH bytes. */ + int +@@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length) + { + unsigned int low = length & 0xffffffff; + unsigned int high = length >> 32; +- int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0, ++ int result = INLINE_SYSCALL (truncate64, 4, path, 0, + __LONG_LONG_PAIR (high, low)); + return result; + } +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +index 1078cc35ac0cc129..645ffa122ea62de6 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +@@ -25,7 +25,6 @@ + + #include + #include +-#include + + #include + +@@ -96,11 +95,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag) + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file), +- __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst)); + else +- result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file), +- __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst)); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat64_conv (vers, &kst, st); +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +index 71123f2bf9094c0f..f698d9298a3855e6 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -34,7 +33,7 @@ __lxstat64 (int vers, const char *name, struct stat64 *buf) + int result; + struct kernel_stat kbuf; + +- result = INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf)); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +index b5bb93614340c02a..623299c6b8db85c4 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -35,7 +34,7 @@ __xstat64 (int vers, const char *name, struct stat64 *buf) + int result; + struct kernel_stat kbuf; + +- result = INLINE_SYSCALL (stat, 2, CHECK_STRING (name), __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf)); + if (result == 0) + result = __xstat64_conv (vers, &kbuf, buf); + +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index f2610786aed0cc85..bf10617a3f6b8474 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -41,16 +41,6 @@ + && BOUNDS_VIOLATED), \ + __ptrvalue (ARG)) + +-extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); +- +-# define _CHECK_STRING(ARG, COND) \ +- (((COND) \ +- && (__ptrvalue (ARG) < __ptrlow (ARG) \ +- || !__ubp_memchr (__ptrvalue (ARG), '\0', \ +- (__ptrhigh (ARG) - __ptrvalue (ARG)))) \ +- && BOUNDS_VIOLATED), \ +- __ptrvalue (ARG)) +- + /* Check bounds of a pointer seated to an array of N objects. */ + # define CHECK_N(ARG, N) _CHECK_N ((ARG), (N), 1) + /* Same as CHECK_N, but tolerate ARG == NULL. */ +@@ -61,11 +51,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + /* Same as CHECK_1, but tolerate ARG == NULL. */ + # define CHECK_1_NULL_OK(ARG) CHECK_N_NULL_OK ((ARG), 1) + +-/* Check for NUL-terminator within string's bounds. */ +-# define CHECK_STRING(ARG) _CHECK_STRING ((ARG), 1) +-/* Same as CHECK_STRING, but tolerate ARG == NULL. */ +-# define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG)) +- + #else /* !__BOUNDED_POINTERS__ */ + + /* Do nothing if not compiling with -fbounded-pointers. */ +@@ -77,7 +62,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + # define CHECK_1_NULL_OK(ARG) (ARG) + # define CHECK_N(ARG, N) (ARG) + # define CHECK_N_NULL_OK(ARG, N) (ARG) +-# define CHECK_STRING(ARG) (ARG) + + #endif /* !__BOUNDED_POINTERS__ */ + +diff --git a/sysdeps/i386/memchr.S b/sysdeps/i386/memchr.S +index 191641207efb9076..a3427c17dafd0cbf 100644 +--- a/sysdeps/i386/memchr.S ++++ b/sysdeps/i386/memchr.S +@@ -333,7 +333,4 @@ L(pop): popl %edi /* pop saved registers */ + END (BP_SYM (__memchr)) + + weak_alias (BP_SYM (__memchr), BP_SYM (memchr)) +-#if !__BOUNDED_POINTERS__ +-weak_alias (__memchr, __ubp_memchr) +-#endif + libc_hidden_builtin_def (memchr) +diff --git a/sysdeps/sparc/sparc32/memchr.S b/sysdeps/sparc/sparc32/memchr.S +index b7a77298ab916ee0..e22b3d8c1adf4322 100644 +--- a/sysdeps/sparc/sparc32/memchr.S ++++ b/sysdeps/sparc/sparc32/memchr.S +@@ -139,7 +139,4 @@ ENTRY(__memchr) + END(__memchr) + + weak_alias (__memchr, memchr) +-#if !__BOUNDED_POINTERS__ +-weak_alias (__memchr, __ubp_memchr) +-#endif + libc_hidden_builtin_def (memchr) +diff --git a/sysdeps/sparc/sparc64/memchr.S b/sysdeps/sparc/sparc64/memchr.S +index 03423b93f5bd81e1..cf38e6a10329e37f 100644 +--- a/sysdeps/sparc/sparc64/memchr.S ++++ b/sysdeps/sparc/sparc64/memchr.S +@@ -256,7 +256,4 @@ ENTRY(__memchr) + END(__memchr) + + weak_alias (__memchr, memchr) +-#if !__BOUNDED_POINTERS__ +-weak_alias (__memchr, __ubp_memchr) +-#endif + libc_hidden_builtin_def (memchr) +diff --git a/sysdeps/unix/sysv/linux/execve.c b/sysdeps/unix/sysv/linux/execve.c +index f29615980c531bc2..34fd14bf6afc5417 100644 +--- a/sysdeps/unix/sysv/linux/execve.c ++++ b/sysdeps/unix/sysv/linux/execve.c +@@ -21,7 +21,8 @@ + #include + #include + #include +-#include ++ ++/* Consider moving to syscalls.list. */ + + int + __execve (file, argv, envp) +@@ -29,34 +30,6 @@ __execve (file, argv, envp) + char *const argv[]; + char *const envp[]; + { +-#if __BOUNDED_POINTERS__ +- { +- char *const *v; +- int i; +- char *__unbounded *__unbounded ubp_argv; +- char *__unbounded *__unbounded ubp_envp; +- char *__unbounded *__unbounded ubp_v; +- +- for (v = argv; *v; v++) +- ; +- i = v - argv + 1; +- ubp_argv = (char *__unbounded *__unbounded) alloca (sizeof (*ubp_argv) * i); +- for (v = argv, ubp_v = ubp_argv; --i; v++, ubp_v++) +- *ubp_v = CHECK_STRING (*v); +- *ubp_v = 0; +- +- for (v = envp; *v; v++) +- ; +- i = v - envp + 1; +- ubp_envp = (char *__unbounded *__unbounded) alloca (sizeof (*ubp_envp) * i); +- for (v = envp, ubp_v = ubp_envp; --i; v++, ubp_v++) +- *ubp_v = CHECK_STRING (*v); +- *ubp_v = 0; +- +- return INLINE_SYSCALL (execve, 3, CHECK_STRING (file), ubp_argv, ubp_envp); +- } +-#else + return INLINE_SYSCALL (execve, 3, file, argv, envp); +-#endif + } + weak_alias (__execve, execve) +diff --git a/sysdeps/unix/sysv/linux/fxstatat.c b/sysdeps/unix/sysv/linux/fxstatat.c +index 9bb608957ac98c9d..de98e667c76f9b3e 100644 +--- a/sysdeps/unix/sysv/linux/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/fxstatat.c +@@ -109,10 +109,10 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + if (vers == _STAT_VER_KERNEL) + { + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file), ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, + CHECK_1 ((struct kernel_stat *) st)); + else +- result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file), ++ result = INTERNAL_SYSCALL (stat, err, 2, file, + CHECK_1 ((struct kernel_stat *) st)); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) +@@ -126,11 +126,9 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + } + #else + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file), +- __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst)); + else +- result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file), +- __ptrvalue (&kst)); ++ result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst)); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat_conv (vers, &kst, st); +diff --git a/sysdeps/unix/sysv/linux/fxstatat64.c b/sysdeps/unix/sysv/linux/fxstatat64.c +index 4aa60df7abc9d929..10488b6c1daa210e 100644 +--- a/sysdeps/unix/sysv/linux/fxstatat64.c ++++ b/sysdeps/unix/sysv/linux/fxstatat64.c +@@ -99,11 +99,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag) + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat64, err, 2, CHECK_STRING (file), +- CHECK_1 (st)); ++ result = INTERNAL_SYSCALL (lstat64, err, 2, file, CHECK_1 (st)); + else +- result = INTERNAL_SYSCALL (stat64, err, 2, CHECK_STRING (file), +- CHECK_1 (st)); ++ result = INTERNAL_SYSCALL (stat64, err, 2, file, CHECK_1 (st)); + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + { + # if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 +diff --git a/sysdeps/unix/sysv/linux/getcwd.c b/sysdeps/unix/sysv/linux/getcwd.c +index 6a5e6262d997fc53..ab665ac9c6f6ac4d 100644 +--- a/sysdeps/unix/sysv/linux/getcwd.c ++++ b/sysdeps/unix/sysv/linux/getcwd.c +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + #include + +@@ -78,7 +77,7 @@ __getcwd (char *buf, size_t size) + + int retval; + +- retval = INLINE_SYSCALL (getcwd, 2, CHECK_STRING (path), alloc_size); ++ retval = INLINE_SYSCALL (getcwd, 2, path, alloc_size); + if (retval >= 0 && path[0] == '/') + { + #ifndef NO_ALLOCATION +diff --git a/sysdeps/unix/sysv/linux/i386/chown.c b/sysdeps/unix/sysv/linux/i386/chown.c +index 5ea3cfd8692f3bf5..0ddf0651ae2e03f3 100644 +--- a/sysdeps/unix/sysv/linux/i386/chown.c ++++ b/sysdeps/unix/sysv/linux/i386/chown.c +@@ -21,7 +21,6 @@ + #include + #include + #include +-#include + + #include + +@@ -45,7 +44,7 @@ extern int __real_chown (const char *__file, uid_t __owner, gid_t __group); + int + __real_chown (const char *file, uid_t owner, gid_t group) + { +- return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group); ++ return INLINE_SYSCALL (chown32, 3, file, owner, group); + } + + +diff --git a/sysdeps/unix/sysv/linux/i386/fchownat.c b/sysdeps/unix/sysv/linux/i386/fchownat.c +index 18c8f0b317213b0f..116a24a07458e87c 100644 +--- a/sysdeps/unix/sysv/linux/i386/fchownat.c ++++ b/sysdeps/unix/sysv/linux/i386/fchownat.c +@@ -24,7 +24,6 @@ + #include + #include + #include +-#include + + #include + #include +@@ -86,11 +85,9 @@ fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag) + INTERNAL_SYSCALL_DECL (err); + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lchown32, err, 3, CHECK_STRING (file), owner, +- group); ++ result = INTERNAL_SYSCALL (lchown32, err, 3, file, owner, group); + else +- result = INTERNAL_SYSCALL (chown32, err, 3, CHECK_STRING (file), owner, +- group); ++ result = INTERNAL_SYSCALL (chown32, err, 3, file, owner, group); + + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 0)) + { +diff --git a/sysdeps/unix/sysv/linux/i386/fxstatat.c b/sysdeps/unix/sysv/linux/i386/fxstatat.c +index d1e81e081b7e91bf..010f637155d35d76 100644 +--- a/sysdeps/unix/sysv/linux/i386/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/i386/fxstatat.c +@@ -102,20 +102,18 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + if (vers == _STAT_VER_KERNEL) + { + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file), ++ result = INTERNAL_SYSCALL (lstat, err, 2, file, + CHECK_1 ((struct kernel_stat *) st)); + else +- result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file), ++ result = INTERNAL_SYSCALL (stat, err, 2, file, + CHECK_1 ((struct kernel_stat *) st)); + goto out; + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat64, err, 2, CHECK_STRING (file), +- __ptrvalue (&st64)); ++ result = INTERNAL_SYSCALL (lstat64, err, 2, file, __ptrvalue (&st64)); + else +- result = INTERNAL_SYSCALL (stat64, err, 2, CHECK_STRING (file), +- __ptrvalue (&st64)); ++ result = INTERNAL_SYSCALL (stat64, err, 2, file, __ptrvalue (&st64)); + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return __xstat32_conv (vers, &st64, st); + +diff --git a/sysdeps/unix/sysv/linux/i386/lchown.c b/sysdeps/unix/sysv/linux/i386/lchown.c +index 6190d02a6f068c5b..d90a0b5e350221ab 100644 +--- a/sysdeps/unix/sysv/linux/i386/lchown.c ++++ b/sysdeps/unix/sysv/linux/i386/lchown.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + #include + +@@ -29,7 +28,7 @@ + int + __lchown (const char *file, uid_t owner, gid_t group) + { +- return INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group); ++ return INLINE_SYSCALL (lchown32, 3, file, owner, group); + } + + weak_alias (__lchown, lchown) +diff --git a/sysdeps/unix/sysv/linux/i386/lxstat.c b/sysdeps/unix/sysv/linux/i386/lxstat.c +index 2b1ecaa0d94d86fc..9be5ff0f0e382c7e 100644 +--- a/sysdeps/unix/sysv/linux/i386/lxstat.c ++++ b/sysdeps/unix/sysv/linux/i386/lxstat.c +@@ -41,12 +41,12 @@ __lxstat (int vers, const char *name, struct stat *buf) + int result; + + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (lstat, 2, name, CHECK_1 ((struct kernel_stat *) buf)); + + { + struct stat64 buf64; + +- result = INLINE_SYSCALL (lstat64, 2, CHECK_STRING (name), __ptrvalue (&buf64)); ++ result = INLINE_SYSCALL (lstat64, 2, name, __ptrvalue (&buf64)); + if (result == 0) + result = __xstat32_conv (vers, &buf64, buf); + return result; +diff --git a/sysdeps/unix/sysv/linux/i386/xstat.c b/sysdeps/unix/sysv/linux/i386/xstat.c +index 0fe7a9dcdf028541..e44599c85a836419 100644 +--- a/sysdeps/unix/sysv/linux/i386/xstat.c ++++ b/sysdeps/unix/sysv/linux/i386/xstat.c +@@ -41,12 +41,12 @@ __xstat (int vers, const char *name, struct stat *buf) + int result; + + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (stat, 2, CHECK_STRING (name), CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (stat, 2, name, CHECK_1 ((struct kernel_stat *) buf)); + + { + struct stat64 buf64; + +- result = INLINE_SYSCALL (stat64, 2, CHECK_STRING (name), __ptrvalue (&buf64)); ++ result = INLINE_SYSCALL (stat64, 2, name, __ptrvalue (&buf64)); + if (result == 0) + result = __xstat32_conv (vers, &buf64, buf); + return result; +diff --git a/sysdeps/unix/sysv/linux/lxstat.c b/sysdeps/unix/sysv/linux/lxstat.c +index c7359647b67ee461..62b4650d8f771854 100644 +--- a/sysdeps/unix/sysv/linux/lxstat.c ++++ b/sysdeps/unix/sysv/linux/lxstat.c +@@ -36,7 +36,7 @@ int + __lxstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), ++ return INLINE_SYSCALL (lstat, 2, name, + CHECK_1 ((struct kernel_stat *) buf)); + + #ifdef STAT_IS_KERNEL_STAT +@@ -46,7 +46,7 @@ __lxstat (int vers, const char *name, struct stat *buf) + struct kernel_stat kbuf; + int result; + +- result = INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf)); + if (result == 0) + result = __xstat_conv (vers, &kbuf, buf); + +diff --git a/sysdeps/unix/sysv/linux/lxstat64.c b/sysdeps/unix/sysv/linux/lxstat64.c +index 765b195c6ceb6554..d5d9f93f782d0221 100644 +--- a/sysdeps/unix/sysv/linux/lxstat64.c ++++ b/sysdeps/unix/sysv/linux/lxstat64.c +@@ -32,7 +32,7 @@ int + ___lxstat64 (int vers, const char *name, struct stat64 *buf) + { + int result; +- result = INLINE_SYSCALL (lstat64, 2, CHECK_STRING (name), CHECK_1 (buf)); ++ result = INLINE_SYSCALL (lstat64, 2, name, CHECK_1 (buf)); + #if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 + if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino) + buf->st_ino = buf->__st_ino; +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c +index c9f66164ce2397c9..6f416599e9ebdd1d 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +@@ -30,7 +29,7 @@ truncate64 (path, length) + off64_t length; + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0, ++ int result = INLINE_SYSCALL (truncate64, 4, path, 0, + (long) (length >> 32), + (long) length); + return result; +diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/chown.c b/sysdeps/unix/sysv/linux/s390/s390-32/chown.c +index cc0503cbca14e822..f6a533d2b3fbe74e 100644 +--- a/sysdeps/unix/sysv/linux/s390/s390-32/chown.c ++++ b/sysdeps/unix/sysv/linux/s390/s390-32/chown.c +@@ -21,7 +21,6 @@ + #include + #include + #include +-#include + + #include + +@@ -42,7 +41,7 @@ + int + __real_chown (const char *file, uid_t owner, gid_t group) + { +- return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group); ++ return INLINE_SYSCALL (chown32, 3, file, owner, group); + } + + +diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/lchown.c b/sysdeps/unix/sysv/linux/s390/s390-32/lchown.c +index 6190d02a6f068c5b..d90a0b5e350221ab 100644 +--- a/sysdeps/unix/sysv/linux/s390/s390-32/lchown.c ++++ b/sysdeps/unix/sysv/linux/s390/s390-32/lchown.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + #include + +@@ -29,7 +28,7 @@ + int + __lchown (const char *file, uid_t owner, gid_t group) + { +- return INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group); ++ return INLINE_SYSCALL (lchown32, 3, file, owner, group); + } + + weak_alias (__lchown, lchown) +diff --git a/sysdeps/unix/sysv/linux/sh/chown.c b/sysdeps/unix/sysv/linux/sh/chown.c +index 5ae94b6b25b84e85..9ff0453d0ceb52ee 100644 +--- a/sysdeps/unix/sysv/linux/sh/chown.c ++++ b/sysdeps/unix/sysv/linux/sh/chown.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + #include + +@@ -29,7 +28,7 @@ + int + __chown (const char *file, uid_t owner, gid_t group) + { +- return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group); ++ return INLINE_SYSCALL (chown32, 3, file, owner, group); + } + libc_hidden_def (__chown) + weak_alias (__chown, chown) +diff --git a/sysdeps/unix/sysv/linux/truncate64.c b/sysdeps/unix/sysv/linux/truncate64.c +index b31b74d1dee485b4..98f8ec2691bad3a5 100644 +--- a/sysdeps/unix/sysv/linux/truncate64.c ++++ b/sysdeps/unix/sysv/linux/truncate64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +@@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length) + { + unsigned int low = length & 0xffffffff; + unsigned int high = length >> 32; +- int result = INLINE_SYSCALL (truncate64, 3, CHECK_STRING (path), ++ int result = INLINE_SYSCALL (truncate64, 3, path, + __LONG_LONG_PAIR (high, low)); + return result; + } +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c b/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c +index cec71518524c2bc2..f44778e787e5ad80 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c +@@ -34,7 +34,7 @@ int + __lxstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL || vers == _STAT_VER_LINUX) +- return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), CHECK_1 (buf)); ++ return INLINE_SYSCALL (lstat, 2, name, CHECK_1 (buf)); + + __set_errno (EINVAL); + return -1; +diff --git a/sysdeps/unix/sysv/linux/xmknod.c b/sysdeps/unix/sysv/linux/xmknod.c +index 9bd8b6b0d46bee4b..5b782b7af070f2ce 100644 +--- a/sysdeps/unix/sysv/linux/xmknod.c ++++ b/sysdeps/unix/sysv/linux/xmknod.c +@@ -24,7 +24,6 @@ + + #include + #include +-#include + + /* Create a device file named PATH, with permission and special bits MODE + and device number DEV (which can be constructed from major and minor +@@ -48,8 +47,7 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev) + return -1; + } + +- return INLINE_SYSCALL (mknod, 3, CHECK_STRING (path), mode, +- (unsigned int) k_dev); ++ return INLINE_SYSCALL (mknod, 3, path, mode, (unsigned int) k_dev); + } + + weak_alias (__xmknod, _xmknod) +diff --git a/sysdeps/unix/sysv/linux/xmknodat.c b/sysdeps/unix/sysv/linux/xmknodat.c +index bf91d25329a0193a..a0fa0a7984d0aa51 100644 +--- a/sysdeps/unix/sysv/linux/xmknodat.c ++++ b/sysdeps/unix/sysv/linux/xmknodat.c +@@ -26,7 +26,6 @@ + #include + #include + #include +-#include + + + /* Create a device file named PATH relative to FD, with permission and +@@ -92,8 +91,7 @@ __xmknodat (int vers, int fd, const char *file, mode_t mode, dev_t *dev) + file = buf; + } + +- return INLINE_SYSCALL (mknod, 3, CHECK_STRING (file), mode, +- (unsigned int) k_dev); ++ return INLINE_SYSCALL (mknod, 3, file, mode, (unsigned int) k_dev); + #endif + } + +diff --git a/sysdeps/unix/sysv/linux/xstat.c b/sysdeps/unix/sysv/linux/xstat.c +index d62feaf9fe5ee1df..179ea9e30123fb81 100644 +--- a/sysdeps/unix/sysv/linux/xstat.c ++++ b/sysdeps/unix/sysv/linux/xstat.c +@@ -36,7 +36,7 @@ int + __xstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (stat, 2, CHECK_STRING (name), ++ return INLINE_SYSCALL (stat, 2, name, + CHECK_1 ((struct kernel_stat *) buf)); + + #ifdef STAT_IS_KERNEL_STAT +@@ -46,8 +46,7 @@ __xstat (int vers, const char *name, struct stat *buf) + struct kernel_stat kbuf; + int result; + +- result = INLINE_SYSCALL (stat, 2, CHECK_STRING (name), +- __ptrvalue (&kbuf)); ++ result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf)); + if (result == 0) + result = __xstat_conv (vers, &kbuf, buf); + +diff --git a/sysdeps/unix/sysv/linux/xstat64.c b/sysdeps/unix/sysv/linux/xstat64.c +index dd0f996760502423..89976a68e9d86699 100644 +--- a/sysdeps/unix/sysv/linux/xstat64.c ++++ b/sysdeps/unix/sysv/linux/xstat64.c +@@ -33,7 +33,7 @@ int + ___xstat64 (int vers, const char *name, struct stat64 *buf) + { + int result; +- result = INLINE_SYSCALL (stat64, 2, CHECK_STRING (name), CHECK_1 (buf)); ++ result = INLINE_SYSCALL (stat64, 2, name, CHECK_1 (buf)); + #if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 + if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino) + buf->st_ino = buf->__st_ino; diff --git a/SOURCES/glibc-rh1505492-bounded-7.patch b/SOURCES/glibc-rh1505492-bounded-7.patch new file mode 100644 index 0000000..117c302 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-7.patch @@ -0,0 +1,68 @@ +commit b2c9eff43c49d528c7ad3d0d91d03ccf0ae5ae0f +Author: Joseph Myers +Date: Fri Feb 8 01:10:40 2013 +0000 + + Remove CHECK_BOUNDS_LOW and CHECK_BOUNDS_HIGH for C code. + +diff --git a/string/strcpy.c b/string/strcpy.c +index acc580ba3edb3073..812de20a3732cce5 100644 +--- a/string/strcpy.c ++++ b/string/strcpy.c +@@ -18,7 +18,6 @@ + #include + #include + #include +-#include + + #undef strcpy + +@@ -29,8 +28,8 @@ strcpy (dest, src) + const char *src; + { + char c; +- char *__unbounded s = (char *__unbounded) CHECK_BOUNDS_LOW (src); +- const ptrdiff_t off = CHECK_BOUNDS_LOW (dest) - s - 1; ++ char *__unbounded s = (char *__unbounded) src; ++ const ptrdiff_t off = dest - s - 1; + size_t n; + + do +@@ -41,8 +40,6 @@ strcpy (dest, src) + while (c != '\0'); + + n = s - src; +- (void) CHECK_BOUNDS_HIGH (src + n); +- (void) CHECK_BOUNDS_HIGH (dest + n); + + return dest; + } +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index bf10617a3f6b8474..980f3b68a84df8cf 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -24,16 +24,6 @@ + + # define BOUNDS_VIOLATED (__builtin_trap (), 0) + +-/* Verify that pointer's value >= low. Return pointer value. */ +-# define CHECK_BOUNDS_LOW(ARG) \ +- (((__ptrvalue (ARG) < __ptrlow (ARG)) && BOUNDS_VIOLATED), \ +- __ptrvalue (ARG)) +- +-/* Verify that pointer's value < high. Return pointer value. */ +-# define CHECK_BOUNDS_HIGH(ARG) \ +- (((__ptrvalue (ARG) > __ptrhigh (ARG)) && BOUNDS_VIOLATED), \ +- __ptrvalue (ARG)) +- + # define _CHECK_N(ARG, N, COND) \ + (((COND) \ + && (__ptrvalue (ARG) < __ptrlow (ARG) \ +@@ -56,8 +46,6 @@ + /* Do nothing if not compiling with -fbounded-pointers. */ + + # define BOUNDS_VIOLATED +-# define CHECK_BOUNDS_LOW(ARG) (ARG) +-# define CHECK_BOUNDS_HIGH(ARG) (ARG) + # define CHECK_1(ARG) (ARG) + # define CHECK_1_NULL_OK(ARG) (ARG) + # define CHECK_N(ARG, N) (ARG) diff --git a/SOURCES/glibc-rh1505492-bounded-8.patch b/SOURCES/glibc-rh1505492-bounded-8.patch new file mode 100644 index 0000000..8ff71f5 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-8.patch @@ -0,0 +1,956 @@ +commit f3aae3f3eb4e4345413dc238e941cdb52f747d16 +Author: Joseph Myers +Date: Fri Feb 8 01:12:11 2013 +0000 + + Remove CHECK_1 and CHECK_1_NULL_OK. + +Conflicts: + sysdeps/unix/sysv/linux/powerpc/gettimeofday.c + +Change was already part of glibc-rh977110-2.patch. + +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c b/ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +index 11194f6da7e56429..90d115577bad42ec 100644 +--- a/ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c ++++ b/ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +@@ -22,7 +22,6 @@ + #undef __gettimeofday + + #include +-#include + + /* Get the current time of day and timezone information, + putting it into *tv and *tz. If tz is null, *tz is not filled. +@@ -32,7 +31,7 @@ __gettimeofday (tv, tz) + struct timeval *tv; + struct timezone *tz; + { +- return INLINE_VSYSCALL (gettimeofday, 2, CHECK_1 (tv), CHECK_1 (tz)); ++ return INLINE_VSYSCALL (gettimeofday, 2, tv, tz); + } + libc_hidden_def (__gettimeofday) + weak_alias (__gettimeofday, gettimeofday) +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c +index 82c734b9a06081e7..690efb470c784de8 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c +@@ -21,13 +21,12 @@ + #include + #include + #include +-#include + + + int + __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + { +- return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, CHECK_1 (buf)); ++ return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf); + } + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c +index fb825a80deb2a9be..009ef651cd2ffdb5 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c +@@ -22,13 +22,12 @@ + #include + #include + #include +-#include + + + int + __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + { +- return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, CHECK_1 (buf)); ++ return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf); + } + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigaction.c b/ports/sysdeps/unix/sysv/linux/ia64/sigaction.c +index bb0d53d54cdcf133..403b6d8fd0c9b92f 100644 +--- a/ports/sysdeps/unix/sysv/linux/ia64/sigaction.c ++++ b/ports/sysdeps/unix/sysv/linux/ia64/sigaction.c +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + /* The variable is shared between all wrappers around signal handling + functions which have RT equivalents. This is the definition. */ +@@ -42,8 +41,7 @@ __libc_sigaction (sig, act, oact) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +- return INLINE_SYSCALL (rt_sigaction, 4, sig, +- CHECK_1_NULL_OK (act), CHECK_1_NULL_OK (oact), _NSIG / 8); ++ return INLINE_SYSCALL (rt_sigaction, 4, sig, act, oact, _NSIG / 8); + } + libc_hidden_def (__libc_sigaction) + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c +index 91c6f1ab28774288..327e951808509c31 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c +@@ -20,14 +20,12 @@ + #include + #include + +-#include +- + int __msgctl (int msqid, int cmd, struct msqid_ds *buf); + + int + __msgctl (int msqid, int cmd, struct msqid_ds *buf) + { +- return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, CHECK_1 (buf)); ++ return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf); + } + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c +index da07427c3aa6049d..911de66ccd45610f 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c +@@ -20,14 +20,12 @@ + #include + #include + +-#include +- + int __shmctl (int shmid, int cmd, struct shmid_ds *buf); + + int + __shmctl (int shmid, int cmd, struct shmid_ds *buf) + { +- return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, CHECK_1 (buf)); ++ return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf); + } + + #include +diff --git a/ports/sysdeps/unix/sysv/linux/mips/ustat.c b/ports/sysdeps/unix/sysv/linux/mips/ustat.c +index aa84b536245bbef3..d070403faa9143c9 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/ustat.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/ustat.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + int + ustat (dev_t dev, struct ustat *ubuf) +@@ -32,5 +31,5 @@ ustat (dev_t dev, struct ustat *ubuf) + /* We must convert the value to dev_t type used by the kernel. */ + k_dev = ((major (dev) & 0xff) << 8) | (minor (dev) & 0xff); + +- return INLINE_SYSCALL (ustat, 2, k_dev, CHECK_1 (ubuf)); ++ return INLINE_SYSCALL (ustat, 2, k_dev, ubuf); + } +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index 980f3b68a84df8cf..90a07fc10fde3a84 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -36,18 +36,11 @@ + /* Same as CHECK_N, but tolerate ARG == NULL. */ + # define CHECK_N_NULL_OK(ARG, N) _CHECK_N ((ARG), (N), __ptrvalue (ARG)) + +-/* Check bounds of a pointer seated to a single object. */ +-# define CHECK_1(ARG) CHECK_N ((ARG), 1) +-/* Same as CHECK_1, but tolerate ARG == NULL. */ +-# define CHECK_1_NULL_OK(ARG) CHECK_N_NULL_OK ((ARG), 1) +- + #else /* !__BOUNDED_POINTERS__ */ + + /* Do nothing if not compiling with -fbounded-pointers. */ + + # define BOUNDS_VIOLATED +-# define CHECK_1(ARG) (ARG) +-# define CHECK_1_NULL_OK(ARG) (ARG) + # define CHECK_N(ARG, N) (ARG) + # define CHECK_N_NULL_OK(ARG, N) (ARG) + +diff --git a/sysdeps/unix/sysv/linux/fxstat.c b/sysdeps/unix/sysv/linux/fxstat.c +index e6ec9dee7fc044ea..369ceb818267086c 100644 +--- a/sysdeps/unix/sysv/linux/fxstat.c ++++ b/sysdeps/unix/sysv/linux/fxstat.c +@@ -28,7 +28,6 @@ + + #include + #include +-#include + + #include + +@@ -37,7 +36,7 @@ int + __fxstat (int vers, int fd, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (fstat, 2, fd, CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (fstat, 2, fd, (struct kernel_stat *) buf); + + #ifdef STAT_IS_KERNEL_STAT + errno = EINVAL; +diff --git a/sysdeps/unix/sysv/linux/fxstat64.c b/sysdeps/unix/sysv/linux/fxstat64.c +index b2ad48bdb76e0b39..ca948c64c247dc22 100644 +--- a/sysdeps/unix/sysv/linux/fxstat64.c ++++ b/sysdeps/unix/sysv/linux/fxstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -33,7 +32,7 @@ int + ___fxstat64 (int vers, int fd, struct stat64 *buf) + { + int result; +- result = INLINE_SYSCALL (fstat64, 2, fd, CHECK_1 (buf)); ++ result = INLINE_SYSCALL (fstat64, 2, fd, buf); + #if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 + if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino) + buf->st_ino = buf->__st_ino; +diff --git a/sysdeps/unix/sysv/linux/fxstatat.c b/sysdeps/unix/sysv/linux/fxstatat.c +index de98e667c76f9b3e..127f979adf050b45 100644 +--- a/sysdeps/unix/sysv/linux/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/fxstatat.c +@@ -29,7 +29,6 @@ + + #include + #include +-#include + #include + + #include +@@ -110,10 +109,10 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + { + if (flag & AT_SYMLINK_NOFOLLOW) + result = INTERNAL_SYSCALL (lstat, err, 2, file, +- CHECK_1 ((struct kernel_stat *) st)); ++ (struct kernel_stat *) st); + else + result = INTERNAL_SYSCALL (stat, err, 2, file, +- CHECK_1 ((struct kernel_stat *) st)); ++ (struct kernel_stat *) st); + + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + return result; +diff --git a/sysdeps/unix/sysv/linux/fxstatat64.c b/sysdeps/unix/sysv/linux/fxstatat64.c +index 10488b6c1daa210e..a14fd78c1cbaca19 100644 +--- a/sysdeps/unix/sysv/linux/fxstatat64.c ++++ b/sysdeps/unix/sysv/linux/fxstatat64.c +@@ -25,7 +25,6 @@ + + #include + #include +-#include + + #include + +@@ -99,9 +98,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag) + } + + if (flag & AT_SYMLINK_NOFOLLOW) +- result = INTERNAL_SYSCALL (lstat64, err, 2, file, CHECK_1 (st)); ++ result = INTERNAL_SYSCALL (lstat64, err, 2, file, st); + else +- result = INTERNAL_SYSCALL (stat64, err, 2, file, CHECK_1 (st)); ++ result = INTERNAL_SYSCALL (stat64, err, 2, file, st); + if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1)) + { + # if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 +diff --git a/sysdeps/unix/sysv/linux/i386/fxstat.c b/sysdeps/unix/sysv/linux/i386/fxstat.c +index a1a950ee7aff64f9..323039927e1687a3 100644 +--- a/sysdeps/unix/sysv/linux/i386/fxstat.c ++++ b/sysdeps/unix/sysv/linux/i386/fxstat.c +@@ -27,7 +27,6 @@ + + #include + #include +-#include + + #include + +@@ -40,7 +39,7 @@ __fxstat (int vers, int fd, struct stat *buf) + int result; + + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (fstat, 2, fd, CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (fstat, 2, fd, (struct kernel_stat *) buf); + + { + struct stat64 buf64; +diff --git a/sysdeps/unix/sysv/linux/i386/fxstatat.c b/sysdeps/unix/sysv/linux/i386/fxstatat.c +index 010f637155d35d76..ad3a386864f8b04b 100644 +--- a/sysdeps/unix/sysv/linux/i386/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/i386/fxstatat.c +@@ -29,7 +29,6 @@ + + #include + #include +-#include + + #include + +@@ -103,10 +102,10 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + { + if (flag & AT_SYMLINK_NOFOLLOW) + result = INTERNAL_SYSCALL (lstat, err, 2, file, +- CHECK_1 ((struct kernel_stat *) st)); ++ (struct kernel_stat *) st); + else + result = INTERNAL_SYSCALL (stat, err, 2, file, +- CHECK_1 ((struct kernel_stat *) st)); ++ (struct kernel_stat *) st); + goto out; + } + +diff --git a/sysdeps/unix/sysv/linux/i386/getresgid.c b/sysdeps/unix/sysv/linux/i386/getresgid.c +index d9ce513b1d80387d..46a3cccacb520602 100644 +--- a/sysdeps/unix/sysv/linux/i386/getresgid.c ++++ b/sysdeps/unix/sysv/linux/i386/getresgid.c +@@ -23,15 +23,13 @@ + + #include + #include +-#include + + /* Consider moving to syscalls.list. */ + + int + __getresgid (gid_t *rgid, gid_t *egid, gid_t *sgid) + { +- return INLINE_SYSCALL (getresgid32, 3, CHECK_1 (rgid), +- CHECK_1 (egid), CHECK_1 (sgid)); ++ return INLINE_SYSCALL (getresgid32, 3, rgid, egid, sgid); + } + libc_hidden_def (__getresgid) + weak_alias (__getresgid, getresgid) +diff --git a/sysdeps/unix/sysv/linux/i386/getresuid.c b/sysdeps/unix/sysv/linux/i386/getresuid.c +index f9c3180fb1eb846e..42e68384da26b5db 100644 +--- a/sysdeps/unix/sysv/linux/i386/getresuid.c ++++ b/sysdeps/unix/sysv/linux/i386/getresuid.c +@@ -23,15 +23,13 @@ + + #include + #include +-#include + + /* Consider moving to syscalls.list. */ + + int + __getresuid (uid_t *ruid, uid_t *euid, uid_t *suid) + { +- return INLINE_SYSCALL (getresuid32, 3, CHECK_1 (ruid), +- CHECK_1 (euid), CHECK_1 (suid)); ++ return INLINE_SYSCALL (getresuid32, 3, ruid, euid, suid); + } + libc_hidden_def (__getresuid) + weak_alias (__getresuid, getresuid) +diff --git a/sysdeps/unix/sysv/linux/i386/lxstat.c b/sysdeps/unix/sysv/linux/i386/lxstat.c +index 9be5ff0f0e382c7e..97b237404f8c8822 100644 +--- a/sysdeps/unix/sysv/linux/i386/lxstat.c ++++ b/sysdeps/unix/sysv/linux/i386/lxstat.c +@@ -27,7 +27,6 @@ + + #include + #include +-#include + + #include + +@@ -41,7 +40,7 @@ __lxstat (int vers, const char *name, struct stat *buf) + int result; + + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (lstat, 2, name, CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (lstat, 2, name, (struct kernel_stat *) buf); + + { + struct stat64 buf64; +diff --git a/sysdeps/unix/sysv/linux/i386/msgctl.c b/sysdeps/unix/sysv/linux/i386/msgctl.c +index 2125ae192c12af99..7d009801b16fbdba 100644 +--- a/sysdeps/unix/sysv/linux/i386/msgctl.c ++++ b/sysdeps/unix/sysv/linux/i386/msgctl.c +@@ -23,7 +23,6 @@ + #include + #include + #include +-#include + + #include + +@@ -56,8 +55,7 @@ int + attribute_compat_text_section + __old_msgctl (int msqid, int cmd, struct __old_msqid_ds *buf) + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd, 0, CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, buf); + } + compat_symbol (libc, __old_msgctl, msgctl, GLIBC_2_0); + #endif +@@ -66,7 +64,7 @@ int + __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd | __IPC_64, 0, CHECK_1 (buf)); ++ msqid, cmd | __IPC_64, 0, buf); + } + + versioned_symbol (libc, __new_msgctl, msgctl, GLIBC_2_2); +diff --git a/sysdeps/unix/sysv/linux/i386/setrlimit.c b/sysdeps/unix/sysv/linux/i386/setrlimit.c +index 7683b858f7c9bb05..7d0840ded5fe3c70 100644 +--- a/sysdeps/unix/sysv/linux/i386/setrlimit.c ++++ b/sysdeps/unix/sysv/linux/i386/setrlimit.c +@@ -22,7 +22,6 @@ + #include + #include + #include +-#include + + extern int __new_setrlimit (enum __rlimit_resource resource, + const struct rlimit *__unboundedrlimits); +@@ -32,7 +31,7 @@ extern int __new_setrlimit (enum __rlimit_resource resource, + int + __new_setrlimit (enum __rlimit_resource resource, const struct rlimit *rlimits) + { +- return INLINE_SYSCALL (setrlimit, 2, resource, CHECK_1 (rlimits)); ++ return INLINE_SYSCALL (setrlimit, 2, resource, rlimits); + } + + weak_alias (__new_setrlimit, __setrlimit); +diff --git a/sysdeps/unix/sysv/linux/i386/shmctl.c b/sysdeps/unix/sysv/linux/i386/shmctl.c +index dd2167d9a78d524f..a1f4feb3fe1c815c 100644 +--- a/sysdeps/unix/sysv/linux/i386/shmctl.c ++++ b/sysdeps/unix/sysv/linux/i386/shmctl.c +@@ -24,7 +24,6 @@ + #include + #include + #include +-#include + + #include + +@@ -63,8 +62,7 @@ int + attribute_compat_text_section + __old_shmctl (int shmid, int cmd, struct __old_shmid_ds *buf) + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, +- shmid, cmd, 0, CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, buf); + } + compat_symbol (libc, __old_shmctl, shmctl, GLIBC_2_0); + #endif +@@ -73,7 +71,7 @@ int + __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, +- shmid, cmd | __IPC_64, 0, CHECK_1 (buf)); ++ shmid, cmd | __IPC_64, 0, buf); + } + + versioned_symbol (libc, __new_shmctl, shmctl, GLIBC_2_2); +diff --git a/sysdeps/unix/sysv/linux/i386/xstat.c b/sysdeps/unix/sysv/linux/i386/xstat.c +index e44599c85a836419..f063ac98d849ed7b 100644 +--- a/sysdeps/unix/sysv/linux/i386/xstat.c ++++ b/sysdeps/unix/sysv/linux/i386/xstat.c +@@ -27,7 +27,6 @@ + + #include + #include +-#include + + #include + +@@ -41,7 +40,7 @@ __xstat (int vers, const char *name, struct stat *buf) + int result; + + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (stat, 2, name, CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (stat, 2, name, (struct kernel_stat *) buf); + + { + struct stat64 buf64; +diff --git a/sysdeps/unix/sysv/linux/lxstat.c b/sysdeps/unix/sysv/linux/lxstat.c +index 62b4650d8f771854..15f93b09ec1661f1 100644 +--- a/sysdeps/unix/sysv/linux/lxstat.c ++++ b/sysdeps/unix/sysv/linux/lxstat.c +@@ -27,7 +27,6 @@ + + #include + #include +-#include + + #include + +@@ -36,8 +35,7 @@ int + __lxstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (lstat, 2, name, +- CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (lstat, 2, name, (struct kernel_stat *) buf); + + #ifdef STAT_IS_KERNEL_STAT + errno = EINVAL; +diff --git a/sysdeps/unix/sysv/linux/lxstat64.c b/sysdeps/unix/sysv/linux/lxstat64.c +index d5d9f93f782d0221..c4420904f936ec93 100644 +--- a/sysdeps/unix/sysv/linux/lxstat64.c ++++ b/sysdeps/unix/sysv/linux/lxstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -32,7 +31,7 @@ int + ___lxstat64 (int vers, const char *name, struct stat64 *buf) + { + int result; +- result = INLINE_SYSCALL (lstat64, 2, name, CHECK_1 (buf)); ++ result = INLINE_SYSCALL (lstat64, 2, name, buf); + #if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 + if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino) + buf->st_ino = buf->__st_ino; +diff --git a/sysdeps/unix/sysv/linux/msgctl.c b/sysdeps/unix/sysv/linux/msgctl.c +index 7819f3fbf76af81f..00285a7103d70cea 100644 +--- a/sysdeps/unix/sysv/linux/msgctl.c ++++ b/sysdeps/unix/sysv/linux/msgctl.c +@@ -25,7 +25,6 @@ + #include + #include + #include +-#include + + #include + +@@ -58,7 +57,7 @@ int + attribute_compat_text_section + __old_msgctl (int msqid, int cmd, struct __old_msqid_ds *buf) + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, buf); + } + compat_symbol (libc, __old_msgctl, msgctl, GLIBC_2_0); + #endif +@@ -68,7 +67,7 @@ __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + { + #if __ASSUME_IPC64 > 0 + return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd | __IPC_64, 0, CHECK_1 (buf)); ++ msqid, cmd | __IPC_64, 0, buf); + #else + switch (cmd) { + case MSG_STAT: +@@ -77,7 +76,7 @@ __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + break; + default: + return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd, 0, CHECK_1 (buf)); ++ msqid, cmd, 0, buf); + } + + { +@@ -87,7 +86,7 @@ __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + /* Unfortunately there is no way how to find out for sure whether + we should use old or new msgctl. */ + result = INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, +- msqid, cmd | __IPC_64, 0, CHECK_1 (buf)); ++ msqid, cmd | __IPC_64, 0, buf); + if (result != -1 || errno != EINVAL) + return result; + +diff --git a/sysdeps/unix/sysv/linux/ptrace.c b/sysdeps/unix/sysv/linux/ptrace.c +index c18590d1cf27e88d..a75e5ba0a8ab6b53 100644 +--- a/sysdeps/unix/sysv/linux/ptrace.c ++++ b/sysdeps/unix/sysv/linux/ptrace.c +@@ -24,7 +24,6 @@ + + #include + #include +-#include + + long int + ptrace (enum __ptrace_request request, ...) +@@ -43,77 +42,6 @@ ptrace (enum __ptrace_request request, ...) + if (request > 0 && request < 4) + data = &ret; + +-#if __BOUNDED_POINTERS__ +- switch (request) +- { +- case PTRACE_PEEKTEXT: +- case PTRACE_PEEKDATA: +- case PTRACE_PEEKUSER: +- case PTRACE_POKETEXT: +- case PTRACE_POKEDATA: +- case PTRACE_POKEUSER: +- (void) CHECK_1 ((int *) addr); +- (void) CHECK_1 ((int *) data); +- break; +- +- case PTRACE_GETREGS: +- case PTRACE_SETREGS: +-#ifdef __i386__ +- (void) CHECK_1 ((struct user_regs_struct *) data); +-#else +- /* We don't know the size of data, so the best we can do is ensure +- that `data' is valid for at least one word. */ +- (void) CHECK_1 ((int *) data); +-#endif +- break; +- +- case PTRACE_GETFPREGS: +- case PTRACE_SETFPREGS: +-#ifdef __i386__ +- (void) CHECK_1 ((struct user_fpregs_struct *) data); +-#else +- /* We don't know the size of data, so the best we can do is ensure +- that `data' is valid for at least one word. */ +- (void) CHECK_1 ((int *) data); +-#endif +- break; +- +- case PTRACE_GETFPXREGS: +- case PTRACE_SETFPXREGS: +-#ifdef __i386__ +- (void) CHECK_1 ((struct user_fpxregs_struct *) data); +-#else +- /* We don't know the size of data, so the best we can do is ensure +- that `data' is valid for at least one word. */ +- (void) CHECK_1 ((int *) data); +-#endif +- break; +- +- case PTRACE_GETSIGINFO: +- case PTRACE_SETSIGINFO: +- (void) CHECK_1 ((siginfo_t *) data); +- break; +- +- case PTRACE_GETEVENTMSG: +- (void) CHECK_1 ((unsigned long *) data); +- break; +- +- case PTRACE_SETOPTIONS: +- (void) CHECK_1 ((long *) data); +- break; +- +- case PTRACE_TRACEME: +- case PTRACE_CONT: +- case PTRACE_KILL: +- case PTRACE_SINGLESTEP: +- case PTRACE_ATTACH: +- case PTRACE_DETACH: +- case PTRACE_SYSCALL: +- /* Neither `data' nor `addr' needs any checks. */ +- break; +- }; +-#endif +- + res = INLINE_SYSCALL (ptrace, 4, request, pid, + __ptrvalue (addr), __ptrvalue (data)); + if (res >= 0 && request > 0 && request < 4) +diff --git a/sysdeps/unix/sysv/linux/s390/gettimeofday.c b/sysdeps/unix/sysv/linux/s390/gettimeofday.c +index efbf1e8110f71cdb..d897e1a6b68c069a 100644 +--- a/sysdeps/unix/sysv/linux/s390/gettimeofday.c ++++ b/sysdeps/unix/sysv/linux/s390/gettimeofday.c +@@ -16,7 +16,6 @@ + . */ + + #include +-#include + #include + #include + #include +@@ -33,7 +32,7 @@ __gettimeofday (tv, tz) + struct timeval *tv; + struct timezone *tz; + { +- return INLINE_VSYSCALL (gettimeofday, 2, CHECK_1 (tv), CHECK_1 (tz)); ++ return INLINE_VSYSCALL (gettimeofday, 2, tv, tz); + } + libc_hidden_def (__gettimeofday) + weak_alias (__gettimeofday, gettimeofday) +diff --git a/sysdeps/unix/sysv/linux/shmctl.c b/sysdeps/unix/sysv/linux/shmctl.c +index dbc965e29ca9c701..3fb6b0c0f203db08 100644 +--- a/sysdeps/unix/sysv/linux/shmctl.c ++++ b/sysdeps/unix/sysv/linux/shmctl.c +@@ -26,7 +26,6 @@ + #include + #include + #include +-#include + + #include + +@@ -65,8 +64,7 @@ int + attribute_compat_text_section + __old_shmctl (int shmid, int cmd, struct __old_shmid_ds *buf) + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, +- cmd, 0, CHECK_1_NULL_OK (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, buf); + } + compat_symbol (libc, __old_shmctl, shmctl, GLIBC_2_0); + #endif +@@ -76,7 +74,7 @@ __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + { + #if __ASSUME_IPC64 > 0 + return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd | __IPC_64, 0, +- CHECK_1 (buf)); ++ buf); + #else + switch (cmd) { + case SHM_STAT: +@@ -87,8 +85,7 @@ __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + #endif + break; + default: +- return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, +- CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, buf); + } + + { +@@ -102,7 +99,7 @@ __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + /* Unfortunately there is no way how to find out for sure whether + we should use old or new shmctl. */ + result = INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd | __IPC_64, 0, +- CHECK_1 (buf)); ++ buf); + if (result != -1 || errno != EINVAL) + return result; + +diff --git a/sysdeps/unix/sysv/linux/sigtimedwait.c b/sysdeps/unix/sysv/linux/sigtimedwait.c +index 34834c0cb1f9e362..1cf24d0e47330b8a 100644 +--- a/sysdeps/unix/sysv/linux/sigtimedwait.c ++++ b/sysdeps/unix/sysv/linux/sigtimedwait.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #ifdef __NR_rt_sigtimedwait + +@@ -52,7 +51,7 @@ do_sigtimedwait (const sigset_t *set, siginfo_t *info, + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, +- CHECK_1 (info), timeout, _NSIG / 8); ++ info, timeout, _NSIG / 8); + + /* The kernel generates a SI_TKILL code in si_code in case tkill is + used. tkill is transparently used in raise(). Since having +diff --git a/sysdeps/unix/sysv/linux/sigwaitinfo.c b/sysdeps/unix/sysv/linux/sigwaitinfo.c +index f70386a31bce66bd..0e38dff1be6cc21a 100644 +--- a/sysdeps/unix/sysv/linux/sigwaitinfo.c ++++ b/sysdeps/unix/sysv/linux/sigwaitinfo.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #ifdef __NR_rt_sigtimedwait + +@@ -53,7 +52,7 @@ do_sigwaitinfo (const sigset_t *set, siginfo_t *info) + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ + int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set, +- CHECK_1 (info), NULL, _NSIG / 8); ++ info, NULL, _NSIG / 8); + + /* The kernel generates a SI_TKILL code in si_code in case tkill is + used. tkill is transparently used in raise(). Since having +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/msgctl.c b/sysdeps/unix/sysv/linux/sparc/sparc64/msgctl.c +index 98e06e3d0e7d0f46..3655426350652a7d 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/msgctl.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/msgctl.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Allows to control internal state and destruction of message queue + objects. */ +@@ -33,5 +32,5 @@ msgctl (msqid, cmd, buf) + int cmd; + struct msqid_ds *buf; + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, msqid, cmd, 0, buf); + } +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/shmctl.c b/sysdeps/unix/sysv/linux/sparc/sparc64/shmctl.c +index eb3b4f3bab2a22a7..89f755a984044fa7 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/shmctl.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/shmctl.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Provide operations to control over shared memory segments. */ + +@@ -32,5 +31,5 @@ shmctl (shmid, cmd, buf) + int cmd; + struct shmid_ds *buf; + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, CHECK_1 (buf)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd, 0, buf); + } +diff --git a/sysdeps/unix/sysv/linux/ustat.c b/sysdeps/unix/sysv/linux/ustat.c +index 70d6e89ba8f6cadf..007ae35997d9c3d6 100644 +--- a/sysdeps/unix/sysv/linux/ustat.c ++++ b/sysdeps/unix/sysv/linux/ustat.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + int + ustat (dev_t dev, struct ustat *ubuf) +@@ -37,5 +36,5 @@ ustat (dev_t dev, struct ustat *ubuf) + return -1; + } + +- return INLINE_SYSCALL (ustat, 2, (unsigned int) k_dev, CHECK_1 (ubuf)); ++ return INLINE_SYSCALL (ustat, 2, (unsigned int) k_dev, ubuf); + } +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/fxstat.c b/sysdeps/unix/sysv/linux/wordsize-64/fxstat.c +index e6366c9edbe31bcc..401db59272eb91cb 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/fxstat.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/fxstat.c +@@ -27,14 +27,13 @@ + + #include + #include +-#include + + /* Get information about the file FD in BUF. */ + int + __fxstat (int vers, int fd, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL || vers == _STAT_VER_LINUX) +- return INLINE_SYSCALL (fstat, 2, fd, CHECK_1 (buf)); ++ return INLINE_SYSCALL (fstat, 2, fd, buf); + + __set_errno (EINVAL); + return -1; +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c b/sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c +index 3891e858af998003..f9289f4526e47fc6 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + + + /* Get information about the file NAME relative to FD in ST. */ +@@ -95,9 +94,9 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag) + INTERNAL_SYSCALL_DECL (err); + + if (flag & AT_SYMLINK_NOFOLLOW) +- res = INTERNAL_SYSCALL (lstat, err, 2, file, CHECK_1 (st)); ++ res = INTERNAL_SYSCALL (lstat, err, 2, file, st); + else +- res = INTERNAL_SYSCALL (stat, err, 2, file, CHECK_1 (st)); ++ res = INTERNAL_SYSCALL (stat, err, 2, file, st); + + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (res, err), 0)) + { +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c b/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c +index f44778e787e5ad80..6830d567b5727875 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/lxstat.c +@@ -27,14 +27,13 @@ + + #include + #include +-#include + + /* Get information about the file FD in BUF. */ + int + __lxstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL || vers == _STAT_VER_LINUX) +- return INLINE_SYSCALL (lstat, 2, name, CHECK_1 (buf)); ++ return INLINE_SYSCALL (lstat, 2, name, buf); + + __set_errno (EINVAL); + return -1; +diff --git a/sysdeps/unix/sysv/linux/wordsize-64/xstat.c b/sysdeps/unix/sysv/linux/wordsize-64/xstat.c +index b4ab7b8fe9ebf2a8..3bee7a3fc88cd03a 100644 +--- a/sysdeps/unix/sysv/linux/wordsize-64/xstat.c ++++ b/sysdeps/unix/sysv/linux/wordsize-64/xstat.c +@@ -27,14 +27,13 @@ + + #include + #include +-#include + + /* Get information about the file NAME in BUF. */ + int + __xstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL || vers == _STAT_VER_LINUX) +- return INLINE_SYSCALL (stat, 2, name, CHECK_1 (buf)); ++ return INLINE_SYSCALL (stat, 2, name, buf); + + __set_errno (EINVAL); + return -1; +diff --git a/sysdeps/unix/sysv/linux/xstat.c b/sysdeps/unix/sysv/linux/xstat.c +index 179ea9e30123fb81..a3c0c1ca42424830 100644 +--- a/sysdeps/unix/sysv/linux/xstat.c ++++ b/sysdeps/unix/sysv/linux/xstat.c +@@ -27,7 +27,6 @@ + + #include + #include +-#include + + #include + +@@ -36,8 +35,7 @@ int + __xstat (int vers, const char *name, struct stat *buf) + { + if (vers == _STAT_VER_KERNEL) +- return INLINE_SYSCALL (stat, 2, name, +- CHECK_1 ((struct kernel_stat *) buf)); ++ return INLINE_SYSCALL (stat, 2, name, (struct kernel_stat *) buf); + + #ifdef STAT_IS_KERNEL_STAT + errno = EINVAL; +diff --git a/sysdeps/unix/sysv/linux/xstat64.c b/sysdeps/unix/sysv/linux/xstat64.c +index 89976a68e9d86699..5c31a919828d311b 100644 +--- a/sysdeps/unix/sysv/linux/xstat64.c ++++ b/sysdeps/unix/sysv/linux/xstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -33,7 +32,7 @@ int + ___xstat64 (int vers, const char *name, struct stat64 *buf) + { + int result; +- result = INLINE_SYSCALL (stat64, 2, name, CHECK_1 (buf)); ++ result = INLINE_SYSCALL (stat64, 2, name, buf); + #if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0 + if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino) + buf->st_ino = buf->__st_ino; diff --git a/SOURCES/glibc-rh1505492-bounded-9.patch b/SOURCES/glibc-rh1505492-bounded-9.patch new file mode 100644 index 0000000..93e9e35 --- /dev/null +++ b/SOURCES/glibc-rh1505492-bounded-9.patch @@ -0,0 +1,1144 @@ +commit a2da1673fe32540799c801e8aec374dc1c0e0596 +Author: Joseph Myers +Date: Fri Feb 8 20:06:30 2013 +0000 + + Remove CHECK_N and bp-checks.h. + +Conflicts: + sysdeps/generic/bp-checks.h + +Copyright header change; file removed manually. + +diff --git a/debug/segfault.c b/debug/segfault.c +index 98886dbf152f6ea3..67435b305b84089b 100644 +--- a/debug/segfault.c ++++ b/debug/segfault.c +@@ -32,8 +32,6 @@ + #include <_itoa.h> + #include + +-#include +- + /* This file defines macros to access the content of the sigcontext element + passed up by the signal handler. */ + #include +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c b/ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c +index 10f5035787aace19..ecb4a669d37b40c0 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/gethostname.c b/ports/sysdeps/unix/sysv/linux/alpha/gethostname.c +index cec26d9815dfc2c8..0bfdd399ba0d4767 100644 +--- a/ports/sysdeps/unix/sysv/linux/alpha/gethostname.c ++++ b/ports/sysdeps/unix/sysv/linux/alpha/gethostname.c +@@ -22,14 +22,13 @@ + + #include + #include +-#include + + int + __gethostname (char *name, size_t len) + { + int result; + +- result = INLINE_SYSCALL (gethostname, 2, CHECK_N (name, len), len); ++ result = INLINE_SYSCALL (gethostname, 2, name, len); + + if (result == 0 + /* See whether the string is terminated. If not we will return +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pread.c b/ports/sysdeps/unix/sysv/linux/arm/pread.c +index 4efe349e930b778c..ed7be7394307892c 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/pread.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/pread.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + ssize_t + __libc_pread (fd, buf, count, offset) +@@ -38,7 +37,7 @@ __libc_pread (fd, buf, count, offset) + { + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pread64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + return result; +@@ -48,7 +47,7 @@ __libc_pread (fd, buf, count, offset) + + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pread64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pread64.c b/ports/sysdeps/unix/sysv/linux/arm/pread64.c +index 59bd9cfe0b9133ba..a3e8dfccb7446d76 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/pread64.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/pread64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + ssize_t + __libc_pread64 (fd, buf, count, offset) +@@ -38,7 +37,7 @@ __libc_pread64 (fd, buf, count, offset) + { + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pread64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +@@ -49,7 +48,7 @@ __libc_pread64 (fd, buf, count, offset) + + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pread64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pwrite.c b/ports/sysdeps/unix/sysv/linux/arm/pwrite.c +index 43788e5420240b69..a102f307926c2873 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/pwrite.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/pwrite.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + ssize_t + __libc_pwrite (fd, buf, count, offset) +@@ -38,7 +37,7 @@ __libc_pwrite (fd, buf, count, offset) + { + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pwrite64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + return result; +@@ -48,7 +47,7 @@ __libc_pwrite (fd, buf, count, offset) + + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pwrite64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pwrite64.c b/ports/sysdeps/unix/sysv/linux/arm/pwrite64.c +index c7bfdaf9f34a15b5..19b15f6bd7cb2e0d 100644 +--- a/ports/sysdeps/unix/sysv/linux/arm/pwrite64.c ++++ b/ports/sysdeps/unix/sysv/linux/arm/pwrite64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + ssize_t + __libc_pwrite64 (fd, buf, count, offset) +@@ -38,7 +37,7 @@ __libc_pwrite64 (fd, buf, count, offset) + { + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pwrite64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +@@ -49,7 +48,7 @@ __libc_pwrite64 (fd, buf, count, offset) + + /* In the ARM EABI, 64-bit values are aligned to even/odd register + pairs for syscalls. */ +- result = INLINE_SYSCALL (pwrite64, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite64, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +index 24b517e43846b80a..dda02b14442d5cb5 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pread.c b/ports/sysdeps/unix/sysv/linux/mips/pread.c +index a868130ea1144e44..f24e500c10efae99 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/pread.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/pread.c +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + #include + +@@ -54,10 +53,9 @@ __libc_pread (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + #endif + return result; +@@ -66,9 +64,9 @@ __libc_pread (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + #endif + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pread64.c b/ports/sysdeps/unix/sysv/linux/mips/pread64.c +index 6f9b0054a53faf67..d5172a039d7fd269 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/pread64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/pread64.c +@@ -25,7 +25,6 @@ + + #include + #include +-#include + + #include + +@@ -50,10 +49,9 @@ __libc_pread64 (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + #endif +@@ -63,9 +61,9 @@ __libc_pread64 (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + #endif +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pwrite.c b/ports/sysdeps/unix/sysv/linux/mips/pwrite.c +index cc0c3b7c22199cc0..caa69cbb4f7e3e77 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/pwrite.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/pwrite.c +@@ -26,7 +26,6 @@ + + #include + #include +-#include + + #include + +@@ -54,10 +53,9 @@ __libc_pwrite (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + #endif + return result; +@@ -66,9 +64,9 @@ __libc_pwrite (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + #endif + +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pwrite64.c b/ports/sysdeps/unix/sysv/linux/mips/pwrite64.c +index d60accd57fc3c535..d8ae27a9abf5c606 100644 +--- a/ports/sysdeps/unix/sysv/linux/mips/pwrite64.c ++++ b/ports/sysdeps/unix/sysv/linux/mips/pwrite64.c +@@ -25,7 +25,6 @@ + + #include + #include +-#include + + #include + +@@ -49,10 +48,9 @@ __libc_pwrite64 (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + #endif +@@ -63,9 +61,9 @@ __libc_pwrite64 (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + #if _MIPS_SIM == _ABIN32 || _MIPS_SIM == _ABI64 +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + #else +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + #endif +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +deleted file mode 100644 +index 90a07fc10fde3a84..0000000000000000 +--- a/sysdeps/generic/bp-checks.h ++++ /dev/null +@@ -1,49 +0,0 @@ +-/* Bounded-pointer checking macros for C. +- Copyright (C) 2000 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Greg McGary +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-#ifndef _bp_checks_h_ +-#define _bp_checks_h_ 1 +- +-#if __BOUNDED_POINTERS__ +- +-# define BOUNDS_VIOLATED (__builtin_trap (), 0) +- +-# define _CHECK_N(ARG, N, COND) \ +- (((COND) \ +- && (__ptrvalue (ARG) < __ptrlow (ARG) \ +- || __ptrvalue (ARG) + (N) > __ptrhigh (ARG)) \ +- && BOUNDS_VIOLATED), \ +- __ptrvalue (ARG)) +- +-/* Check bounds of a pointer seated to an array of N objects. */ +-# define CHECK_N(ARG, N) _CHECK_N ((ARG), (N), 1) +-/* Same as CHECK_N, but tolerate ARG == NULL. */ +-# define CHECK_N_NULL_OK(ARG, N) _CHECK_N ((ARG), (N), __ptrvalue (ARG)) +- +-#else /* !__BOUNDED_POINTERS__ */ +- +-/* Do nothing if not compiling with -fbounded-pointers. */ +- +-# define BOUNDS_VIOLATED +-# define CHECK_N(ARG, N) (ARG) +-# define CHECK_N_NULL_OK(ARG, N) (ARG) +- +-#endif /* !__BOUNDED_POINTERS__ */ +- +-#endif /* _bp_checks_h_ */ +diff --git a/sysdeps/unix/sysv/linux/getdents.c b/sysdeps/unix/sysv/linux/getdents.c +index babfbd0a43a29450..6b64f5d9bdb6b573 100644 +--- a/sysdeps/unix/sysv/linux/getdents.c ++++ b/sysdeps/unix/sysv/linux/getdents.c +@@ -28,7 +28,6 @@ + + #include + #include +-#include + + #include + +@@ -109,7 +108,7 @@ __GETDENTS (int fd, char *buf, size_t nbytes) + && (offsetof (struct kernel_dirent, d_reclen) + == offsetof (struct dirent, d_reclen))) + { +- retval = INLINE_SYSCALL (getdents, 3, fd, CHECK_N(buf, nbytes), nbytes); ++ retval = INLINE_SYSCALL (getdents, 3, fd, buf, nbytes); + + /* The kernel added the d_type value after the name. Change + this now. */ +@@ -158,8 +157,7 @@ __GETDENTS (int fd, char *buf, size_t nbytes) + - offsetof (DIRENT_TYPE, d_name); + kbuf = __alloca(kbytes); + } +- retval = INLINE_SYSCALL (getdents64, 3, fd, CHECK_N(kbuf, kbytes), +- kbytes); ++ retval = INLINE_SYSCALL (getdents64, 3, fd, kbuf, kbytes); + # ifndef __ASSUME_GETDENTS64_SYSCALL + if (retval != -1 || (errno != EINVAL && errno != ENOSYS)) + # endif +@@ -255,8 +253,7 @@ __GETDENTS (int fd, char *buf, size_t nbytes) + + skdp = kdp = __alloca (red_nbytes); + +- retval = INLINE_SYSCALL (getdents, 3, fd, +- CHECK_N ((char *) kdp, red_nbytes), red_nbytes); ++ retval = INLINE_SYSCALL (getdents, 3, fd, (char *) kdp, red_nbytes); + + if (retval == -1) + return -1; +diff --git a/sysdeps/unix/sysv/linux/i386/brk.c b/sysdeps/unix/sysv/linux/i386/brk.c +index 68451f1b17e52c45..0b367096f47007ce 100644 +--- a/sysdeps/unix/sysv/linux/i386/brk.c ++++ b/sysdeps/unix/sysv/linux/i386/brk.c +@@ -20,8 +20,6 @@ + #include + #include + +-#include +- + /* This must be initialized data because commons can't have aliases. */ + void *__curbrk = 0; + +diff --git a/sysdeps/unix/sysv/linux/i386/getgroups.c b/sysdeps/unix/sysv/linux/i386/getgroups.c +index e0871ec2d29258ab..7759c17a9bbfb37c 100644 +--- a/sysdeps/unix/sysv/linux/i386/getgroups.c ++++ b/sysdeps/unix/sysv/linux/i386/getgroups.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -34,7 +33,7 @@ + int + __getgroups (int n, gid_t *groups) + { +- return INLINE_SYSCALL (getgroups32, 2, n, CHECK_N (groups, n)); ++ return INLINE_SYSCALL (getgroups32, 2, n, groups); + } + + weak_alias (__getgroups, getgroups) +diff --git a/sysdeps/unix/sysv/linux/i386/setgroups.c b/sysdeps/unix/sysv/linux/i386/setgroups.c +index 73b341ac53010d2b..e9466fd9e1eef27f 100644 +--- a/sysdeps/unix/sysv/linux/i386/setgroups.c ++++ b/sysdeps/unix/sysv/linux/i386/setgroups.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + #include +@@ -33,6 +32,6 @@ + int + setgroups (size_t n, const gid_t *groups) + { +- return INLINE_SETXID_SYSCALL (setgroups32, 2, n, CHECK_N (groups, n)); ++ return INLINE_SETXID_SYSCALL (setgroups32, 2, n, groups); + } + libc_hidden_def (setgroups) +diff --git a/sysdeps/unix/sysv/linux/mmap64.c b/sysdeps/unix/sysv/linux/mmap64.c +index bca15f9c5dd4c590..87bd532c5e350c56 100644 +--- a/sysdeps/unix/sysv/linux/mmap64.c ++++ b/sysdeps/unix/sysv/linux/mmap64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +diff --git a/sysdeps/unix/sysv/linux/msgrcv.c b/sysdeps/unix/sysv/linux/msgrcv.c +index 0b47ce7bbe125945..dc0e34fe3d7f2ffd 100644 +--- a/sysdeps/unix/sysv/linux/msgrcv.c ++++ b/sysdeps/unix/sysv/linux/msgrcv.c +@@ -23,8 +23,6 @@ + #include + #include + +-#include +- + /* Kludge to work around Linux' restriction of only up to five + arguments to a system call. */ + struct ipc_kludge +@@ -46,7 +44,7 @@ __libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) + fives parameters to a system call. */ + struct ipc_kludge tmp; + +- tmp.msgp = CHECK_N (msgp, msgsz); ++ tmp.msgp = msgp; + tmp.msgtyp = msgtyp; + + if (SINGLE_THREAD_P) +diff --git a/sysdeps/unix/sysv/linux/msgsnd.c b/sysdeps/unix/sysv/linux/msgsnd.c +index 2f57fe74f10dae31..2883cad8aa370c6c 100644 +--- a/sysdeps/unix/sysv/linux/msgsnd.c ++++ b/sysdeps/unix/sysv/linux/msgsnd.c +@@ -23,8 +23,6 @@ + #include + #include + +-#include +- + int + __libc_msgsnd (msqid, msgp, msgsz, msgflg) + int msqid; +@@ -34,12 +32,12 @@ __libc_msgsnd (msqid, msgp, msgsz, msgflg) + { + if (SINGLE_THREAD_P) + return INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz, +- msgflg, (void *) CHECK_N (msgp, msgsz)); ++ msgflg, (void *) msgp); + + int oldtype = LIBC_CANCEL_ASYNC (); + + int result = INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz, +- msgflg, (void *) CHECK_N (msgp, msgsz)); ++ msgflg, (void *) msgp); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c +index 364834f1d0c717e7..9a9d0d456e5db1c0 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -38,7 +37,7 @@ __libc_pread (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, + 0, offset >> 31, offset); + + return result; +@@ -47,7 +46,7 @@ __libc_pread (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, + 0, offset >> 31, offset); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c +index 5b1445ff23ef9ab4..1435b293b143159b 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -38,7 +37,7 @@ __libc_pread64 (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, + 0, (long) (offset >> 32), + (long) offset); + +@@ -48,7 +47,7 @@ __libc_pread64 (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, + 0, (long) (offset >> 32), + (long) offset); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c +index ed1878bc5ee94a5e..d3a551c5a97550ca 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -39,7 +38,7 @@ __libc_pwrite (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, + 0, offset >> 31, offset); + + return result; +@@ -48,7 +47,7 @@ __libc_pwrite (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, + 0, offset >> 31, offset); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c +index dedeb7e97d8ed14b..d89a1759d1903eba 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -38,7 +37,7 @@ __libc_pwrite64 (fd, buf, count, offset) + if (SINGLE_THREAD_P) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, + 0, (long) (offset >> 32), + (long) offset); + +@@ -48,7 +47,7 @@ __libc_pwrite64 (fd, buf, count, offset) + int oldtype = LIBC_CANCEL_ASYNC (); + + /* On PPC32 64bit values are aligned in odd/even register pairs. */ +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, + 0, (long) (offset >> 32), + (long) offset); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c +index ed4708f2dee6b9a7..43ead1af67b0c0da 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -40,16 +39,14 @@ __libc_pread (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c +index 63ba30df297b703a..dc9fc81c4ccf067e 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -39,16 +38,14 @@ __libc_pread64 (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pread, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pread, 4, fd, buf, count, offset); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c +index 68f26dfb7e2c8d4e..57c62bdb74805836 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -40,16 +39,14 @@ __libc_pwrite (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c +index 71ffa17c5befd899..430bb4ef2bd2eb3e 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + #include + +@@ -39,16 +38,14 @@ __libc_pwrite64 (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pwrite, 4, fd, CHECK_N (buf, count), count, +- offset); ++ result = INLINE_SYSCALL (pwrite, 4, fd, buf, count, offset); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/pread.c b/sysdeps/unix/sysv/linux/pread.c +index 4ea67fcb0b04c271..7322e42d6ed990c1 100644 +--- a/sysdeps/unix/sysv/linux/pread.c ++++ b/sysdeps/unix/sysv/linux/pread.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -44,7 +43,7 @@ do_pread (int fd, void *buf, size_t count, off_t offset) + ssize_t result; + + assert (sizeof (offset) == 4); +- result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 5, fd, buf, count, + __LONG_LONG_PAIR (offset >> 31, offset)); + + return result; +diff --git a/sysdeps/unix/sysv/linux/pread64.c b/sysdeps/unix/sysv/linux/pread64.c +index 897b5674a75c23be..03e5f1402bf8b888 100644 +--- a/sysdeps/unix/sysv/linux/pread64.c ++++ b/sysdeps/unix/sysv/linux/pread64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -39,7 +38,7 @@ do_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +- result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pread, 5, fd, buf, count, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/sysdeps/unix/sysv/linux/pwrite.c b/sysdeps/unix/sysv/linux/pwrite.c +index c4940fcdd09b0726..e773d65f2e5602a8 100644 +--- a/sysdeps/unix/sysv/linux/pwrite.c ++++ b/sysdeps/unix/sysv/linux/pwrite.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -44,7 +43,7 @@ do_pwrite (int fd, const void *buf, size_t count, off_t offset) + ssize_t result; + + assert (sizeof (offset) == 4); +- result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 5, fd, buf, count, + __LONG_LONG_PAIR (offset >> 31, offset)); + + return result; +diff --git a/sysdeps/unix/sysv/linux/pwrite64.c b/sysdeps/unix/sysv/linux/pwrite64.c +index ad945a2903a44714..558a08e735616649 100644 +--- a/sysdeps/unix/sysv/linux/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/pwrite64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -39,7 +38,7 @@ do_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + +- result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, ++ result = INLINE_SYSCALL (pwrite, 5, fd, buf, count, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/sysdeps/unix/sysv/linux/readv.c b/sysdeps/unix/sysv/linux/readv.c +index 440e1039c3a8f3ac..e8acd65ce377963a 100644 +--- a/sysdeps/unix/sysv/linux/readv.c ++++ b/sysdeps/unix/sysv/linux/readv.c +@@ -24,7 +24,6 @@ + + #include + #include +-#include + #include + + #ifndef __ASSUME_COMPLETE_READV_WRITEV +@@ -48,12 +47,12 @@ __libc_readv (fd, vector, count) + ssize_t result; + + if (SINGLE_THREAD_P) +- result = INLINE_SYSCALL (readv, 3, fd, CHECK_N (vector, count), count); ++ result = INLINE_SYSCALL (readv, 3, fd, vector, count); + else + { + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (readv, 3, fd, CHECK_N (vector, count), count); ++ result = INLINE_SYSCALL (readv, 3, fd, vector, count); + + LIBC_CANCEL_RESET (oldtype); + } +diff --git a/sysdeps/unix/sysv/linux/semop.c b/sysdeps/unix/sysv/linux/semop.c +index 22bdeeb0f19bef15..4cd6891976858cc2 100644 +--- a/sysdeps/unix/sysv/linux/semop.c ++++ b/sysdeps/unix/sysv/linux/semop.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Perform user-defined atomical operation of array of semaphores. */ + +@@ -32,6 +31,5 @@ semop (semid, sops, nsops) + struct sembuf *sops; + size_t nsops; + { +- return INLINE_SYSCALL (ipc, 5, IPCOP_semop, +- semid, (int) nsops, 0, CHECK_N (sops, nsops)); ++ return INLINE_SYSCALL (ipc, 5, IPCOP_semop, semid, (int) nsops, 0, sops); + } +diff --git a/sysdeps/unix/sysv/linux/semtimedop.c b/sysdeps/unix/sysv/linux/semtimedop.c +index 6e2c40f3758483a9..5a43f53975aeafcc 100644 +--- a/sysdeps/unix/sysv/linux/semtimedop.c ++++ b/sysdeps/unix/sysv/linux/semtimedop.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + /* Perform user-defined atomical operation of array of semaphores. */ + +@@ -34,6 +33,6 @@ semtimedop (semid, sops, nsops, timeout) + const struct timespec *timeout; + { + return INLINE_SYSCALL (ipc, 6, IPCOP_semtimedop, +- semid, (int) nsops, 0, CHECK_N (sops, nsops), ++ semid, (int) nsops, 0, sops, + timeout); + } +diff --git a/sysdeps/unix/sysv/linux/sh/pread.c b/sysdeps/unix/sysv/linux/sh/pread.c +index 3e7702f10d26c347..160c906a4d0197fd 100644 +--- a/sysdeps/unix/sysv/linux/sh/pread.c ++++ b/sysdeps/unix/sysv/linux/sh/pread.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -46,14 +45,14 @@ __libc_pread (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/sysdeps/unix/sysv/linux/sh/pread64.c b/sysdeps/unix/sysv/linux/sh/pread64.c +index 523ed7f82f5e5de7..bb4f13d06b72fdf1 100644 +--- a/sysdeps/unix/sysv/linux/sh/pread64.c ++++ b/sysdeps/unix/sysv/linux/sh/pread64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -45,7 +44,7 @@ __libc_pread64 (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + return result; +@@ -53,7 +52,7 @@ __libc_pread64 (fd, buf, count, offset) + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pread, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/sysdeps/unix/sysv/linux/sh/pwrite.c b/sysdeps/unix/sysv/linux/sh/pwrite.c +index e8052757aae56afe..b17bd87a5d4f74cc 100644 +--- a/sysdeps/unix/sysv/linux/sh/pwrite.c ++++ b/sysdeps/unix/sysv/linux/sh/pwrite.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + + #include + +@@ -46,14 +45,14 @@ __libc_pwrite (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + return result; + } + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR (offset >> 31, offset)); + + LIBC_CANCEL_RESET (oldtype); +diff --git a/sysdeps/unix/sysv/linux/sh/pwrite64.c b/sysdeps/unix/sysv/linux/sh/pwrite64.c +index 8f80fea49501ed2b..d9f41ec34cf01fb4 100644 +--- a/sysdeps/unix/sysv/linux/sh/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/sh/pwrite64.c +@@ -22,7 +22,6 @@ + + #include + #include +-#include + + #include + +@@ -45,7 +44,7 @@ __libc_pwrite64 (fd, buf, count, offset) + + if (SINGLE_THREAD_P) + { +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +@@ -54,7 +53,7 @@ __libc_pwrite64 (fd, buf, count, offset) + + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0, ++ result = INLINE_SYSCALL (pwrite, 6, fd, buf, count, 0, + __LONG_LONG_PAIR ((off_t) (offset >> 32), + (off_t) (offset & 0xffffffff))); + +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c b/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c +index 15eb7983c6ebd3f9..3684a01142f68323 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c +@@ -22,8 +22,6 @@ + #include + #include + +-#include +- + ssize_t + __libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) + int msqid; +@@ -34,12 +32,12 @@ __libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) + { + if (SINGLE_THREAD_P) + return INLINE_SYSCALL (ipc, 6, IPCOP_msgrcv, msqid, msgsz, msgflg, +- CHECK_N (msgp, msgsz), msgtyp); ++ msgp, msgtyp); + + int oldtype = LIBC_CANCEL_ASYNC (); + + ssize_t result = INLINE_SYSCALL (ipc, 6, IPCOP_msgrcv, msqid, msgsz, msgflg, +- CHECK_N (msgp, msgsz), msgtyp); ++ msgp, msgtyp); + + LIBC_CANCEL_RESET (oldtype); + +diff --git a/sysdeps/unix/sysv/linux/sysctl.c b/sysdeps/unix/sysv/linux/sysctl.c +index f69c8229643ae5a9..e00ecfe85cfc0281 100644 +--- a/sysdeps/unix/sysv/linux/sysctl.c ++++ b/sysdeps/unix/sysv/linux/sysctl.c +@@ -22,13 +22,11 @@ + + #include + #include +-#include + + int + __sysctl (int *name, int nlen, void *oldval, size_t *oldlenp, + void *newval, size_t newlen) + { +- /* GKM FIXME: force __sysctl_args decl to have unbounded pointers. */ + struct __sysctl_args args = + { + .name = name, +@@ -38,9 +36,6 @@ __sysctl (int *name, int nlen, void *oldval, size_t *oldlenp, + .newval = newval, + .newlen = newlen + }; +- (void) CHECK_N (name, nlen); +- (void) CHECK_N (oldval, *oldlenp); +- (void) CHECK_N (newval, newlen); + + return INLINE_SYSCALL (_sysctl, 1, __ptrvalue (&args)); + } +diff --git a/sysdeps/unix/sysv/linux/writev.c b/sysdeps/unix/sysv/linux/writev.c +index 26a68df6b902a6fc..8b018ecdf6fbc323 100644 +--- a/sysdeps/unix/sysv/linux/writev.c ++++ b/sysdeps/unix/sysv/linux/writev.c +@@ -23,7 +23,6 @@ + + #include + #include +-#include + #include + + #ifndef __ASSUME_COMPLETE_READV_WRITEV +@@ -47,12 +46,12 @@ __libc_writev (fd, vector, count) + ssize_t result; + + if (SINGLE_THREAD_P) +- result = INLINE_SYSCALL (writev, 3, fd, CHECK_N (vector, count), count); ++ result = INLINE_SYSCALL (writev, 3, fd, vector, count); + else + { + int oldtype = LIBC_CANCEL_ASYNC (); + +- result = INLINE_SYSCALL (writev, 3, fd, CHECK_N (vector, count), count); ++ result = INLINE_SYSCALL (writev, 3, fd, vector, count); + + LIBC_CANCEL_RESET (oldtype); + } diff --git a/SOURCES/glibc-rh1505492-bsd-flatten.patch b/SOURCES/glibc-rh1505492-bsd-flatten.patch new file mode 100644 index 0000000..c6d13de --- /dev/null +++ b/SOURCES/glibc-rh1505492-bsd-flatten.patch @@ -0,0 +1,173 @@ +commit ef7344f09c5ce00eb519ed14598b2a8e39c68387 +Author: Joseph Myers +Date: Sun Dec 22 14:49:48 2013 +0000 + + Flatten sysdeps/unix/bsd/bsd4.4 into sysdeps/unix/bsd. + + As discussed in + and + , it seems + appropriate to flatten sysdeps/unix/bsd/bsd4.4 into sysdeps/unix/bsd. + + The bulk of the patch is just moving files. The only other changes + are: update paths in sysdeps/mach/hurd/Implies and + sysdeps/unix/sysv/linux/wait3.c; merge the two syscalls.list files, + with the removal of syscalls that were in + sysdeps/unix/bsd/syscalls.list but overridden in the bsd4.4 directory + by .c files there. + + Tested x86_64. The installed shared libraries are identical before + and after the patch except for libc.so where the move of wait3.c + (included by sysdeps/unix/sysv/linux/wait3.c) affects debug info, but + the disassembly is unchanged. + + * sysdeps/mach/hurd/Implies: Change unix/bsd/bsd4.4 to unix/bsd. + * sysdeps/unix/bsd/syscalls.list (chflags): Add entry from + sysdeps/unix/bsd/bsd4.4/syscalls.list. + (fchflags): Likewise. + (revoke): Likewise. + (setlogin): Likewise. + (sigaltstack): Likewise. + (wait4): Likewise. + (sigblock): Remove. + (sigsetmask): Likewise. + (wait3): Likewise. + (waitpid): Likewise. + * sysdeps/unix/bsd/bsd4.4/syscalls.list: Remove file. + * sysdeps/unix/sysv/linux/wait3.c: Update directory of included + file. + * sysdeps/unix/bsd/bsd4.4/Makefile: Move to ... + * sysdeps/unix/bsd/Makefile: ... here. + * sysdeps/unix/bsd/bsd4.4/Versions: Move to ... + * sysdeps/unix/bsd/Versions: ... here. + * sysdeps/unix/bsd/bsd4.4/bits/sockaddr.h: Move to ... + * sysdeps/unix/bsd/bits/sockaddr.h: ... here. + * sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c: Move to ... + * sysdeps/unix/bsd/cmsg_nxthdr.c: ... here. + * sysdeps/unix/bsd/bsd4.4/sigblock.c: Move to ... + * sysdeps/unix/bsd/sigblock.c: ... here. + * sysdeps/unix/bsd/bsd4.4/sigsetmask.c: Move to ... + * sysdeps/unix/bsd/sigsetmask.c: ... here. + * sysdeps/unix/bsd/bsd4.4/sigvec.c: Move to ... + * sysdeps/unix/bsd/sigvec.c: ... here. + * sysdeps/unix/bsd/bsd4.4/tcdrain.c: Move to ... + * sysdeps/unix/bsd/tcdrain.c: ... here. + * sysdeps/unix/bsd/bsd4.4/tcgetattr.c: Move to ... + * sysdeps/unix/bsd/tcgetattr.c: ... here. + * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Move to ... + * sysdeps/unix/bsd/tcsetattr.c: ... here. + * sysdeps/unix/bsd/bsd4.4/wait.c: Move to ... + * sysdeps/unix/bsd/wait.c: ... here. + * sysdeps/unix/bsd/bsd4.4/wait3.c: Move to ... + * sysdeps/unix/bsd/wait3.c: ... here. + * sysdeps/unix/bsd/bsd4.4/waitpid.c: Move to ... + * sysdeps/unix/bsd/waitpid.c: ... here. + +diff --git a/sysdeps/mach/hurd/Implies b/sysdeps/mach/hurd/Implies +index b6063463ce34f3b7..d2d5234c1fdf1522 100644 +--- a/sysdeps/mach/hurd/Implies ++++ b/sysdeps/mach/hurd/Implies +@@ -2,4 +2,4 @@ + # Hurd-based GNU systems. + gnu + # The Hurd provides a rough superset of the functionality of 4.4 BSD. +-unix/bsd/bsd4.4 ++unix/bsd +diff --git a/sysdeps/unix/bsd/bsd4.4/Makefile b/sysdeps/unix/bsd/Makefile +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/Makefile +rename to sysdeps/unix/bsd/Makefile +diff --git a/sysdeps/unix/bsd/bsd4.4/Versions b/sysdeps/unix/bsd/Versions +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/Versions +rename to sysdeps/unix/bsd/Versions +diff --git a/sysdeps/unix/bsd/bsd4.4/bits/sockaddr.h b/sysdeps/unix/bsd/bits/sockaddr.h +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/bits/sockaddr.h +rename to sysdeps/unix/bsd/bits/sockaddr.h +diff --git a/sysdeps/unix/bsd/bsd4.4/syscalls.list b/sysdeps/unix/bsd/bsd4.4/syscalls.list +deleted file mode 100644 +index a4d354685424ac61..0000000000000000 +--- a/sysdeps/unix/bsd/bsd4.4/syscalls.list ++++ /dev/null +@@ -1,8 +0,0 @@ +-# File name Caller Syscall name # args Strong name Weak names +- +-chflags - chflags 2 chflags +-fchflags - fchflags 2 fchflags +-revoke - revoke 1 revoke +-setlogin - setlogin 2 setlogin +-sigaltstack - sigaltstack 2 __sigaltstack sigaltstack +-wait4 - wait4 4 __wait4 wait4 +diff --git a/sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c b/sysdeps/unix/bsd/cmsg_nxthdr.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c +rename to sysdeps/unix/bsd/cmsg_nxthdr.c +diff --git a/sysdeps/unix/bsd/bsd4.4/sigblock.c b/sysdeps/unix/bsd/sigblock.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/sigblock.c +rename to sysdeps/unix/bsd/sigblock.c +diff --git a/sysdeps/unix/bsd/bsd4.4/sigsetmask.c b/sysdeps/unix/bsd/sigsetmask.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/sigsetmask.c +rename to sysdeps/unix/bsd/sigsetmask.c +diff --git a/sysdeps/unix/bsd/bsd4.4/sigvec.c b/sysdeps/unix/bsd/sigvec.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/sigvec.c +rename to sysdeps/unix/bsd/sigvec.c +diff --git a/sysdeps/unix/bsd/syscalls.list b/sysdeps/unix/bsd/syscalls.list +index e84819dc1f19d148..9f48a144d475f342 100644 +--- a/sysdeps/unix/bsd/syscalls.list ++++ b/sysdeps/unix/bsd/syscalls.list +@@ -1,14 +1,16 @@ + # File name Caller Syscall name # args Strong name Weak names + ++chflags - chflags 2 chflags ++fchflags - fchflags 2 fchflags + flock - flock 2 __flock flock + getdents - getdirentries 4 __getdirentries getdirentries + getdtsz - getdtablesize 0 __getdtablesize getdtablesize + getpagesize - getpagesize 0 __getpagesize getpagesize + killpg - killpg 2 killpg +-sigblock - sigblock 1 __sigblock sigblock ++revoke - revoke 1 revoke ++setlogin - setlogin 2 setlogin ++sigaltstack - sigaltstack 2 __sigaltstack sigaltstack + sigpause - sigpause 1 __sigpause sigpause +-sigsetmask - sigsetmask 1 __sigsetmask sigsetmask + sigstack - sigstack 2 sigstack + sigvec - sigvec 3 __sigvec sigvec +-wait3 - wait3 3 __wait3 wait3 +-waitpid - waitpid 3 __waitpid waitpid ++wait4 - wait4 4 __wait4 wait4 +diff --git a/sysdeps/unix/bsd/bsd4.4/tcdrain.c b/sysdeps/unix/bsd/tcdrain.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/tcdrain.c +rename to sysdeps/unix/bsd/tcdrain.c +diff --git a/sysdeps/unix/bsd/bsd4.4/tcgetattr.c b/sysdeps/unix/bsd/tcgetattr.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/tcgetattr.c +rename to sysdeps/unix/bsd/tcgetattr.c +diff --git a/sysdeps/unix/bsd/bsd4.4/tcsetattr.c b/sysdeps/unix/bsd/tcsetattr.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/tcsetattr.c +rename to sysdeps/unix/bsd/tcsetattr.c +diff --git a/sysdeps/unix/bsd/bsd4.4/wait.c b/sysdeps/unix/bsd/wait.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/wait.c +rename to sysdeps/unix/bsd/wait.c +diff --git a/sysdeps/unix/bsd/bsd4.4/wait3.c b/sysdeps/unix/bsd/wait3.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/wait3.c +rename to sysdeps/unix/bsd/wait3.c +diff --git a/sysdeps/unix/bsd/bsd4.4/waitpid.c b/sysdeps/unix/bsd/waitpid.c +similarity index 100% +rename from sysdeps/unix/bsd/bsd4.4/waitpid.c +rename to sysdeps/unix/bsd/waitpid.c +diff --git a/sysdeps/unix/sysv/linux/wait3.c b/sysdeps/unix/sysv/linux/wait3.c +index 0b3bdee771782b7b..2ff027f0e1d83eb2 100644 +--- a/sysdeps/unix/sysv/linux/wait3.c ++++ b/sysdeps/unix/sysv/linux/wait3.c +@@ -1 +1 @@ +-#include ++#include diff --git a/SOURCES/glibc-rh1505492-deprecated-1.patch b/SOURCES/glibc-rh1505492-deprecated-1.patch new file mode 100644 index 0000000..8d3c1cb --- /dev/null +++ b/SOURCES/glibc-rh1505492-deprecated-1.patch @@ -0,0 +1,37 @@ +commit 6b5189eb2000761cd68c3c54c0d03357a9aaec67 +Author: Joseph Myers +Date: Thu Nov 27 16:02:26 2014 +0000 + + Avoid deprecated sigblock in misc/tst-pselect.c. + + misc/tst-pselect.c uses the deprecated sigblock interface, resulting + in "tst-pselect.c:42:3: warning: 'sigblock' is deprecated (declared at + ../signal/signal.h:189) [-Wdeprecated-declarations]". The choice of + sigblock rather than sigprocmask has nothing to do with what this test + is testing, so this patch changes it to use sigprocmask to avoid the + warning. + + Tested for x86_64. + + * misc/tst-pselect.c (do_test): Use sigprocmask instead of + sigblock. + +diff --git a/misc/tst-pselect.c b/misc/tst-pselect.c +index 36bc46da6c94174a..095d794cb2735e18 100644 +--- a/misc/tst-pselect.c ++++ b/misc/tst-pselect.c +@@ -39,9 +39,12 @@ do_test (void) + return 1; + } + +- if (sigblock (sigmask (SIGUSR1)) != 0) ++ sigset_t ss_usr1; ++ sigemptyset (&ss_usr1); ++ sigaddset (&ss_usr1, SIGUSR1); ++ if (sigprocmask (SIG_BLOCK, &ss_usr1, NULL) != 0) + { +- puts ("sigblock failed"); ++ puts ("sigprocmask failed"); + return 1; + } + diff --git a/SOURCES/glibc-rh1505492-deprecated-2.patch b/SOURCES/glibc-rh1505492-deprecated-2.patch new file mode 100644 index 0000000..bde3250 --- /dev/null +++ b/SOURCES/glibc-rh1505492-deprecated-2.patch @@ -0,0 +1,50 @@ +commit 0f88636c09686b1f8e876bfa88b40bacbcae8c11 +Author: Joseph Myers +Date: Wed Dec 10 00:44:54 2014 +0000 + + Disable -Wdeprecated-declarations for register_printf_function calls in tst-printfsz.c. + + This patch uses diagnostic control pragmas to disable warnings in + stdio-common/tst-printfsz.c for use of the deprecated + register_printf_function. Because this test is testing printf_size + and printf_size_info, and the latter has the interface expected for + register_printf_function instead of the newer + register_printf_specifier, it seems correct for this test to use the + deprecated interface (wrapping printf_size_info in some way to use + register_printf_specifier would seem an excessive change to what's + tested). + + Tested for x86_64. + + * stdio-common/tst-printfsz.c: Include . + (main): Disable -Wdeprecated-declarations around calls to + register_printf_function. + +diff --git a/stdio-common/tst-printfsz.c b/stdio-common/tst-printfsz.c +index 5925050b59e90b79..74d67d2f694f344b 100644 +--- a/stdio-common/tst-printfsz.c ++++ b/stdio-common/tst-printfsz.c +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + #define V 12345678.12345678 + +@@ -12,9 +13,15 @@ main (int argc, char *argv[]) + char buf[1024]; + int result = 0; + ++ /* Testing printf_size_info requires using the deprecated ++ register_printf_function, resulting in warnings ++ "'register_printf_function' is deprecated". */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdeprecated-declarations"); + /* Register the printf handlers. */ + register_printf_function ('b', printf_size, printf_size_info); + register_printf_function ('B', printf_size, printf_size_info); ++ DIAG_POP_NEEDS_COMMENT; + + + sprintf (buf, "%g %b %B %.0b %.0B %.1b %.1B %8.0b %08.0B", diff --git a/SOURCES/glibc-rh1505492-diag.patch b/SOURCES/glibc-rh1505492-diag.patch new file mode 100644 index 0000000..206a3e7 --- /dev/null +++ b/SOURCES/glibc-rh1505492-diag.patch @@ -0,0 +1,190 @@ +commit 2084e7ca4d344c39eb39e53848b51b5d84444414 +Author: Joseph Myers +Date: Wed Dec 10 00:41:19 2014 +0000 + + Add macros for diagnostic control, use for scanf %a tests. + + In , + Roland requested internal macros for use of "#pragma GCC diagnostic". + + This patch adds such macros and uses them to disable -Wformat warnings + for some code testing GNU scanf %as where GCC expects C99 scanf %a + (several other stdio tests currently use -Wno-format to disable + warnings). Limitations in GCC's diagnostic pragmas require separate + macros before and after the code generating the warnings, rather than + a single macro taking that code as an argument. + + The macros are named DIAG_*_NEEDS_COMMENT to emphasise to reviewers + the need for a comment accompanying any use of them (such comments may + however just appear once for several uses of the macros for the same + issue in the same file). I put a GCC version in the arguments to + DIAG_IGNORE_NEEDS_COMMENT, as that seems something useful to grep for + when obsoleting support for an old GCC version and needing to decide + if warning-disabling code is still relevant. + + These macros should be usable for replacing existing -Wno-* use in + makefiles (as also suggested by Roland), though I have no plans to + work on that (only on use of the macros in cases where warnings are + currently present that need disabling to use -Werror). + + Tested for x86_64. + + * include/libc-internal.h (DIAG_PUSH_NEEDS_COMMENT): New macro. + (DIAG_POP_NEEDS_COMMENT): Likewise. + (_DIAG_STR1): Likewise. + (_DIAG_STR): Likewise. + (DIAG_IGNORE_NEEDS_COMMENT): Likewise. + * stdio-common/bug21.c: Include . + (do_test): Disable -Wformat around call to sscanf. + * stdio-common/scanf14.c: Include . + (main): Disable -Wformat around some calls to scanf functions. + +diff --git a/include/libc-internal.h b/include/libc-internal.h +index 2ced1c17d3dff93d..bca59a46144b736f 100644 +--- a/include/libc-internal.h ++++ b/include/libc-internal.h +@@ -76,4 +76,35 @@ extern void __init_misc (int, char **, char **); + #define ignore_value(x) \ + ({ __typeof__ (x) __ignored_value = (x); (void) __ignored_value; }) + ++/* The macros to control diagnostics are structured like this, rather ++ than a single macro that both pushes and pops diagnostic state and ++ takes the affected code as an argument, because the GCC pragmas ++ work by disabling the diagnostic for a range of source locations ++ and do not work when all the pragmas and the affected code are in a ++ single macro expansion. */ ++ ++/* Push diagnostic state. */ ++#define DIAG_PUSH_NEEDS_COMMENT _Pragma ("GCC diagnostic push") ++ ++/* Pop diagnostic state. */ ++#define DIAG_POP_NEEDS_COMMENT _Pragma ("GCC diagnostic pop") ++ ++#define _DIAG_STR1(s) #s ++#define _DIAG_STR(s) _DIAG_STR1(s) ++ ++/* Ignore the diagnostic OPTION. VERSION is the most recent GCC ++ version for which the diagnostic has been confirmed to appear in ++ the absence of the pragma (in the form MAJOR.MINOR for GCC 4.x, ++ just MAJOR for GCC 5 and later). Uses of this pragma should be ++ reviewed when the GCC version given is no longer supported for ++ building glibc; the version number should always be on the same ++ source line as the macro name, so such uses can be found with grep. ++ Uses should come with a comment giving more details of the ++ diagnostic, and an architecture on which it is seen if possibly ++ optimization-related and not in architecture-specific code. This ++ macro should only be used if the diagnostic seems hard to fix (for ++ example, optimization-related false positives). */ ++#define DIAG_IGNORE_NEEDS_COMMENT(version, option) \ ++ _Pragma (_DIAG_STR (GCC diagnostic ignored option)) ++ + #endif /* _LIBC_INTERNAL */ +diff --git a/stdio-common/bug21.c b/stdio-common/bug21.c +index d22b9c1a9717a197..ca27272ba191321e 100644 +--- a/stdio-common/bug21.c ++++ b/stdio-common/bug21.c +@@ -1,4 +1,5 @@ + #include ++#include + + static int + do_test (void) +@@ -6,7 +7,15 @@ do_test (void) + static const char buf[] = " "; + char *str; + ++ /* GCC in C99 mode treats %a as the C99 format expecting float *, ++ but glibc with _GNU_SOURCE treats %as as the GNU allocation ++ extension, so resulting in "warning: format '%a' expects argument ++ of type 'float *', but argument 3 has type 'char **'". This ++ applies to the other %as, %aS and %a[] formats below as well. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat"); + int r = sscanf (buf, "%as", &str); ++ DIAG_POP_NEEDS_COMMENT; + printf ("%d %p\n", r, str); + + return r != -1 || str != NULL; +diff --git a/stdio-common/scanf14.c b/stdio-common/scanf14.c +index 6ca5c7c5679632a3..cffccb0b19d2927b 100644 +--- a/stdio-common/scanf14.c ++++ b/stdio-common/scanf14.c +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + #define FAIL() \ + do { \ +@@ -23,6 +24,13 @@ main (void) + FAIL (); + else if (f != 0.25 || memcmp (c, "s x", 3) != 0) + FAIL (); ++ /* GCC in C99 mode treats %a as the C99 format expecting float *, ++ but glibc with _GNU_SOURCE treats %as as the GNU allocation ++ extension, so resulting in "warning: format '%a' expects argument ++ of type 'float *', but argument 3 has type 'char **'". This ++ applies to the other %as, %aS and %a[] formats below as well. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat"); + if (sscanf (" 1.25s x", "%as%2c", &sp, c) != 2) + FAIL (); + else +@@ -32,10 +40,14 @@ main (void) + memset (sp, 'x', sizeof "1.25s"); + free (sp); + } ++ DIAG_POP_NEEDS_COMMENT; + if (sscanf (" 2.25s x", "%las%2c", &d, c) != 2) + FAIL (); + else if (d != 2.25 || memcmp (c, " x", 2) != 0) + FAIL (); ++ /* See explanation above. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat"); + if (sscanf (" 3.25S x", "%4aS%3c", &lsp, c) != 2) + FAIL (); + else +@@ -54,6 +66,7 @@ main (void) + memset (sp, 'x', sizeof "4.25"); + free (sp); + } ++ DIAG_POP_NEEDS_COMMENT; + if (sscanf ("5.25[0-9.] x", "%la[0-9.]%2c", &d, c) != 2) + FAIL (); + else if (d != 5.25 || memcmp (c, " x", 2) != 0) +@@ -82,6 +95,9 @@ main (void) + FAIL (); + if (fseek (fp, 0, SEEK_SET) != 0) + FAIL (); ++ /* See explanation above. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat"); + if (fscanf (fp, "%as%2c", &sp, c) != 2) + FAIL (); + else +@@ -91,11 +107,15 @@ main (void) + memset (sp, 'x', sizeof "1.25s"); + free (sp); + } ++ DIAG_POP_NEEDS_COMMENT; + + if (freopen (fname, "r", stdin) == NULL) + FAIL (); + else + { ++ /* See explanation above. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat"); + if (scanf ("%as%2c", &sp, c) != 2) + FAIL (); + else +@@ -105,6 +125,7 @@ main (void) + memset (sp, 'x', sizeof "1.25s"); + free (sp); + } ++ DIAG_POP_NEEDS_COMMENT; + } + + fclose (fp); diff --git a/SOURCES/glibc-rh1505492-getlogin.patch b/SOURCES/glibc-rh1505492-getlogin.patch new file mode 100644 index 0000000..b4d4990 --- /dev/null +++ b/SOURCES/glibc-rh1505492-getlogin.patch @@ -0,0 +1,69 @@ +commit 8fb16a04e6be250fdae2ce85354aae3702151140 +Author: Roland McGrath +Date: Mon May 6 15:10:09 2013 -0700 + + Move getlogin, getlogin_r, setlogin to login/ subdir. + +diff --git a/login/Makefile b/login/Makefile +index f7620ea0051b5ebb..575301460b58197e 100644 +--- a/login/Makefile ++++ b/login/Makefile +@@ -24,7 +24,8 @@ subdir := login + + headers := utmp.h bits/utmp.h lastlog.h pty.h + +-routines := getutent getutent_r getutid getutline getutid_r getutline_r \ ++routines := getlogin getlogin_r setlogin \ ++ getutent getutent_r getutid getutline getutid_r getutline_r \ + utmp_file utmpname updwtmp getpt grantpt unlockpt ptsname + + CFLAGS-grantpt.c = -DLIBEXECDIR='"$(libexecdir)"' +diff --git a/login/Versions b/login/Versions +index 401fc0ebd0715e0b..0c9e75a7efd295b6 100644 +--- a/login/Versions ++++ b/login/Versions +@@ -11,6 +11,7 @@ libc { + pututline; + + # s* ++ setlogin; + setutent; + + # u* +diff --git a/posix/getlogin.c b/login/getlogin.c +similarity index 100% +rename from posix/getlogin.c +rename to login/getlogin.c +diff --git a/posix/getlogin_r.c b/login/getlogin_r.c +similarity index 100% +rename from posix/getlogin_r.c +rename to login/getlogin_r.c +diff --git a/posix/setlogin.c b/login/setlogin.c +similarity index 100% +rename from posix/setlogin.c +rename to login/setlogin.c +diff --git a/posix/Makefile b/posix/Makefile +index a68f0b7d041e65bd..683b6e4b272fdebb 100644 +--- a/posix/Makefile ++++ b/posix/Makefile +@@ -40,7 +40,6 @@ routines := \ + getuid geteuid getgid getegid getgroups setuid setgid group_member \ + getpgid setpgid getpgrp bsd-getpgrp setpgrp getsid setsid \ + getresuid getresgid setresuid setresgid \ +- getlogin getlogin_r setlogin \ + pathconf sysconf fpathconf \ + glob glob64 fnmatch regex \ + confstr \ +diff --git a/posix/Versions b/posix/Versions +index 686c446bcddeb696..5a5a05d036fbc6ba 100644 +--- a/posix/Versions ++++ b/posix/Versions +@@ -52,7 +52,7 @@ libc { + # s* + sched_get_priority_max; sched_get_priority_min; sched_getparam; + sched_getscheduler; sched_rr_get_interval; sched_setparam; +- sched_setscheduler; sched_yield; setegid; seteuid; setgid; setlogin; ++ sched_setscheduler; sched_yield; setegid; seteuid; setgid; + setpgid; setpgrp; setsid; setuid; sleep; sysconf; + + # t* diff --git a/SOURCES/glibc-rh1505492-malloc_ptrdiff_t.patch b/SOURCES/glibc-rh1505492-malloc_ptrdiff_t.patch new file mode 100644 index 0000000..ba3669b --- /dev/null +++ b/SOURCES/glibc-rh1505492-malloc_ptrdiff_t.patch @@ -0,0 +1,24 @@ +commit dd54b8644c60cd7b7bee27ecaae4138e7c056c01 +Author: Joseph Myers +Date: Fri Mar 8 16:46:45 2013 +0000 + + Remove __malloc_ptrdiff_t. + +Conflicts: + malloc/malloc.h + +Adjusted to keep the definition in the public header file. + +diff --git a/malloc/morecore.c b/malloc/morecore.c +index 8a72ba6a3d70a865..1e7b77749ff1700d 100644 +--- a/malloc/morecore.c ++++ b/malloc/morecore.c +@@ -43,7 +43,7 @@ libc_hidden_proto (__sbrk) + If INCREMENT is negative, shrink data space. */ + __malloc_ptr_t + __default_morecore (increment) +- __malloc_ptrdiff_t increment; ++ ptrdiff_t increment; + { + __malloc_ptr_t result = (__malloc_ptr_t) __sbrk (increment); + if (result == (__malloc_ptr_t) -1) diff --git a/SOURCES/glibc-rh1505492-malloc_size_t.patch b/SOURCES/glibc-rh1505492-malloc_size_t.patch new file mode 100644 index 0000000..53d91c7 --- /dev/null +++ b/SOURCES/glibc-rh1505492-malloc_size_t.patch @@ -0,0 +1,154 @@ +commit 1ba4f03035faabd9090f61ec5514e2abced5ca29 +Author: Joseph Myers +Date: Fri Mar 8 16:46:07 2013 +0000 + + Remove __malloc_size_t. + +Adjusted here to keep the definition in the public header +file. + +diff --git a/malloc/mcheck.c b/malloc/mcheck.c +index c5addc55afebd502..695de42e914e247c 100644 +--- a/malloc/mcheck.c ++++ b/malloc/mcheck.c +@@ -29,11 +29,10 @@ + + /* Old hook values. */ + static void (*old_free_hook) (__ptr_t ptr, const __ptr_t); +-static __ptr_t (*old_malloc_hook) (__malloc_size_t size, const __ptr_t); +-static __ptr_t (*old_memalign_hook) (__malloc_size_t alignment, +- __malloc_size_t size, ++static __ptr_t (*old_malloc_hook) (size_t size, const __ptr_t); ++static __ptr_t (*old_memalign_hook) (size_t alignment, size_t size, + const __ptr_t); +-static __ptr_t (*old_realloc_hook) (__ptr_t ptr, __malloc_size_t size, ++static __ptr_t (*old_realloc_hook) (__ptr_t ptr, size_t size, + const __ptr_t); + + /* Function to call when something awful happens. */ +@@ -48,7 +47,7 @@ static void (*abortfunc) (enum mcheck_status); + + struct hdr + { +- __malloc_size_t size; /* Exact size requested by user. */ ++ size_t size; /* Exact size requested by user. */ + unsigned long int magic; /* Magic number to check header integrity. */ + struct hdr *prev; + struct hdr *next; +@@ -69,12 +68,12 @@ static int pedantic; + # include + # define flood memset + #else +-static void flood (__ptr_t, int, __malloc_size_t); ++static void flood (__ptr_t, int, size_t); + static void + flood (ptr, val, size) + __ptr_t ptr; + int val; +- __malloc_size_t size; ++ size_t size; + { + char *cp = ptr; + while (size--) +@@ -202,7 +201,7 @@ freehook (__ptr_t ptr, const __ptr_t caller) + } + + static __ptr_t +-mallochook (__malloc_size_t size, const __ptr_t caller) ++mallochook (size_t size, const __ptr_t caller) + { + struct hdr *hdr; + +@@ -235,11 +234,11 @@ mallochook (__malloc_size_t size, const __ptr_t caller) + } + + static __ptr_t +-memalignhook (__malloc_size_t alignment, __malloc_size_t size, ++memalignhook (size_t alignment, size_t size, + const __ptr_t caller) + { + struct hdr *hdr; +- __malloc_size_t slop; ++ size_t slop; + char *block; + + if (pedantic) +@@ -274,7 +273,7 @@ memalignhook (__malloc_size_t alignment, __malloc_size_t size, + } + + static __ptr_t +-reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller) ++reallochook (__ptr_t ptr, size_t size, const __ptr_t caller) + { + if (size == 0) + { +@@ -283,7 +282,7 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller) + } + + struct hdr *hdr; +- __malloc_size_t osize; ++ size_t osize; + + if (pedantic) + mcheck_check_all (); +diff --git a/malloc/mtrace.c b/malloc/mtrace.c +index 3f02c7182285d025..0a26ccc65d81bd2a 100644 +--- a/malloc/mtrace.c ++++ b/malloc/mtrace.c +@@ -58,11 +58,10 @@ __ptr_t mallwatch; + + /* Old hook values. */ + static void (*tr_old_free_hook) (__ptr_t ptr, const __ptr_t); +-static __ptr_t (*tr_old_malloc_hook) (__malloc_size_t size, const __ptr_t); +-static __ptr_t (*tr_old_realloc_hook) (__ptr_t ptr, __malloc_size_t size, ++static __ptr_t (*tr_old_malloc_hook) (size_t size, const __ptr_t); ++static __ptr_t (*tr_old_realloc_hook) (__ptr_t ptr, size_t size, + const __ptr_t); +-static __ptr_t (*tr_old_memalign_hook) (__malloc_size_t __alignment, +- __malloc_size_t __size, ++static __ptr_t (*tr_old_memalign_hook) (size_t __alignment, size_t __size, + const __ptr_t); + + /* This function is called when the block being alloc'd, realloc'd, or +@@ -160,10 +159,10 @@ tr_freehook (ptr, caller) + __libc_lock_unlock (lock); + } + +-static __ptr_t tr_mallochook (__malloc_size_t, const __ptr_t) __THROW; ++static __ptr_t tr_mallochook (size_t, const __ptr_t) __THROW; + static __ptr_t + tr_mallochook (size, caller) +- __malloc_size_t size; ++ size_t size; + const __ptr_t caller; + { + __ptr_t hdr; +@@ -190,12 +189,12 @@ tr_mallochook (size, caller) + return hdr; + } + +-static __ptr_t tr_reallochook (__ptr_t, __malloc_size_t, const __ptr_t) ++static __ptr_t tr_reallochook (__ptr_t, size_t, const __ptr_t) + __THROW; + static __ptr_t + tr_reallochook (ptr, size, caller) + __ptr_t ptr; +- __malloc_size_t size; ++ size_t size; + const __ptr_t caller; + { + __ptr_t hdr; +@@ -238,11 +237,11 @@ tr_reallochook (ptr, size, caller) + return hdr; + } + +-static __ptr_t tr_memalignhook (__malloc_size_t, __malloc_size_t, ++static __ptr_t tr_memalignhook (size_t, size_t, + const __ptr_t) __THROW; + static __ptr_t + tr_memalignhook (alignment, size, caller) +- __malloc_size_t alignment, size; ++ size_t alignment, size; + const __ptr_t caller; + { + __ptr_t hdr; diff --git a/SOURCES/glibc-rh1505492-nscd_stat.patch b/SOURCES/glibc-rh1505492-nscd_stat.patch new file mode 100644 index 0000000..e14457d --- /dev/null +++ b/SOURCES/glibc-rh1505492-nscd_stat.patch @@ -0,0 +1,70 @@ +commit 1e9522c61c7a544d59db32cb7fbbd42e6793d848 +Author: Florian Weimer +Date: Thu Oct 5 18:14:27 2017 +0200 + + nscd: Eliminate compilation time dependency in the build output + + Reviewed-by: Carlos O'Donell + +diff --git a/nscd/nscd_stat.c b/nscd/nscd_stat.c +index d7d351c663fa6fe6..27b914aa712e7b8d 100644 +--- a/nscd/nscd_stat.c ++++ b/nscd/nscd_stat.c +@@ -35,9 +35,23 @@ + # include + #endif /* HAVE_SELINUX */ + ++/* We use this to make sure the receiver is the same. The lower 16 ++ bits are reserved for flags indicating compilation variants. This ++ version needs to be updated if the definition of struct statdata ++ changes. */ ++#define STATDATA_VERSION 0x01020000U + +-/* We use this to make sure the receiver is the same. */ +-static const char compilation[21] = __DATE__ " " __TIME__; ++#ifdef HAVE_SELINUX ++# define STATDATA_VERSION_SELINUX_FLAG 0x0001U ++#else ++# define STATDATA_VERSION_SELINUX_FLAG 0x0000U ++#endif ++ ++/* All flags affecting the struct statdata layout. */ ++#define STATDATA_VERSION_FLAGS STATDATA_VERSION_SELINUX_FLAG ++ ++/* The full version number for struct statdata. */ ++#define STATDATA_VERSION_FULL (STATDATA_VERSION | STATDATA_VERSION_FLAGS) + + /* Statistic data for one database. */ + struct dbstat +@@ -68,10 +82,11 @@ struct dbstat + uintmax_t addfailed; + }; + +-/* Record for transmitting statistics. */ ++/* Record for transmitting statistics. If this definition changes, ++ update STATDATA_VERSION above. */ + struct statdata + { +- char version[sizeof (compilation)]; ++ unsigned int version; /* Must be STATDATA_VERSION_FULL. */ + int debug_level; + time_t runtime; + unsigned long int client_queued; +@@ -96,7 +111,7 @@ send_stats (int fd, struct database_dyn dbs[lastdb]) + + memset (&data, 0, sizeof (data)); + +- memcpy (data.version, compilation, sizeof (compilation)); ++ data.version = STATDATA_VERSION_FULL; + data.debug_level = debug_level; + data.runtime = time (NULL) - start_time; + data.client_queued = client_queued; +@@ -196,7 +211,7 @@ receive_print_stats (void) + + /* Read as much data as we expect. */ + if (TEMP_FAILURE_RETRY (read (fd, &data, sizeof (data))) != sizeof (data) +- || (memcmp (data.version, compilation, sizeof (compilation)) != 0 ++ || (data.version != STATDATA_VERSION_FULL + /* Yes, this is an assignment! */ + && (errno = EINVAL))) + { diff --git a/SOURCES/glibc-rh1505492-ports-am33.patch b/SOURCES/glibc-rh1505492-ports-am33.patch new file mode 100644 index 0000000..ee9c757 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-am33.patch @@ -0,0 +1,3761 @@ +Recreation of this upstream commit: + +commit 464263cc00549d2597b6d25309d55b1e4a6b1aac +Author: Joseph Myers +Date: Sat Feb 8 00:16:57 2014 +0000 + + Remove am33 port. + + This patch removes the am33 port (no other port #includes any files + from it), as previously discussed (see + ). + +Git commands used: + +git rm -r ports/sysdeps/am33 +git rm -r ports/sysdeps/unix/am33 +git rm -r ports/sysdeps/unix/sysv/linux/am33 + +diff --git a/ports/sysdeps/am33/Implies b/ports/sysdeps/am33/Implies +deleted file mode 100644 +index 780c4e2467693939..0000000000000000 +--- a/ports/sysdeps/am33/Implies ++++ /dev/null +@@ -1,3 +0,0 @@ +-wordsize-32 +-ieee754/flt-32 +-ieee754/dbl-64 +diff --git a/ports/sysdeps/am33/__longjmp.S b/ports/sysdeps/am33/__longjmp.S +deleted file mode 100644 +index 1d6c29e99f0099f5..0000000000000000 +--- a/ports/sysdeps/am33/__longjmp.S ++++ /dev/null +@@ -1,60 +0,0 @@ +-/* longjmp for AM33. +- Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#define _ASM +-#define _SETJMP_H +-#include +-#include +- +-ENTRY (__longjmp) +- mov d0,a0 +- mov (8,a0),d2 +- mov d2,mdr +- mov (0,a0),d2 +- mov (4,a0),d3 +- mov (12,a0),a2 +- mov (16,a0),a3 +- mov (20,a0),a1 +- mov a1,sp +- add 24,a0 +- mov (a0+),r4 +- mov (a0+),r5 +- mov (a0+),r6 +- mov (a0+),r7 +-#ifdef __AM33_2__ +- fmov (a0+),fs4 +- fmov (a0+),fs5 +- fmov (a0+),fs6 +- fmov (a0+),fs7 +- fmov (a0+),fs8 +- fmov (a0+),fs9 +- fmov (a0+),fs10 +- fmov (a0+),fs11 +- fmov (a0+),fs12 +- fmov (a0+),fs13 +- fmov (a0+),fs14 +- fmov (a0+),fs15 +- fmov (a0+),fs16 +- fmov (a0+),fs17 +- fmov (a0+),fs18 +- fmov (a0+),fs19 +-#endif +- mov d1,d0 +- retf [],0 +-END (__longjmp) +diff --git a/ports/sysdeps/am33/atomicity.h b/ports/sysdeps/am33/atomicity.h +deleted file mode 100644 +index b0ba43db4b71a7fc..0000000000000000 +--- a/ports/sysdeps/am33/atomicity.h ++++ /dev/null +@@ -1,86 +0,0 @@ +-/* Low-level functions for atomic operations. AM33 version. +- Copyright 1999, 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../sparc/sparc32/atomicity.h +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _ATOMICITY_H +-#define _ATOMICITY_H 1 +- +-#include +- +-#define __acquire_lock(lock) \ +- __asm__ __volatile__("1: bset %1, (%0)\n\t" \ +- " beq 1b" \ +- : : "a" (&(lock)), "d" (1) \ +- : "memory") +- +-#define __release_lock(lock) lock = 0 +- +-static int +-__attribute__ ((unused)) +-exchange_and_add (volatile uint32_t *mem, int val) +-{ +- static unsigned char lock; +- int result; +- +- __acquire_lock (lock); +- +- result = *mem; +- *mem += val; +- +- __release_lock (lock); +- +- return result; +-} +- +-static void +-__attribute__ ((unused)) +-atomic_add (volatile uint32_t *mem, int val) +-{ +- static unsigned char lock; +- +- __acquire_lock (lock); +- +- *mem += val; +- +- __release_lock (lock); +-} +- +-static int +-__attribute__ ((unused)) +-compare_and_swap (volatile long int *p, long int oldval, long int newval) +-{ +- static unsigned char lock; +- int ret; +- +- __acquire_lock (lock); +- +- if (*p != oldval) +- ret = 0; +- else +- { +- *p = newval; +- ret = 1; +- } +- +- __release_lock (lock); +- +- return ret; +-} +- +-#endif /* atomicity.h */ +diff --git a/ports/sysdeps/am33/bits/endian.h b/ports/sysdeps/am33/bits/endian.h +deleted file mode 100644 +index 7423f09570ac1650..0000000000000000 +--- a/ports/sysdeps/am33/bits/endian.h ++++ /dev/null +@@ -1,7 +0,0 @@ +-/* AM33 is little-endian. */ +- +-#ifndef _ENDIAN_H +-# error "Never use directly; include instead." +-#endif +- +-#define __BYTE_ORDER __LITTLE_ENDIAN +diff --git a/ports/sysdeps/am33/bits/setjmp.h b/ports/sysdeps/am33/bits/setjmp.h +deleted file mode 100644 +index 6dd87cb65546ad11..0000000000000000 +--- a/ports/sysdeps/am33/bits/setjmp.h ++++ /dev/null +@@ -1,26 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-/* Define the machine-dependent type `jmp_buf'. AM33 version. */ +- +-#ifndef _SETJMP_H +-# error "Never include directly; use instead." +-#endif +- +-#ifndef _ASM +-typedef int __jmp_buf[26]; +-#endif +diff --git a/ports/sysdeps/am33/bsd-_setjmp.S b/ports/sysdeps/am33/bsd-_setjmp.S +deleted file mode 100644 +index 9bbfcbbba793502b..0000000000000000 +--- a/ports/sysdeps/am33/bsd-_setjmp.S ++++ /dev/null +@@ -1 +0,0 @@ +-/* _setjmp is in setjmp.S */ +diff --git a/ports/sysdeps/am33/bsd-setjmp.S b/ports/sysdeps/am33/bsd-setjmp.S +deleted file mode 100644 +index b6b239e67db2864c..0000000000000000 +--- a/ports/sysdeps/am33/bsd-setjmp.S ++++ /dev/null +@@ -1 +0,0 @@ +-/* setjmp is in setjmp.S */ +diff --git a/ports/sysdeps/am33/dl-machine.h b/ports/sysdeps/am33/dl-machine.h +deleted file mode 100644 +index d4b321aca094863e..0000000000000000 +--- a/ports/sysdeps/am33/dl-machine.h ++++ /dev/null +@@ -1,479 +0,0 @@ +-/* Machine-dependent ELF dynamic relocation inline functions. AM33 version. +- Copyright (C) 1995,96,97,98,99,2000,2001, 2004, 2011 +- Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef dl_machine_h +-#define dl_machine_h +- +-#define ELF_MACHINE_NAME "mn10300" +- +-#include +- +-/* Return nonzero iff ELF header is compatible with the running host. */ +-static inline int __attribute__ ((unused)) +-elf_machine_matches_host (const Elf32_Ehdr *ehdr) +-{ +- return ehdr->e_machine == EM_MN10300; +-} +- +- +-/* Return the link-time address of _DYNAMIC. Conveniently, this is the +- first element of the GOT. This must be inlined in a function which +- uses global data. */ +-static inline Elf32_Addr __attribute__ ((unused)) +-elf_machine_dynamic (void) +-{ +- register Elf32_Addr *got asm ("a2"); +- return *got; +-} +- +- +-/* Return the run-time load address of the shared object. */ +-static inline Elf32_Addr __attribute__ ((unused)) +-elf_machine_load_address (void) +-{ +- register Elf32_Addr gotaddr asm ("a2"); +- Elf32_Addr off, gotval; +- +- asm ("mov _dl_start@GOTOFF,%0" : "=r" (off)); +- asm ("mov (_dl_start@GOT,%1),%0" : "=r" (gotval) : "r" (gotaddr)); +- +- return off + gotaddr - gotval; +-} +- +-#ifndef PROF +-/* We add a declaration of this function here so that in dl-runtime.c +- the ELF_MACHINE_RUNTIME_TRAMPOLINE macro really can pass the parameters +- in registers. +- +- We cannot use this scheme for profiling because the _mcount call +- destroys the passed register information. */ +-static ElfW(Addr) fixup (struct link_map *l, ElfW(Word) reloc_offset) +- __attribute__ ((unused)); +-static ElfW(Addr) profile_fixup (struct link_map *l, ElfW(Word) reloc_offset, +- ElfW(Addr) retaddr) +- __attribute__ ((unused)); +-#endif +- +-/* Set up the loaded object described by L so its unrelocated PLT +- entries will jump to the on-demand fixup code in dl-runtime.c. */ +- +-static inline int __attribute__ ((unused)) +-elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) +-{ +- Elf32_Addr *got; +- extern void _dl_runtime_resolve (Elf32_Word) attribute_hidden; +- extern void _dl_runtime_profile (Elf32_Word) attribute_hidden; +- +- if (l->l_info[DT_JMPREL] && lazy) +- { +- /* The GOT entries for functions in the PLT have not yet been filled +- in. Their initial contents will arrange when called to push an +- offset into the .rel.plt section, push _GLOBAL_OFFSET_TABLE_[1], +- and then jump to _GLOBAL_OFFSET_TABLE[2]. */ +- got = (Elf32_Addr *) D_PTR (l, l_info[DT_PLTGOT]); +- got[1] = (Elf32_Addr) l; /* Identify this shared object. */ +- +- /* The got[2] entry contains the address of a function which gets +- called to get the address of a so far unresolved function and +- jump to it. The profiling extension of the dynamic linker allows +- to intercept the calls to collect information. In this case we +- don't store the address in the GOT so that all future calls also +- end in this function. */ +- if (__builtin_expect (profile, 0)) +- { +- got[2] = (Elf32_Addr) &_dl_runtime_profile; +- +- if (_dl_name_match_p (GLRO(dl_profile), l)) +- /* This is the object we are looking for. Say that we really +- want profiling and the timers are started. */ +- GL(dl_profile_map) = l; +- } +- else +- /* This function will get called to fix up the GOT entry indicated by +- the offset on the stack, and then jump to the resolved address. */ +- got[2] = (Elf32_Addr) &_dl_runtime_resolve; +- } +- +- return lazy; +-} +- +-/* This code is used in dl-runtime.c to call the `fixup' function +- and then redirect to the address it returns. */ +-#ifndef PROF +-# define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\ +- .text\n\ +- .globl _dl_runtime_resolve\n\ +- .type _dl_runtime_resolve, @function\n\ +-_dl_runtime_resolve:\n\ +- add -12,sp # Preserve registers otherwise clobbered.\n\ +- mov d1,(20,sp)\n\ +- mov d0,(16,sp)\n\ +- mov r1,d0\n\ +- mov r0,d1\n\ +- call fixup,[],0 # Call resolver.\n\ +- mov d0,a0\n\ +- mov (12,sp),d1 # Copy return address back to mdr,\n\ +- mov d1,mdr # in case the callee returns with retf\n\ +- mov (16,sp),d0 # Get register content back.\n\ +- mov (20,sp),d1\n\ +- add 12,sp\n\ +- jmp (a0)\n\ +- .size _dl_runtime_resolve, .-_dl_runtime_resolve\n\ +-\n\ +- .globl _dl_runtime_profile\n\ +- .type _dl_runtime_profile, @function\n\ +-_dl_runtime_profile:\n\ +- add -12,sp # Preserve registers otherwise clobbered.\n\ +- mov d1,(20,sp)\n\ +- mov d0,(16,sp)\n\ +- mov r1,d0\n\ +- mov r0,d1\n\ +- call profile_fixup,[],0 # Call resolver.\n\ +- mov d0,a0\n\ +- mov (12,sp),d1 # Copy return address back to mdr,\n\ +- mov d1,mdr # in case the callee returns with retf\n\ +- mov (16,sp),d0 # Get register content back.\n\ +- mov (20,sp),d1\n\ +- add 12,sp\n\ +- jmp (a0)\n\ +- .size _dl_runtime_profile, .-_dl_runtime_profile\n\ +- .previous\n\ +-"); +-#else +-# define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\n\ +- .text\n\ +- .globl _dl_runtime_resolve\n\ +- .globl _dl_runtime_profile\n\ +- .type _dl_runtime_resolve, @function\n\ +- .type _dl_runtime_profile, @function\n\ +-_dl_runtime_resolve:\n\ +-_dl_runtime_profile:\n\ +- add -12,sp # Preserve registers otherwise clobbered.\n\ +- mov d1,(20,sp)\n\ +- mov d0,(16,sp)\n\ +- mov r1,d0\n\ +- mov r0,d1\n\ +- call profile_fixup,[],0 # Call resolver.\n\ +- mov d0,a0\n\ +- mov (12,sp),d1 # Copy return address back to mdr,\n\ +- mov d1,mdr # in case the callee returns with retf\n\ +- mov (16,sp),d0 # Get register content back.\n\ +- mov (20,sp),d1\n\ +- add 12,sp\n\ +- jmp (a0)\n\ +- .size _dl_runtime_resolve, .-_dl_runtime_resolve\n\ +- .size _dl_runtime_profile, .-_dl_runtime_profile\n\ +- .previous\n\ +-"); +-#endif +- +-/* Mask identifying addresses reserved for the user program, +- where the dynamic linker should not map anything. */ +-#define ELF_MACHINE_USER_ADDRESS_MASK 0xf8000000UL +- +-/* Initial entry point code for the dynamic linker. +- The C function `_dl_start' is the real entry point; +- its return value is the user program's entry point. */ +-#define RTLD_START asm ("\n\ +- .text\n\ +-.globl _start\n\ +-.globl _dl_start_user\n\ +-_start:\n\ +- mov 0,a3 # Mark the top of the stack\n\ +- mov sp,a1\n\ +- add -20,sp # Prepare for function call\n\ +- mov a1,d0\n\ +- call _dl_start,[],0\n\ +-_dl_start_user:\n\ +- # Save the user entry point address in d2.\n\ +- mov d0,d2\n\ +- # Point a2 at the GOT.\n\ +-0: mov pc,a2\n\ +- add _GLOBAL_OFFSET_TABLE_ - (0b-.),a2\n\ +- # Store the highest stack address\n\ +- mov (__libc_stack_end@GOT,a2),a0\n\ +- mov a1,(a0)\n\ +- # See if we were run as a command with the executable file\n\ +- # name as an extra leading argument.\n\ +- mov (_dl_skip_args@GOT,a2),a0\n\ +- mov (a0),d0\n\ +- # Pop the original argument count.\n\ +- mov (20,sp),d3\n\ +- # Subtract _dl_skip_args from it.\n\ +- sub d0,d3\n\ +- # Adjust the stack pointer to skip _dl_skip_args words.\n\ +- asl2 d0\n\ +- mov sp,a0\n\ +- add d0,a0\n\ +- mov a0,sp\n\ +- # Push argc back on the stack.\n\ +- mov d3,(20,sp)\n\ +- # The special initializer gets called with the stack just\n\ +- # as the application's entry point will see it; it can\n\ +- # switch stacks if it moves these contents over.\n\ +-" RTLD_START_SPECIAL_INIT "\n\ +- # Load the parameters again.\n\ +- # (d0, d1, (12,sp), (16,sp)) = (_dl_loaded, argc, argv, envp)\n\ +- add 24,a0\n\ +- mov a0,(12,sp) # a0 is 24+sp\n\ +- mov d3,d1 # d3 contained argc\n\ +- inc d3\n\ +- asl2 d3 # d3 is now (argc+1)*4,\n\ +- add d3,a0 # the offset between argv and envp\n\ +- mov a0,(16,sp)\n\ +- mov (_rtld_local@GOTOFF,a2),d0\n\ +- # Call the function to run the initializers.\n\ +- call _dl_init@PLT,[],0\n\ +- # Pass our finalizer function to the user in d0, as per ELF ABI.\n\ +- mov (_dl_fini@GOT,a2),d0\n\ +- add 20,sp\n\ +- # Jump to the user's entry point.\n\ +- mov d2,a1\n\ +- jmp (a1)\n\ +- .previous\n\ +-"); +- +-#ifndef RTLD_START_SPECIAL_INIT +-#define RTLD_START_SPECIAL_INIT /* nothing */ +-#endif +- +-/* ELF_RTYPE_CLASS_PLT iff TYPE describes relocation of a PLT entry, so +- PLT entries should not be allowed to define the value. +- ELF_RTYPE_CLASS_NOCOPY iff TYPE should not be allowed to resolve to one +- of the main executable's symbols, as for a COPY reloc. */ +-#define elf_machine_type_class(type) \ +- ((((type) == R_MN10300_JMP_SLOT) * ELF_RTYPE_CLASS_PLT) \ +- | (((type) == R_MN10300_COPY) * ELF_RTYPE_CLASS_COPY)) +- +-/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */ +-#define ELF_MACHINE_JMP_SLOT R_MN10300_JMP_SLOT +- +-static inline Elf32_Addr +-elf_machine_fixup_plt (struct link_map *map, lookup_t t, +- const Elf32_Rela *reloc, +- Elf32_Addr *reloc_addr, Elf32_Addr value) +-{ +- return *reloc_addr = value; +-} +- +-/* Return the final value of a plt relocation. */ +-static inline Elf32_Addr +-elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc, +- Elf32_Addr value) +-{ +- return value + reloc->r_addend; +-} +- +-#endif /* !dl_machine_h */ +- +-#ifdef RESOLVE +- +-/* The mn10300 never uses Elf32_Rel relocations. */ +-#define ELF_MACHINE_NO_REL 1 +- +-/* Perform the relocation specified by RELOC and SYM (which is fully resolved). +- MAP is the object containing the reloc. */ +- +-static inline void +-elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, +- const Elf32_Sym *sym, const struct r_found_version *version, +- void *const reloc_addr_arg, int skip_ifunc) +-{ +- const unsigned int r_type = ELF32_R_TYPE (reloc->r_info); +- Elf32_Addr value, *reloc_addr; +- +- /* Make sure we drop any previous alignment assumptions. */ +- asm ("" : "=r" (reloc_addr) : "0" (reloc_addr_arg)); +- +-#define COPY_UNALIGNED_WORD(sw, tw, align) \ +- { \ +- unsigned long *__sl = (void*)&(sw), *__tl = (void*)&(tw); \ +- unsigned short *__ss = (void*)&(sw), *__ts = (void*)&(tw); \ +- unsigned char *__sc = (void*)&(sw), *__tc = (void*)&(tw); \ +- switch ((align)) \ +- { \ +- case 0: \ +- *__tl = *__sl; \ +- break; \ +- case 2: \ +- *__ts++ = *__ss++; \ +- *__ts = *__ss; \ +- break; \ +- default: \ +- *__tc++ = *__sc++; \ +- *__tc++ = *__sc++; \ +- *__tc++ = *__sc++; \ +- *__tc = *__sc; \ +- break; \ +- } \ +- } +- +-#define COPY_UNALIGNED_HALFWORD(sw, tw, align) \ +- { \ +- unsigned short *__ss = (void*)&(sw), *__ts = (void*)&(tw); \ +- unsigned char *__sc = (void*)&(sw), *__tc = (void*)&(tw); \ +- switch ((align)) \ +- { \ +- case 0: \ +- *__ts = *__ss; \ +- break; \ +- default: \ +- *__tc++ = *__sc++; \ +- *__tc = *__sc; \ +- break; \ +- } \ +- } +- +-#if !defined RTLD_BOOTSTRAP || !defined HAVE_Z_COMBRELOC +- if (__builtin_expect (r_type == R_MN10300_RELATIVE, 0)) +- { +-# if !defined RTLD_BOOTSTRAP && !defined HAVE_Z_COMBRELOC +- /* This is defined in rtld.c, but nowhere in the static libc.a; +- make the reference weak so static programs can still link. +- This declaration cannot be done when compiling rtld.c (i.e. +- #ifdef RTLD_BOOTSTRAP) because rtld.c contains the common +- defn for _dl_rtld_map, which is incompatible with a weak decl +- in the same file. */ +- weak_extern (_dl_rtld_map); +- if (map != &_dl_rtld_map) /* Already done in rtld itself. */ +-# endif +- { +- COPY_UNALIGNED_WORD (*reloc_addr, value, (int) reloc_addr & 3); +- value += map->l_addr; +- COPY_UNALIGNED_WORD (value, *reloc_addr, (int) reloc_addr & 3); +- } +- } +-# ifndef RTLD_BOOTSTRAP +- else if (__builtin_expect (r_type == R_MN10300_NONE, 0)) +- return; +-# endif +- else +-#endif +- { +-#ifndef RTLD_BOOTSTRAP +- const Elf32_Sym *const refsym = sym; +-#endif +- +- value = RESOLVE (&sym, version, ELF32_R_TYPE (reloc->r_info)); +- if (sym) +- value += sym->st_value; +- value += reloc->r_addend; /* Assume copy relocs have zero addend. */ +- +- switch (r_type) +- { +-#ifndef RTLD_BOOTSTRAP +- case R_MN10300_COPY: +- if (sym == NULL) +- /* This can happen in trace mode if an object could not be +- found. */ +- break; +- if (sym->st_size > refsym->st_size +- || (GLRO(dl_verbose) && sym->st_size < refsym->st_size)) +- { +- extern char **_dl_argv; +- const char *strtab; +- +- strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]); +- _dl_error_printf ("\ +-%s: Symbol `%s' has different size in shared object, consider re-linking\n", +- _dl_argv[0] ?: "", +- strtab + refsym->st_name); +- } +- memcpy (reloc_addr, (void *) value, MIN (sym->st_size, +- refsym->st_size)); +- break; +-#endif +- case R_MN10300_GLOB_DAT: +- case R_MN10300_JMP_SLOT: +- /* These addresses are always aligned. */ +- *reloc_addr = value; +- break; +- case R_MN10300_32: +- COPY_UNALIGNED_WORD (value, *reloc_addr, (int) reloc_addr & 3); +- break; +-#ifndef RTLD_BOOTSTRAP +- case R_MN10300_16: +- COPY_UNALIGNED_HALFWORD (value, *reloc_addr, (int) reloc_addr & 1); +- break; +- case R_MN10300_8: +- *(char *) reloc_addr = value; +- break; +- case R_MN10300_PCREL32: +- value -= (Elf32_Addr) reloc_addr; +- COPY_UNALIGNED_WORD (value, *reloc_addr, (int) reloc_addr & 3); +- break; +- case R_MN10300_PCREL16: +- value -= (Elf32_Addr) reloc_addr; +- COPY_UNALIGNED_HALFWORD (value, *reloc_addr, (int) reloc_addr & 1); +- break; +- case R_MN10300_PCREL8: +- value -= (Elf32_Addr) reloc_addr; +- *(char *) reloc_addr = (value - (Elf32_Addr) reloc_addr); +- break; +-#endif +- case R_MN10300_NONE: /* Alright, Wilbur. */ +- break; +-#if !defined RTLD_BOOTSTRAP || defined _NDEBUG +- default: +- _dl_reloc_bad_type (map, ELFW(R_TYPE) (reloc->r_info), 0); +- break; +-#endif +- } +- +- } +-} +- +-static inline void +-elf_machine_rela_relative (Elf32_Addr l_addr, const Elf32_Rela *reloc, +- void *const reloc_addr_arg) +-{ +- Elf32_Addr value, *reloc_addr; +- +- asm ("" : "=r" (reloc_addr) : "0" (reloc_addr_arg)); +- +- COPY_UNALIGNED_WORD (*reloc_addr, value, (int)reloc_addr & 3); +- value += l_addr; +- COPY_UNALIGNED_WORD (value, *reloc_addr, (int)reloc_addr & 3); +-} +- +-static inline void +-elf_machine_lazy_rel (struct link_map *map, +- Elf32_Addr l_addr, const Elf32_Rela *reloc, +- int skip_ifunc) +-{ +- unsigned long int const r_type = ELF32_R_TYPE (reloc->r_info); +- +- /* Check for unexpected PLT reloc type. */ +- if (__builtin_expect (r_type, R_MN10300_JMP_SLOT) == R_MN10300_JMP_SLOT) +- { +- Elf32_Addr* const reloc_addr = (void *)(l_addr + reloc->r_offset); +- Elf32_Addr value; +- +- /* Perform a RELATIVE reloc on the .got entry that transfers +- to the .plt. */ +- COPY_UNALIGNED_WORD (*reloc_addr, value, (int)reloc_addr & 3); +- value += l_addr; +- COPY_UNALIGNED_WORD (value, *reloc_addr, (int)reloc_addr & 3); +- } +- else if (__builtin_expect (r_type, R_MN10300_NONE) != R_MN10300_NONE) +- _dl_reloc_bad_type (map, ELFW(R_TYPE) (reloc->r_info), 1); +- +-} +- +-#endif /* RESOLVE */ +diff --git a/ports/sysdeps/am33/elf/start.S b/ports/sysdeps/am33/elf/start.S +deleted file mode 100644 +index 518e75e478bbeb78..0000000000000000 +--- a/ports/sysdeps/am33/elf/start.S ++++ /dev/null +@@ -1,80 +0,0 @@ +-/* Startup code compliant to the ELF MN10300 ABI. +- Copyright (C) 1995,1996,1997,1998,2000,2001 Free Software Foundation, Inc. +- Contributed by Alexandre Oliva +- Based on ../../i386/elf/start.S. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-/* This is the canonical entry point, usually the first thing in the text +- segment. The SVR4/i386 ABI (pages 3-31, 3-32) says that when the entry +- point runs, most registers' values are unspecified, except for: +- +- a0 Contains a function pointer to be registered with `atexit'. +- This is how the dynamic linker arranges to have DT_FINI +- functions called for shared libraries that have been loaded +- before this code runs. +- +- sp The stack contains the arguments and environment: +- (4,sp) argc +- (8,sp) argv[0] +- ... +- (4*(argc+1),sp) NULL +- (4*(argc+2),sp) envp[0] +- ... +- NULL +-*/ +- +-#include "bp-sym.h" +- +- .text +- .globl _start +- .type _start,@function +-_start: +- /* Extract the arguments as encoded on the stack and set up +- the arguments for `main': argc, argv. envp will be determined +- later in __libc_start_main. */ +- mov sp,a3 +- add -32,sp +- +- mov a3,(28,sp) /* stack_end. */ +- mov d0,(24,sp) /* rtld_fini. */ +- mov _fini, d3 +- mov d3,(20,sp) /* fini. */ +- mov _init, d2 +- mov d2,(16,sp) /* init. */ +- inc4 a3 +- mov a3,(12,sp) /* argv. */ +- +- /* Set the initial frame pointer as 0, so that the bottom of +- the stack is clearly marked. */ +- mov 0,a3 +- +- mov (32,sp), d1 /* argc. */ +- mov BP_SYM (main), d0 /* main. */ +- +- /* Call the user's main function, and exit with its value. +- But let the libc call main. */ +- call BP_SYM (__libc_start_main),[],0 +- +- call BP_SYM (abort),[],0 /* Crash if somehow `exit' does return. */ +- +-/* Define a symbol for the first piece of initialized data. */ +- .data +- .globl __data_start +-__data_start: +- .long 0 +- .weak data_start +- data_start = __data_start +diff --git a/ports/sysdeps/am33/fpu/bits/fenv.h b/ports/sysdeps/am33/fpu/bits/fenv.h +deleted file mode 100644 +index b0e60e9312f135b2..0000000000000000 +--- a/ports/sysdeps/am33/fpu/bits/fenv.h ++++ /dev/null +@@ -1,72 +0,0 @@ +-/* Copyright (C) 1998-2012 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on the corresponding file in the mips port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _FENV_H +-# error "Never use directly; include instead." +-#endif +- +- +-/* Define bits representing the exception. We use the EF bit +- positions of the appropriate bits in the FPCR register. */ +-enum +- { +- FE_INEXACT = +-#define FE_INEXACT 0x01 +- FE_INEXACT, +- FE_UNDERFLOW = +-#define FE_UNDERFLOW 0x02 +- FE_UNDERFLOW, +- FE_OVERFLOW = +-#define FE_OVERFLOW 0x04 +- FE_OVERFLOW, +- FE_DIVBYZERO = +-#define FE_DIVBYZERO 0x08 +- FE_DIVBYZERO, +- FE_INVALID = +-#define FE_INVALID 0x10 +- FE_INVALID, +- }; +- +-#define FE_ALL_EXCEPT \ +- (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) +- +-/* The AM33/2.0 FPU supports only Round to nearest. Bits 3<<16 are +- reserved to represent other rounding modes. */ +-enum +- { +- FE_TONEAREST = +-#define FE_TONEAREST 0x00000 +- FE_TONEAREST, +- }; +- +- +-/* Type representing exception flags. */ +-typedef unsigned int fexcept_t; +- +- +-/* Type representing floating-point environment. */ +-typedef unsigned int fenv_t; +- +-/* If the default argument is used we use this value. */ +-#define FE_DFL_ENV ((__const fenv_t *) -1) +- +-#ifdef __USE_GNU +-/* Floating-point environment where none of the exception is masked. */ +-# define FE_NOMASK_ENV ((__const fenv_t *) -2) +-#endif +diff --git a/ports/sysdeps/am33/fpu/fclrexcpt.c b/ports/sysdeps/am33/fpu/fclrexcpt.c +deleted file mode 100644 +index 492ea38ba39bf061..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fclrexcpt.c ++++ /dev/null +@@ -1,52 +0,0 @@ +-/* Clear given exceptions in current floating-point environment. +- Copyright (C) 1998-2012 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +-#include +- +-int +-__feclearexcept (int excepts) +-{ +- fpu_control_t cw; +- +- /* Mask out unsupported bits/exceptions. */ +- excepts &= FE_ALL_EXCEPT; +- +- /* Read the complete control word. */ +- _FPU_GETCW (cw); +- +- /* Clear exception flag bits and cause bits. EF bits are cleared by +- assigning 1 to them (and there's no way to set them); other bits +- are copied normally. */ +- +- cw &= ~((excepts << CAUSE_SHIFT) | FE_ALL_EXCEPT); +- cw |= excepts; +- +- /* Put the new data in effect. */ +- _FPU_SETFCW (cw); +- +- /* Success. */ +- return 0; +-} +- +-libm_hidden_ver (__feclearexcept, feclearexcept) +-versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fedisblxcpt.c b/ports/sysdeps/am33/fpu/fedisblxcpt.c +deleted file mode 100644 +index 170f8200ed1224fa..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fedisblxcpt.c ++++ /dev/null +@@ -1,41 +0,0 @@ +-/* Disable floating-point exceptions. +- Copyright (C) 2000, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-fedisableexcept (int excepts) +-{ +- fpu_control_t new_exc, old_exc; +- +- /* Get the current control word. */ +- _FPU_GETCW (new_exc); +- +- old_exc = (new_exc & ENABLE_MASK) >> ENABLE_SHIFT; +- +- excepts &= FE_ALL_EXCEPT; +- +- new_exc &= ~(excepts << ENABLE_SHIFT); +- _FPU_SETCW (new_exc); +- +- return old_exc; +-} +diff --git a/ports/sysdeps/am33/fpu/feenablxcpt.c b/ports/sysdeps/am33/fpu/feenablxcpt.c +deleted file mode 100644 +index fe6d880c2192fd7c..0000000000000000 +--- a/ports/sysdeps/am33/fpu/feenablxcpt.c ++++ /dev/null +@@ -1,41 +0,0 @@ +-/* Enable floating-point exceptions. +- Copyright (C) 2000, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-feenableexcept (int excepts) +-{ +- fpu_control_t new_exc, old_exc; +- +- /* Get the current control word. */ +- _FPU_GETCW (new_exc); +- +- old_exc = (new_exc & ENABLE_MASK) >> ENABLE_SHIFT; +- +- excepts &= FE_ALL_EXCEPT; +- +- new_exc |= excepts << ENABLE_SHIFT; +- _FPU_SETCW (new_exc); +- +- return old_exc; +-} +diff --git a/ports/sysdeps/am33/fpu/fegetenv.c b/ports/sysdeps/am33/fpu/fegetenv.c +deleted file mode 100644 +index 6da6eeb91357d2d5..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fegetenv.c ++++ /dev/null +@@ -1,34 +0,0 @@ +-/* Store current floating-point environment. +- Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-__fegetenv (fenv_t *envp) +-{ +- _FPU_GETCW (*envp); +- +- /* Success. */ +- return 0; +-} +- +-versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fegetexcept.c b/ports/sysdeps/am33/fpu/fegetexcept.c +deleted file mode 100644 +index 13e5306af994302c..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fegetexcept.c ++++ /dev/null +@@ -1,34 +0,0 @@ +-/* Get enabled floating-point exceptions. +- Copyright (C) 2000, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-fegetexcept (void) +-{ +- unsigned int exc; +- +- /* Get the current control word. */ +- _FPU_GETCW (exc); +- +- return (exc & ENABLE_MASK) >> ENABLE_SHIFT; +-} +diff --git a/ports/sysdeps/am33/fpu/fegetround.c b/ports/sysdeps/am33/fpu/fegetround.c +deleted file mode 100644 +index d649f18bf7c8ffe2..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fegetround.c ++++ /dev/null +@@ -1,34 +0,0 @@ +-/* Return current rounding direction. +- Copyright (C) 1998, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-fegetround (void) +-{ +- int cw; +- +- /* Get control word. */ +- _FPU_GETCW (cw); +- +- return (cw & ROUND_MASK); +-} +diff --git a/ports/sysdeps/am33/fpu/feholdexcpt.c b/ports/sysdeps/am33/fpu/feholdexcpt.c +deleted file mode 100644 +index 1c002d8d9490364d..0000000000000000 +--- a/ports/sysdeps/am33/fpu/feholdexcpt.c ++++ /dev/null +@@ -1,38 +0,0 @@ +-/* Store current floating-point environment and clear exceptions. +- Copyright (C) 2000, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +- +-int +-feholdexcept (fenv_t *envp) +-{ +- fpu_control_t cw; +- +- /* Save the current state. */ +- _FPU_GETCW (cw); +- *envp = cw; +- +- /* Clear all exception enable bits and flags. */ +- cw &= ~(_FPU_MASK_V|_FPU_MASK_Z|_FPU_MASK_O|_FPU_MASK_U|_FPU_MASK_I); +- _FPU_SETFCW (cw); +- +- return 0; +-} +diff --git a/ports/sysdeps/am33/fpu/fenv_libc.h b/ports/sysdeps/am33/fpu/fenv_libc.h +deleted file mode 100644 +index 40d57259bdc3e702..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fenv_libc.h ++++ /dev/null +@@ -1,32 +0,0 @@ +-/* Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on the corresponding file in the mips port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _FENV_LIBC_H +-#define _FENV_LIBC_H 1 +- +-/* Mask for enabling exceptions and for the CAUSE bits. */ +-#define ENABLE_MASK 0x003E0U +-#define CAUSE_MASK 0x07C00U +-#define ROUND_MASK 0x30000U +- +-/* Shift for FE_* flags to get up to the ENABLE bits and the CAUSE bits. */ +-#define ENABLE_SHIFT 5 +-#define CAUSE_SHIFT 10 +- +-#endif /* _FENV_LIBC_H */ +diff --git a/ports/sysdeps/am33/fpu/fesetenv.c b/ports/sysdeps/am33/fpu/fesetenv.c +deleted file mode 100644 +index 110c49c9f8fd780a..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fesetenv.c ++++ /dev/null +@@ -1,59 +0,0 @@ +-/* Install given floating-point environment. +- Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-__fesetenv (const fenv_t *envp) +-{ +- fpu_control_t cw; +- +- /* We want to clear all EF bits for the default end IEEE. */ +- +- if (envp == FE_DFL_ENV) +- _FPU_SETFCW (_FPU_DEFAULT|FE_ALL_EXCEPT); +- else if (envp == FE_NOMASK_ENV) +- _FPU_SETFCW (_FPU_IEEE|FE_ALL_EXCEPT); +- else +- { +- fpu_control_t temp; +- +- _FPU_GETCW (temp); +- cw = *envp; +- +- /* If EF bits are cleared and the user requests them to be set, +- we have to fail, because there's no way to do it. */ +- if (~temp & cw & FE_ALL_EXCEPT) +- return -1; +- +- /* We clear EF bits by storing a 1 in them, so flip the +- FE_ALL_EXCEPT bits. */ +- cw = (cw & ~FE_ALL_EXCEPT) | (~cw & FE_ALL_EXCEPT); +- _FPU_SETFCW (cw); +- } +- +- /* Success. */ +- return 0; +-} +- +-libm_hidden_ver (__fesetenv, fesetenv) +-versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fesetround.c b/ports/sysdeps/am33/fpu/fesetround.c +deleted file mode 100644 +index e77dc7684f93163b..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fesetround.c ++++ /dev/null +@@ -1,28 +0,0 @@ +-/* Set current rounding direction. +- Copyright (C) 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +- +-int +-fesetround (int round) +-{ +- /* The only supported rounding mode is to-nearest. Just check +- whether we're switching to it. */ +- return (round != FE_TONEAREST); +-} +diff --git a/ports/sysdeps/am33/fpu/feupdateenv.c b/ports/sysdeps/am33/fpu/feupdateenv.c +deleted file mode 100644 +index 70951a36753f62b7..0000000000000000 +--- a/ports/sysdeps/am33/fpu/feupdateenv.c ++++ /dev/null +@@ -1,46 +0,0 @@ +-/* Install given floating-point environment and raise exceptions. +- Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-__feupdateenv (const fenv_t *envp) +-{ +- int temp; +- +- /* Save current exceptions. */ +- _FPU_GETCW (temp); +- temp &= FE_ALL_EXCEPT; +- +- /* Install new environment. */ +- fesetenv (envp); +- +- /* Raise the safed exception. Incidently for us the implementation +- defined format of the values in objects of type fexcept_t is the +- same as the ones specified using the FE_* constants. */ +- feraiseexcept (temp); +- +- /* Success. */ +- return 0; +-} +- +-versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fgetexcptflg.c b/ports/sysdeps/am33/fpu/fgetexcptflg.c +deleted file mode 100644 +index d5828e6011a71881..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fgetexcptflg.c ++++ /dev/null +@@ -1,43 +0,0 @@ +-/* Store current representation for exceptions. +- Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-__fegetexceptflag (fexcept_t *flagp, int excepts) +-{ +- fexcept_t temp; +- +- /* Get the current exceptions. */ +- _FPU_GETCW (temp); +- +- /* We only save the relevant bits here. In particular, care has to be +- taken with the CAUSE bits, as an inadvertent restore later on could +- generate unexpected exceptions. */ +- +- *flagp = temp & excepts & FE_ALL_EXCEPT; +- +- /* Success. */ +- return 0; +-} +- +-versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fpu_control.h b/ports/sysdeps/am33/fpu/fpu_control.h +deleted file mode 100644 +index de28228e7182627e..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fpu_control.h ++++ /dev/null +@@ -1,74 +0,0 @@ +-/* FPU control word bits. AM33/2.0 version. +- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2004 +- Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on the corresponding file in the mips port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _FPU_CONTROL_H +-#define _FPU_CONTROL_H +- +-/* AM33/2.0 FPU floating point control register bits. +- * +- * 31-22 -> reserved +- * 21-18 -> floating-point condition codes (L, G, E, U) +- * 17-16 -> rounding modes (00 is to-nearest; other values are reserved +- * 15 -> reserved (read as 0, write with 0) +- * 14-10 -> Exception Cause (inValid, divZero, Overflow, Underflow, Inexact) +- * 9- 5 -> Exception Enable +- * 4- 0 -> Exception Flag, cleared when exception cause is set +- */ +- +-#include +-#include +- +-/* masking of interrupts */ +-#define _FPU_MASK_V 0x0200 /* Invalid operation */ +-#define _FPU_MASK_Z 0x0100 /* Division by zero */ +-#define _FPU_MASK_O 0x0080 /* Overflow */ +-#define _FPU_MASK_U 0x0040 /* Underflow */ +-#define _FPU_MASK_I 0x0020 /* Inexact operation */ +- +-/* rounding control */ +-#define _FPU_RC_NEAREST 0x0 /* Only available mode */ +- +-#define _FPU_RESERVED 0xffc08000 /* Reserved bits in fpcr */ +- +- +-/* The fdlibm code requires strict IEEE double precision arithmetic, +- and no interrupts for exceptions, rounding to nearest. */ +- +-#define _FPU_DEFAULT 0x0000001f +- +-/* IEEE: same as above, but exceptions */ +-#define _FPU_IEEE 0x000003ff +- +-/* Type of the control word. */ +-typedef unsigned int fpu_control_t; +- +-/* Macros for accessing the hardware control word. _FPU_SETCW is +- defined such that it won't modify the EF bits, that are cleared +- when assigned bits that are set. Use SETFCW to get them actually +- reset. */ +-#define _FPU_SETFCW(cw) __asm__ ("fmov %0,fpcr" : : "ri" (cw)) +-#define _FPU_SETCW(cw) _FPU_SETFCW((cw) & ~FE_ALL_EXCEPT) +-#define _FPU_GETCW(cw) __asm__ ("fmov fpcr,%0" : "=r" (cw)) +- +-/* Default control word set at startup. */ +-extern fpu_control_t __fpu_control; +- +-#endif /* fpu_control.h */ +diff --git a/ports/sysdeps/am33/fpu/fraiseexcpt.c b/ports/sysdeps/am33/fpu/fraiseexcpt.c +deleted file mode 100644 +index 628ad56e9be78034..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fraiseexcpt.c ++++ /dev/null +@@ -1,78 +0,0 @@ +-/* Raise given exceptions. +- Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the M68K port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +-#include +- +-int +-__feraiseexcept (int excepts) +-{ +- /* Raise exceptions represented by EXCEPTS. But we must raise only one +- signal at a time. It is important that if the overflow/underflow +- exception and the divide by zero exception are given at the same +- time, the overflow/underflow exception follows the divide by zero +- exception. */ +- +- /* First: invalid exception. */ +- if (excepts & FE_INVALID) +- { +- /* One example of a invalid operation is 0 * Infinity. */ +- float x = HUGE_VALF, y = 0.0f; +- __asm__ __volatile__ ("fmul %1,%0" : "+f" (x) : "f" (y)); +- } +- +- /* Next: division by zero. */ +- if (excepts & FE_DIVBYZERO) +- { +- float x = 1.0f, y = 0.0f; +- __asm__ __volatile__ ("fdiv %1,%0" : "+f" (x) : "f" (y)); +- } +- +- /* Next: overflow. */ +- if (excepts & FE_OVERFLOW) +- { +- float x = FLT_MAX; +- +- __asm__ __volatile__ ("fmul %0,%0" : "+f" (x)); +- } +- +- /* Next: underflow. */ +- if (excepts & FE_UNDERFLOW) +- { +- float x = -FLT_MIN; +- +- __asm__ __volatile__ ("fmul %0,%0" : "+f" (x)); +- } +- +- /* Last: inexact. */ +- if (excepts & FE_INEXACT) +- { +- float x = 1.0f, y = 3.0f; +- __asm__ __volatile__ ("fdiv %1,%0" : "=f" (x) : "f" (y)); +- } +- +- /* Success. */ +- return 0; +-} +- +-libm_hidden_ver (__feraiseexcept, feraiseexcept) +-versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/fsetexcptflg.c b/ports/sysdeps/am33/fpu/fsetexcptflg.c +deleted file mode 100644 +index a5bde4020096076b..0000000000000000 +--- a/ports/sysdeps/am33/fpu/fsetexcptflg.c ++++ /dev/null +@@ -1,56 +0,0 @@ +-/* Set floating-point environment exception handling. +- Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-int +-__fesetexceptflag (const fexcept_t *flagp, int excepts) +-{ +- fpu_control_t cw, temp; +- +- /* Get the current exceptions. */ +- _FPU_GETCW (cw); +- +- /* Make sure the flags we want restored are legal. */ +- excepts &= FE_ALL_EXCEPT; +- temp = *flagp & excepts; +- +- /* If EF bits are clear and the user requests them to be set, +- we have to fail, because there's no way to do it. */ +- if (~(cw & excepts) & temp) +- return -1; +- +- /* We clear EF bits by storing a 1 in them, so flip the +- FE_ALL_EXCEPT bits. */ +- temp = (~temp & FE_ALL_EXCEPT); +- +- /* Now clear the bits called for, and copy them in from flagp. Note that +- we ignore all non-flag bits from *flagp, so they don't matter. */ +- cw = (cw & ~FE_ALL_EXCEPT) | temp; +- +- _FPU_SETFCW (cw); +- +- /* Success. */ +- return 0; +-} +- +-versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); +diff --git a/ports/sysdeps/am33/fpu/ftestexcept.c b/ports/sysdeps/am33/fpu/ftestexcept.c +deleted file mode 100644 +index ef3e761fcc110dd6..0000000000000000 +--- a/ports/sysdeps/am33/fpu/ftestexcept.c ++++ /dev/null +@@ -1,33 +0,0 @@ +-/* Test exception in current environment. +- Copyright (C) 1998, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- based on corresponding file in the MIPS port. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +- +-int +-fetestexcept (int excepts) +-{ +- int cw; +- +- /* Get current control word. */ +- _FPU_GETCW (cw); +- +- return cw & excepts & FE_ALL_EXCEPT; +-} +diff --git a/ports/sysdeps/am33/jmpbuf-offsets.h b/ports/sysdeps/am33/jmpbuf-offsets.h +deleted file mode 100644 +index 9884f2e3c099aeb8..0000000000000000 +--- a/ports/sysdeps/am33/jmpbuf-offsets.h ++++ /dev/null +@@ -1,19 +0,0 @@ +-/* Private macros for accessing __jmp_buf contents. AM33 version. +- Copyright (C) 2006 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#define __JMP_BUF_SP 20 +diff --git a/ports/sysdeps/am33/jmpbuf-unwind.h b/ports/sysdeps/am33/jmpbuf-unwind.h +deleted file mode 100644 +index d5c01e27978d6ab4..0000000000000000 +--- a/ports/sysdeps/am33/jmpbuf-unwind.h ++++ /dev/null +@@ -1,25 +0,0 @@ +-/* Examine __jmp_buf for unwinding frames. AM33 version. +- Copyright (C) 2006 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +- +-/* Test if longjmp to JMPBUF would unwind the frame +- containing a local variable at ADDRESS. */ +-#define _JMPBUF_UNWINDS(jmpbuf, address, demangle) \ +- ((void *) (address) < (void *) demangle (jmpbuf[__JMP_BUF_SP])) +diff --git a/ports/sysdeps/am33/linuxthreads/pspinlock.c b/ports/sysdeps/am33/linuxthreads/pspinlock.c +deleted file mode 100644 +index a1674974abfb749b..0000000000000000 +--- a/ports/sysdeps/am33/linuxthreads/pspinlock.c ++++ /dev/null +@@ -1,73 +0,0 @@ +-/* POSIX spinlock implementation. AM33 version. +- Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include "internals.h" +- +-int +-__pthread_spin_lock (pthread_spinlock_t *lock) +-{ +- __asm__ __volatile__("1: bset %1, (%0); beq 1b" +- : : "a" (lock), "d" (1) : "memory"); +- return 0; +-} +-weak_alias (__pthread_spin_lock, pthread_spin_lock) +- +- +-int +-__pthread_spin_trylock (pthread_spinlock_t *lock) +-{ +- int oldval = 1; +- +- __asm__ __volatile__ ("bset %0, (%1); beq 1f; clr %0; 1:" : +- "+d" (oldval) : "a" (lock) : "memory"); +- +- return oldval ? EBUSY : 0; +-} +-weak_alias (__pthread_spin_trylock, pthread_spin_trylock) +- +- +-int +-__pthread_spin_unlock (pthread_spinlock_t *lock) +-{ +- *lock = 0; +- return 0; +-} +-weak_alias (__pthread_spin_unlock, pthread_spin_unlock) +- +- +-int +-__pthread_spin_init (pthread_spinlock_t *lock, int pshared) +-{ +- /* We can ignore the `pshared' parameter. Since we are busy-waiting +- all processes which can access the memory location `lock' points +- to can use the spinlock. */ +- *lock = 0; +- return 0; +-} +-weak_alias (__pthread_spin_init, pthread_spin_init) +- +- +-int +-__pthread_spin_destroy (pthread_spinlock_t *lock) +-{ +- /* Nothing to do. */ +- return 0; +-} +-weak_alias (__pthread_spin_destroy, pthread_spin_destroy) +diff --git a/ports/sysdeps/am33/linuxthreads/pt-machine.h b/ports/sysdeps/am33/linuxthreads/pt-machine.h +deleted file mode 100644 +index 86d0f8b1e1cb0e01..0000000000000000 +--- a/ports/sysdeps/am33/linuxthreads/pt-machine.h ++++ /dev/null +@@ -1,67 +0,0 @@ +-/* Machine-dependent pthreads configuration and inline functions. +- am33 version. +- Copyright (C) 1996,1997,1998,1999,2000,2001, 2004 +- Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- Based on ../i386/pt-machine.h. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _PT_MACHINE_H +-#define _PT_MACHINE_H 1 +- +-#ifndef __ASSEMBLER__ +-#ifndef PT_EI +-# define PT_EI extern inline +-#endif +- +-/* Get some notion of the current stack. Need not be exactly the top +- of the stack, just something somewhere in the current frame. */ +-#define CURRENT_STACK_FRAME __builtin_frame_address (0) +- +-/* Spinlock implementation; required. */ +-PT_EI long int +-testandset (int *spinlock) +-{ +- long int ret = 1; +- +- /* This won't test&set the entire int, only the least significant +- byte. I hope this doesn't matter, since we can't do better. */ +- __asm__ __volatile__ ("bset %0, %1; bne 1f; clr %0; 1:" : +- "+d" (ret), "+m" (*(volatile int *)spinlock)); +- +- return ret; +-} +- +- +-PT_EI int +-get_eflags (void) +-{ +- int res; +- __asm__ __volatile__ ("mov psw,%0" : "=d" (res)); +- return res; +-} +- +- +-PT_EI void +-set_eflags (int newflags) +-{ +- __asm__ __volatile__ ("mov %0,psw" : : "d" (newflags) : "cc"); +-} +- +-#endif /* __ASSEMBLER__ */ +- +-#endif /* pt-machine.h */ +diff --git a/ports/sysdeps/am33/memusage.h b/ports/sysdeps/am33/memusage.h +deleted file mode 100644 +index 19d7a732ca41c078..0000000000000000 +--- a/ports/sysdeps/am33/memusage.h ++++ /dev/null +@@ -1,22 +0,0 @@ +-/* Copyright 2000, 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#define GETSP() ({ uintptr_t stack_ptr; \ +- asm ("mov sp,%0" : "=a" (stack_ptr)); \ +- stack_ptr; }) +- +-#include +diff --git a/ports/sysdeps/am33/preconfigure b/ports/sysdeps/am33/preconfigure +deleted file mode 100644 +index 9495465389764b09..0000000000000000 +--- a/ports/sysdeps/am33/preconfigure ++++ /dev/null +@@ -1,5 +0,0 @@ +-case "$machine" in +-am33*) +- base_machine=am33 machine=am33 +- ;; +-esac +diff --git a/ports/sysdeps/am33/setjmp.S b/ports/sysdeps/am33/setjmp.S +deleted file mode 100644 +index 54b239d65c3a4f3a..0000000000000000 +--- a/ports/sysdeps/am33/setjmp.S ++++ /dev/null +@@ -1,79 +0,0 @@ +-/* setjmp for am33. +- Copyright (C) 2001, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#define _ASM +-#define _SETJMP_H +-#include +-#include +- +- +-ENTRY (__sigsetjmp) +-.Lsigsetjmp: +- /* Save registers. */ +- mov d0,a0 +- mov d2,(0,a0) +- mov d3,(4,a0) +- mov mdr,d0 +- mov d0,(8,a0) +- /* Restore d0 for __sigjmp_save. */ +- mov a0,d0 +- mov a2,(12,a0) +- mov a3,(16,a0) +- mov sp,a1 +- mov a1,(20,a0) +- add 24,a0 +- mov r4,(a0+) +- mov r5,(a0+) +- mov r6,(a0+) +- mov r7,(a0+) +-#ifdef __AM33_2__ +- fmov fs4,(a0+) +- fmov fs5,(a0+) +- fmov fs6,(a0+) +- fmov fs7,(a0+) +- fmov fs8,(a0+) +- fmov fs9,(a0+) +- fmov fs10,(a0+) +- fmov fs11,(a0+) +- fmov fs12,(a0+) +- fmov fs13,(a0+) +- fmov fs14,(a0+) +- fmov fs15,(a0+) +- fmov fs16,(a0+) +- fmov fs17,(a0+) +- fmov fs18,(a0+) +- fmov fs19,(a0+) +-#endif +- /* Make a tail call to __sigjmp_save; it takes the same args. */ +- jmp __sigjmp_save +-END (__sigsetjmp) +- +-/* BSD `_setjmp' entry point to `sigsetjmp (..., 1)'. */ +-ENTRY (setjmp) +- /* Tail-call setsetjmp with savesigs==1. */ +- mov 1,d1 +- bra .Lsigsetjmp +-END (setjmp) +- +-/* BSD `_setjmp' entry point to `sigsetjmp (..., 0)'. */ +-ENTRY (_setjmp) +- /* Tail-call setsetjmp with savesigs==0. */ +- clr d1 +- bra .Lsigsetjmp +-END (_setjmp) +diff --git a/ports/sysdeps/am33/shlib-versions b/ports/sysdeps/am33/shlib-versions +deleted file mode 100644 +index ad6ded9dc4d755eb..0000000000000000 +--- a/ports/sysdeps/am33/shlib-versions ++++ /dev/null +@@ -1 +0,0 @@ +-am33.*-.*-linux.* DEFAULT GLIBC_2.2.5 +diff --git a/ports/sysdeps/am33/stackinfo.h b/ports/sysdeps/am33/stackinfo.h +deleted file mode 100644 +index c7a7977773458663..0000000000000000 +--- a/ports/sysdeps/am33/stackinfo.h ++++ /dev/null +@@ -1,27 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-/* This file contains a bit of information about the stack allocation +- of the processor. */ +- +-#ifndef _STACKINFO_H +-#define _STACKINFO_H 1 +- +-/* On am33 the stack grows down. */ +-#define _STACK_GROWS_DOWN 1 +- +-#endif /* stackinfo.h */ +diff --git a/ports/sysdeps/am33/sys/ucontext.h b/ports/sysdeps/am33/sys/ucontext.h +deleted file mode 100644 +index 1615b6368c9530c0..0000000000000000 +--- a/ports/sysdeps/am33/sys/ucontext.h ++++ /dev/null +@@ -1,122 +0,0 @@ +-/* Copyright 1997, 1999, 2000, 2002 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-/* AM33/2.0 context switching support. */ +- +-#ifndef _SYS_UCONTEXT_H +-#define _SYS_UCONTEXT_H 1 +- +-#include +-#include +- +-/* Type for general register. */ +-typedef int greg_t; +- +-/* Number of general registers. */ +-#define NGREG 28 +- +-/* Container for all general registers. */ +-typedef greg_t gregset_t[NGREG]; +- +-/* Number of each register is the `gregset_t' array. */ +-enum +-{ +- REG_D0 = 0, +-#define REG_D0 REG_D0 +- REG_D1, +-#define REG_D1 REG_D1 +- REG_D2, +-#define REG_D2 REG_D2 +- REG_D3, +-#define REG_D3 REG_D3 +- REG_A0, +-#define REG_A0 REG_A0 +- REG_A1, +-#define REG_A1 REG_A1 +- REG_A2, +-#define REG_A2 REG_A2 +- REG_A3, +-#define REG_A3 REG_A3 +- REG_E0, +-#define REG_E0 REG_E0 +- REG_E1, +-#define REG_E1 REG_E1 +- REG_E2, +-#define REG_E2 REG_E2 +- REG_E3, +-#define REG_E3 REG_E3 +- REG_E4, +-#define REG_E4 REG_E4 +- REG_E5, +-#define REG_E5 REG_E5 +- REG_E6, +-#define REG_E6 REG_E6 +- REG_E7, +-#define REG_E7 REG_E7 +- REG_LAR, +-#define REG_LAR REG_LAR +- REG_LIR, +-#define REG_LIR REG_LIR +- REG_MDR, +-#define REG_MDR REG_MDR +- REG_MCVF, +-#define REG_MCVF REG_MCVF +- REG_MCRL, +-#define REG_MCRL REG_MCRL +- REG_MCRH, +-#define REG_MCRH REG_MCRH +- REG_MDRQ, +-#define REG_MDRQ REG_MDRQ +- REG_SP, +-#define REG_SP REG_SP +- REG_EPSW, +-#define REG_EPSW REG_EPSW +- REG_PC, +-#define REG_PC REG_PC +-}; +- +-typedef int freg_t; +- +-/* Structure to describe FPU registers. */ +-typedef struct { +- union { +- double fp_dregs[16]; +- float fp_fregs[32]; +- freg_t fp_regs[32]; +- } regs; +- freg_t fpcr; +-} fpregset_t; +- +-/* Context to describe whole processor state. */ +-typedef struct +- { +- gregset_t gregs; +- fpregset_t fpregs; +- } mcontext_t; +- +-/* Userlevel context. */ +-typedef struct ucontext +- { +- unsigned long int uc_flags; +- struct ucontext *uc_link; +- __sigset_t uc_sigmask; +- stack_t uc_stack; +- mcontext_t uc_mcontext; +- long int uc_filler[5]; +- } ucontext_t; +- +-#endif /* sys/ucontext.h */ +diff --git a/ports/sysdeps/am33/sysdep.h b/ports/sysdeps/am33/sysdep.h +deleted file mode 100644 +index 2ddb656957b5bc8f..0000000000000000 +--- a/ports/sysdeps/am33/sysdep.h ++++ /dev/null +@@ -1,81 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/sysdep.h. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +- +-#ifdef __ASSEMBLER__ +- +-/* Syntactic details of assembler. */ +- +-#ifdef HAVE_ELF +-/* For ELF we need the `.type' directive to make shared libs work right. */ +-#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; +-#define ASM_SIZE_DIRECTIVE(name) .size name,.-name; +- +-/* In ELF C symbols are asm symbols. */ +-#undef NO_UNDERSCORES +-#define NO_UNDERSCORES +-#else +-#define ASM_TYPE_DIRECTIVE(name,type) /* Nothing is specified. */ +-#define ASM_SIZE_DIRECTIVE(name) /* Nothing is specified. */ +-#endif +- +-/* Define an entry point visible from C. */ +-#define ENTRY(name) \ +- ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \ +- ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ +- C_LABEL(name) \ +- CALL_MCOUNT +- +-#undef END +-#define END(name) \ +- ASM_SIZE_DIRECTIVE(name) \ +- +-/* If compiled for profiling, call `mcount' at the start of each function. */ +-#ifdef PROF +-/* The mcount code relies on a normal frame pointer being on the stack +- to locate our caller, so push one just for its benefit. */ +-#define CALL_MCOUNT \ +- movm [a3],(sp); mov sp,a3; add -12,sp; \ +- call JUMPTARGET(mcount),[],0; add 12,sp; movm (sp),[a3]; +-#else +-#define CALL_MCOUNT /* Do nothing. */ +-#endif +- +-#ifdef NO_UNDERSCORES +-/* Since C identifiers are not normally prefixed with an underscore +- on this system, the asm identifier `syscall_error' intrudes on the +- C name space. Make sure we use an innocuous name. */ +-#define syscall_error __syscall_error +-#define mcount _mcount +-#endif +- +-#undef JUMPTARGET +-#ifdef PIC +-#define JUMPTARGET(name) name##@PLT +-#else +-#define JUMPTARGET(name) name +-#endif +- +-/* Local label name for asm code. */ +-#ifndef L +-#define L(name) name +-#endif +- +-#endif /* __ASSEMBLER__ */ +diff --git a/ports/sysdeps/am33/tininess.h b/ports/sysdeps/am33/tininess.h +deleted file mode 100644 +index 1db37790f881a73f..0000000000000000 +--- a/ports/sysdeps/am33/tininess.h ++++ /dev/null +@@ -1 +0,0 @@ +-#define TININESS_AFTER_ROUNDING 1 +diff --git a/ports/sysdeps/unix/am33/sysdep.S b/ports/sysdeps/unix/am33/sysdep.S +deleted file mode 100644 +index 26740c2404d6f00d..0000000000000000 +--- a/ports/sysdeps/unix/am33/sysdep.S ++++ /dev/null +@@ -1,63 +0,0 @@ +-/* Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001 +- Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/sysdep.S. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#define _ERRNO_H +-#include +- +-.globl C_SYMBOL_NAME(errno) +-.globl syscall_error +- +-#undef syscall_error +-#ifdef NO_UNDERSCORES +-__syscall_error: +-#else +-syscall_error: +-#endif +-#if defined (EWOULDBLOCK_sys) && EWOULDBLOCK_sys != EAGAIN +- /* We translate the system's EWOULDBLOCK error into EAGAIN. +- The GNU C library always defines EWOULDBLOCK==EAGAIN. +- EWOULDBLOCK_sys is the original number. */ +- cmp EWOULDBLOCK_sys,d0 /* Is it the old EWOULDBLOCK? */ +- bne .Lnotb /* Branch if not. */ +- mov EAGAIN,d0 /* Yes; translate it to EAGAIN. */ +-.Lnotb: +-#endif +-#ifndef PIC +-# ifndef _LIBC_REENTRANT +- mov d0,(C_SYMBOL_NAME (errno)) +-# else +- movm [d2],(sp) +- add -12,sp +- mov d0,d2 +- call __errno_location,[],0 +- mov d2,(a0) +- add 12,sp +- movm (sp),[d2] +-# endif +-#else +-# error "This shouldn't be assembled for PIC" +-#endif +- mov -1,d0 +- mov d0,a0 +- ret +- +-#undef __syscall_error +-END (__syscall_error) +diff --git a/ports/sysdeps/unix/am33/sysdep.h b/ports/sysdeps/unix/am33/sysdep.h +deleted file mode 100644 +index dff1baebf4667ed6..0000000000000000 +--- a/ports/sysdeps/unix/am33/sysdep.h ++++ /dev/null +@@ -1,32 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/sysdep.h. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include "../../am33/sysdep.h" +- +-#ifdef __ASSEMBLER__ +- +-#define r0 d0 /* Normal return-value register. */ +-#define r1 !!!! /* Secondary return-value register. */ +-#define scratch d1 /* Call-clobbered register for random use. */ +-#define MOVE(x,y) mov x, y +- +-#define ret ret [],0 +- +-#endif /* __ASSEMBLER__ */ +diff --git a/ports/sysdeps/unix/sysv/linux/am33/Makefile b/ports/sysdeps/unix/sysv/linux/am33/Makefile +deleted file mode 100644 +index ece39e8a4cee3f3e..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/Makefile ++++ /dev/null +@@ -1,3 +0,0 @@ +-ifeq ($(subdir),misc) +-sysdep_routines += setfsgid setfsuid +-endif +diff --git a/ports/sysdeps/unix/sysv/linux/am33/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/am33/bits/fcntl.h +deleted file mode 100644 +index 33b8bcd37e149f3c..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/bits/fcntl.h ++++ /dev/null +@@ -1,180 +0,0 @@ +-/* O_*, F_*, FD_* bit values for Linux. +- Copyright (C) 1995, 1996, 1997, 1998, 2000, Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _FCNTL_H +-# error "Never use directly; include instead." +-#endif +- +- +-#include +- +-/* open/fcntl - O_SYNC is only implemented on blocks devices and on files +- located on an ext2 file system */ +-#define O_ACCMODE 0003 +-#define O_RDONLY 00 +-#define O_WRONLY 01 +-#define O_RDWR 02 +-#define O_CREAT 0100 /* not fcntl */ +-#define O_EXCL 0200 /* not fcntl */ +-#define O_NOCTTY 0400 /* not fcntl */ +-#define O_TRUNC 01000 /* not fcntl */ +-#define O_APPEND 02000 +-#define O_NONBLOCK 04000 +-#define O_NDELAY O_NONBLOCK +-#define O_SYNC 010000 +-#define O_FSYNC O_SYNC +-#define O_ASYNC 020000 +- +-#ifdef __USE_GNU +-# define O_DIRECT 040000 /* Direct disk access. */ +-# define O_DIRECTORY 0200000 /* Must be a directory. */ +-# define O_NOFOLLOW 0400000 /* Do not follow links. */ +-#endif +- +-/* For now Linux has synchronisity options for data and read operations. +- We define the symbols here but let them do the same as O_SYNC since +- this is a superset. */ +-#if defined __USE_POSIX199309 || defined __USE_UNIX98 +-# define O_DSYNC O_SYNC /* Synchronize data. */ +-# define O_RSYNC O_SYNC /* Synchronize read operations. */ +-#endif +- +-#ifdef __USE_LARGEFILE64 +-# define O_LARGEFILE 0100000 +-#endif +- +-/* Values for the second argument to `fcntl'. */ +-#define F_DUPFD 0 /* Duplicate file descriptor. */ +-#define F_GETFD 1 /* Get file descriptor flags. */ +-#define F_SETFD 2 /* Set file descriptor flags. */ +-#define F_GETFL 3 /* Get file status flags. */ +-#define F_SETFL 4 /* Set file status flags. */ +-#ifndef __USE_FILE_OFFSET64 +-# define F_GETLK 5 /* Get record locking info. */ +-# define F_SETLK 6 /* Set record locking info (non-blocking). */ +-# define F_SETLKW 7 /* Set record locking info (blocking). */ +-#else +-# define F_GETLK F_GETLK64 /* Get record locking info. */ +-# define F_SETLK F_SETLK64 /* Set record locking info (non-blocking).*/ +-# define F_SETLKW F_SETLKW64 /* Set record locking info (blocking). */ +-#endif +-#define F_GETLK64 12 /* Get record locking info. */ +-#define F_SETLK64 13 /* Set record locking info (non-blocking). */ +-#define F_SETLKW64 14 /* Set record locking info (blocking). */ +- +-#if defined __USE_BSD || defined __USE_XOPEN2K +-# define F_SETOWN 8 /* Get owner of socket (receiver of SIGIO). */ +-# define F_GETOWN 9 /* Set owner of socket (receiver of SIGIO). */ +-#endif +- +-#ifdef __USE_GNU +-# define F_SETSIG 10 /* Set number of signal to be sent. */ +-# define F_GETSIG 11 /* Get number of signal to be sent. */ +-#endif +- +-#ifdef __USE_GNU +-# define F_SETLEASE 1024 /* Set a lease. */ +-# define F_GETLEASE 1025 /* Enquire what lease is active. */ +-# define F_NOTIFY 1026 /* Request notfications on a directory. */ +-# define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with +- close-on-exit set. */ +-#endif +- +-/* For F_[GET|SET]FD. */ +-#define FD_CLOEXEC 1 /* actually anything with low bit set goes */ +- +-/* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */ +-#define F_RDLCK 0 /* Read lock. */ +-#define F_WRLCK 1 /* Write lock. */ +-#define F_UNLCK 2 /* Remove lock. */ +- +-/* For old implementation of bsd flock(). */ +-#define F_EXLCK 4 /* or 3 */ +-#define F_SHLCK 8 /* or 4 */ +- +-#ifdef __USE_BSD +-/* Operations for bsd flock(), also used by the kernel implementation. */ +-# define LOCK_SH 1 /* shared lock */ +-# define LOCK_EX 2 /* exclusive lock */ +-# define LOCK_NB 4 /* or'd with one of the above to prevent +- blocking */ +-# define LOCK_UN 8 /* remove lock */ +-#endif +- +-#ifdef __USE_GNU +-# define LOCK_MAND 32 /* This is a mandatory flock: */ +-# define LOCK_READ 64 /* ... which allows concurrent read operations. */ +-# define LOCK_WRITE 128 /* ... which allows concurrent write operations. */ +-# define LOCK_RW 192 /* ... Which allows concurrent read & write operations. */ +-#endif +- +-#ifdef __USE_GNU +-/* Types of directory notifications that may be requested with F_NOTIFY. */ +-# define DN_ACCESS 0x00000001 /* File accessed. */ +-# define DN_MODIFY 0x00000002 /* File modified. */ +-# define DN_CREATE 0x00000004 /* File created. */ +-# define DN_DELETE 0x00000008 /* File removed. */ +-# define DN_RENAME 0x00000010 /* File renamed. */ +-# define DN_ATTRIB 0x00000020 /* File changed attibutes. */ +-# define DN_MULTISHOT 0x80000000 /* Don't remove notifier. */ +-#endif +- +-struct flock +- { +- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ +- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ +-#ifndef __USE_FILE_OFFSET64 +- __off_t l_start; /* Offset where the lock begins. */ +- __off_t l_len; /* Size of the locked area; zero means until EOF. */ +-#else +- __off64_t l_start; /* Offset where the lock begins. */ +- __off64_t l_len; /* Size of the locked area; zero means until EOF. */ +-#endif +- __pid_t l_pid; /* Process holding the lock. */ +- }; +- +-#ifdef __USE_LARGEFILE64 +-struct flock64 +- { +- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ +- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ +- __off64_t l_start; /* Offset where the lock begins. */ +- __off64_t l_len; /* Size of the locked area; zero means until EOF. */ +- __pid_t l_pid; /* Process holding the lock. */ +- }; +-#endif +- +-/* Define some more compatibility macros to be backward compatible with +- BSD systems which did not managed to hide these kernel macros. */ +-#ifdef __USE_BSD +-# define FAPPEND O_APPEND +-# define FFSYNC O_FSYNC +-# define FASYNC O_ASYNC +-# define FNONBLOCK O_NONBLOCK +-# define FNDELAY O_NDELAY +-#endif /* Use BSD. */ +- +-/* Advise to `posix_fadvise'. */ +-#ifdef __USE_XOPEN2K +-# define POSIX_FADV_NORMAL 0 /* No further special treatment. */ +-# define POSIX_FADV_RANDOM 1 /* Expect random page references. */ +-# define POSIX_FADV_SEQUENTIAL 2 /* Expect sequential page references. */ +-# define POSIX_FADV_WILLNEED 3 /* Will need these pages. */ +-# define POSIX_FADV_DONTNEED 4 /* Don't need these pages. */ +-# define POSIX_FADV_NOREUSE 5 /* Data will be accessed once. */ +-#endif +diff --git a/ports/sysdeps/unix/sysv/linux/am33/bits/mman.h b/ports/sysdeps/unix/sysv/linux/am33/bits/mman.h +deleted file mode 100644 +index 763b060e667097c6..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/bits/mman.h ++++ /dev/null +@@ -1,96 +0,0 @@ +-/* Definitions for POSIX memory map interface. Linux/AM33 version. +- Copyright (C) 1997, 2000, 2001, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _SYS_MMAN_H +-# error "Never use directly; include instead." +-#endif +- +-/* The following definitions basically come from the kernel headers. +- But the kernel header is not namespace clean. */ +- +- +-/* Protections are chosen from these bits, OR'd together. The +- implementation does not necessarily support PROT_EXEC or PROT_WRITE +- without PROT_READ. The only guarantees are that no writing will be +- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */ +- +-#define PROT_READ 0x1 /* Page can be read. */ +-#define PROT_WRITE 0x2 /* Page can be written. */ +-#define PROT_EXEC 0x4 /* Page can be executed. */ +-#define PROT_NONE 0x0 /* Page can not be accessed. */ +-#define PROT_GROWSDOWN 0x01000000 /* Extend change to start of +- growsdown vma (mprotect only). */ +-#define PROT_GROWSUP 0x02000000 /* Extend change to start of +- growsup vma (mprotect only). */ +- +-/* Sharing types (must choose one and only one of these). */ +-#define MAP_SHARED 0x01 /* Share changes. */ +-#define MAP_PRIVATE 0x02 /* Changes are private. */ +-#ifdef __USE_MISC +-# define MAP_TYPE 0x0f /* Mask for type of mapping. */ +-#endif +- +-/* Other flags. */ +-#define MAP_FIXED 0x10 /* Interpret addr exactly. */ +-#ifdef __USE_MISC +-# define MAP_FILE 0 +-# define MAP_ANONYMOUS 0x20 /* Don't use a file. */ +-# define MAP_ANON MAP_ANONYMOUS +-#endif +- +-/* These are Linux-specific. */ +-#ifdef __USE_MISC +-# define MAP_GROWSDOWN 0x0100 /* Stack-like segment. */ +-# define MAP_DENYWRITE 0x0800 /* ETXTBSY */ +-# define MAP_EXECUTABLE 0x1000 /* Mark it as an executable. */ +-# define MAP_LOCKED 0x2000 /* Lock the mapping. */ +-# define MAP_NORESERVE 0x4000 /* Don't check for reservations. */ +-#endif +- +-/* Flags to `msync'. */ +-#define MS_ASYNC 1 /* Sync memory asynchronously. */ +-#define MS_SYNC 4 /* Synchronous memory sync. */ +-#define MS_INVALIDATE 2 /* Invalidate the caches. */ +- +-/* Flags for `mlockall'. */ +-#define MCL_CURRENT 1 /* Lock all currently mapped pages. */ +-#define MCL_FUTURE 2 /* Lock all additions to address +- space. */ +- +-/* Flags for `mremap'. */ +-#ifdef __USE_GNU +-# define MREMAP_MAYMOVE 1 +-#endif +- +-/* Advice to `madvise'. */ +-#ifdef __USE_BSD +-# define MADV_NORMAL 0 /* No further special treatment. */ +-# define MADV_RANDOM 1 /* Expect random page references. */ +-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */ +-# define MADV_WILLNEED 3 /* Will need these pages. */ +-# define MADV_DONTNEED 4 /* Don't need these pages. */ +-#endif +- +-/* The POSIX people had to invent similar names for the same things. */ +-#ifdef __USE_XOPEN2K +-# define POSIX_MADV_NORMAL 0 /* No further special treatment. */ +-# define POSIX_MADV_RANDOM 1 /* Expect random page references. */ +-# define POSIX_MADV_SEQUENTIAL 2 /* Expect sequential page references. */ +-# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */ +-# define POSIX_MADV_DONTNEED 4 /* Don't need these pages. */ +-#endif +diff --git a/ports/sysdeps/unix/sysv/linux/am33/brk.c b/ports/sysdeps/unix/sysv/linux/am33/brk.c +deleted file mode 100644 +index dc7ec639b3a558c0..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/brk.c ++++ /dev/null +@@ -1,45 +0,0 @@ +-/* brk system call for Linux/am33. +- Copyright (C) 1995, 1996, 2000 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/brk.c. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +- +-/* This must be initialized data because commons can't have aliases. */ +-void *__curbrk = 0; +- +-int +-__brk (void *addr) +-{ +- void *newbrk; +- +- newbrk = INLINE_SYSCALL (brk, 1, addr); +- +- __curbrk = newbrk; +- +- if (newbrk < addr) +- { +- __set_errno (ENOMEM); +- return -1; +- } +- +- return 0; +-} +-weak_alias (__brk, brk) +diff --git a/ports/sysdeps/unix/sysv/linux/am33/chown.c b/ports/sysdeps/unix/sysv/linux/am33/chown.c +deleted file mode 100644 +index 819923eb4971ad16..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/chown.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/clone.S b/ports/sysdeps/unix/sysv/linux/am33/clone.S +deleted file mode 100644 +index e014c4ace94b71b6..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/clone.S ++++ /dev/null +@@ -1,80 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/clone.S. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-/* clone() is even more special than fork() as it mucks with stacks +- and invokes a function in the right context after its all over. */ +- +-#include +-#define _ERRNO_H 1 +-#include +-#include +-#include +- +-/* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */ +- +- .text +-ENTRY (BP_SYM (__clone)) +- /* Sanity check arguments. */ +- cmp 0,d0 /* no NULL function pointers */ +- beq L(error_inval) +- cmp 0,d1 /* no NULL stack pointers */ +- beq L(error_inval) +- +- /* Allocate room for a function call in the new stack, and +- store fn and arg in it. They will be read back in +- thread_start. */ +- mov d1,a0 +- sub 12,a0 +- mov d0,(a0) +- mov (16,sp),d1 +- mov d1,(4,a0) +- +- /* Do the system call */ +- mov a0,d1 +- mov (12,sp),a0 +- mov SYS_ify(clone),d0 +- syscall 0 +- +- cmp 0,d0 +- beq thread_start +- blt L(to_SYSCALL_ERROR_LABEL) +- +-L(pseudo_end): +- ret +- +-L(error_inval): +- mov -EINVAL,d0 +-L(to_SYSCALL_ERROR_LABEL): +- jmp SYSCALL_ERROR_LABEL +- +-thread_start: +- mov 0,a3 /* terminate the stack frame */ +- mov (4,sp),d0 +- mov (sp),a0 +- calls (a0) +-#ifdef PIC +-L(here): +- mov pc,a2 +- add _GLOBAL_OFFSET_TABLE_-(L(here) - .),a2 +-#endif +- call JUMPTARGET (_exit),[],0 +- +-PSEUDO_END (BP_SYM (__clone)) +- +-weak_alias (BP_SYM (__clone), BP_SYM (clone)) +diff --git a/ports/sysdeps/unix/sysv/linux/am33/configure b/ports/sysdeps/unix/sysv/linux/am33/configure +deleted file mode 100644 +index 870c6a79299f161e..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/configure ++++ /dev/null +@@ -1,4 +0,0 @@ +-# This file is generated from configure.in by Autoconf. DO NOT EDIT! +- # Local configure fragment for am33/sysdeps/unix/sysv/linux/am33 +- +-arch_minimum_kernel=2.6.25 +diff --git a/ports/sysdeps/unix/sysv/linux/am33/configure.in b/ports/sysdeps/unix/sysv/linux/am33/configure.in +deleted file mode 100644 +index 43e33f74ca823331..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/configure.in ++++ /dev/null +@@ -1,4 +0,0 @@ +-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +-# Local configure fragment for am33/sysdeps/unix/sysv/linux/am33 +- +-arch_minimum_kernel=2.6.25 +diff --git a/ports/sysdeps/unix/sysv/linux/am33/fchown.c b/ports/sysdeps/unix/sysv/linux/am33/fchown.c +deleted file mode 100644 +index 3a69ecc9e7dec0d4..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/fchown.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/fcntl.c b/ports/sysdeps/unix/sysv/linux/am33/fcntl.c +deleted file mode 100644 +index ea951bc4f931fad3..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/fcntl.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/fxstat.c b/ports/sysdeps/unix/sysv/linux/am33/fxstat.c +deleted file mode 100644 +index 4f219f0b9dfa95de..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/fxstat.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getegid.c b/ports/sysdeps/unix/sysv/linux/am33/getegid.c +deleted file mode 100644 +index 37b4b4a530503613..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getegid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/geteuid.c b/ports/sysdeps/unix/sysv/linux/am33/geteuid.c +deleted file mode 100644 +index ebcb555b5e321b50..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/geteuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getgid.c b/ports/sysdeps/unix/sysv/linux/am33/getgid.c +deleted file mode 100644 +index 0a4d6061f08b9a02..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getgid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getgroups.c b/ports/sysdeps/unix/sysv/linux/am33/getgroups.c +deleted file mode 100644 +index 20a7166103ad24e4..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getgroups.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getmsg.c b/ports/sysdeps/unix/sysv/linux/am33/getmsg.c +deleted file mode 100644 +index 3a1fa0852504b0ce..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getmsg.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getresgid.c b/ports/sysdeps/unix/sysv/linux/am33/getresgid.c +deleted file mode 100644 +index b703a414cc2a2b07..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getresgid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getresuid.c b/ports/sysdeps/unix/sysv/linux/am33/getresuid.c +deleted file mode 100644 +index 0b14cefe34668cd6..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getresuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/getuid.c b/ports/sysdeps/unix/sysv/linux/am33/getuid.c +deleted file mode 100644 +index d682c79a49289efb..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/getuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/lchown.c b/ports/sysdeps/unix/sysv/linux/am33/lchown.c +deleted file mode 100644 +index c89de99ba235bf45..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/lchown.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h b/ports/sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h +deleted file mode 100644 +index 101cab0b17170d07..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h ++++ /dev/null +@@ -1,158 +0,0 @@ +-/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +-#include +-#ifndef __ASSEMBLER__ +-# include +-#endif +- +-#if IS_IN (libc) || IS_IN (libpthread) || IS_IN (librt) +- +-# undef PSEUDO +-# define PSEUDO(name, syscall_name, args) \ +- .text ; \ +- ENTRY (name) \ +- PUSHARGS_##args \ +- DOARGS_##args \ +- SINGLE_THREAD_P; \ +- bne L(pseudo_cancel); \ +- mov SYS_ify (syscall_name),d0; \ +- syscall 0 \ +- POPARGS_##args ; \ +- cmp -126,d0; \ +- bls L(pseudo_end); \ +- jmp SYSCALL_ERROR_LABEL; \ +- L(pseudo_cancel): \ +- add -(16+STACK_SPACE (args)),sp; \ +- SAVE_ARGS_##args \ +- CENABLE \ +- mov d0,r0; \ +- LOAD_ARGS_##args \ +- mov SYS_ify (syscall_name),d0; \ +- syscall 0; \ +- mov d0,(12,sp); \ +- mov r0,d0; \ +- CDISABLE \ +- mov (12,sp),d0; \ +- add +16+STACK_SPACE (args),sp \ +- POPARGS_##args ; \ +- cmp -126,d0; \ +- bls L(pseudo_end); \ +- jmp SYSCALL_ERROR_LABEL; \ +- L(pseudo_end): \ +- mov d0,a0 +- +-/* Reserve up to 2 stack slots for a0 and d1, but fewer than that if +- we don't have that many arguments. */ +-# define STACK_SPACE(n) (((((n) < 3) * (2 - (n))) + 2) * 4) +- +-# define SAVE_ARGS_0 +-# define SAVE_ARGS_1 mov a0,(20,sp) ; +-# define SAVE_ARGS_2 SAVE_ARGS_1 mov d1,(24,sp) ; +-# define SAVE_ARGS_3 SAVE_ARGS_2 +-# define SAVE_ARGS_4 SAVE_ARGS_3 +-# define SAVE_ARGS_5 SAVE_ARGS_4 +-# define SAVE_ARGS_6 SAVE_ARGS_5 +- +-# define LOAD_ARGS_0 +-# define LOAD_ARGS_1 mov (20,sp),a0 ; +-# define LOAD_ARGS_2 LOAD_ARGS_1 mov (24,sp),d1 ; +-# define LOAD_ARGS_3 LOAD_ARGS_2 +-# define LOAD_ARGS_4 LOAD_ARGS_3 +-# define LOAD_ARGS_5 LOAD_ARGS_4 +-# define LOAD_ARGS_6 LOAD_ARGS_5 +- +-# if IS_IN (libpthread) +-# define CENABLE call __pthread_enable_asynccancel,[],0; +-# define CDISABLE call __pthread_disable_asynccancel,[],0; +-# elif IS_IN (librt) +-# ifdef PIC +-# define CENABLE movm [a2],(sp); \ +- 1: mov pc,a2; \ +- add _GLOBAL_OFFSET_TABLE_-(1b-.),a2; \ +- call +__librt_enable_asynccancel@PLT,[],0; \ +- movm (sp),[a2]; +-# define CENABLE movm [a2],(sp); \ +- 1: mov pc,a2; \ +- add _GLOBAL_OFFSET_TABLE_-(1b-.),a2; \ +- call +__librt_disable_asynccancel@PLT,[],0; \ +- movm (sp),[a2]; +-# else +-# define CENABLE call +__librt_enable_asynccancel,[],0; +-# define CDISABLE call +__librt_disable_asynccancel,[],0; +-# endif +-# else +-# define CENABLE call +__libc_enable_asynccancel,[],0; +-# define CDISABLE call +__libc_disable_asynccancel,[],0; +-# endif +- +-#if IS_IN (libc) +-# define __local_multiple_threads __libc_multiple_threads +-#elif IS_IN (libpthread) +-# define __local_multiple_threads __pthread_multiple_threads +-#else +-# define __local_multiple_threads __librt_multiple_threads +-#endif +- +-# ifndef __ASSEMBLER__ +-# if defined FLOATING_STACKS && USE___THREAD && defined PIC +-# define SINGLE_THREAD_P \ +- __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ +- p_header.data.multiple_threads) == 0, 1) +-# else +-extern int __local_multiple_threads +-# if IS_IN (libc) || IS_IN (libpthread) +- attribute_hidden; +-# else +- ; +-# endif +-# define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1) +-# endif +-# else +-# if !defined PIC +-# define SINGLE_THREAD_P \ +- mov (+__local_multiple_threads),d0; \ +- cmp 0,d0 +-# elif IS_IN (libc) || IS_IN (libpthread) +-# define SINGLE_THREAD_P \ +- movm [a2],(sp); \ +- 1: mov pc,a2; \ +- add _GLOBAL_OFFSET_TABLE_-(1b-.),a2; \ +- mov (+__local_multiple_threads@GOTOFF,a2),d0; \ +- movm (sp),[a2]; \ +- cmp 0,d0 +-# else +-# define SINGLE_THREAD_P \ +- movm [a2],(sp); \ +- 1: mov pc,a2; \ +- add _GLOBAL_OFFSET_TABLE_-(1b-.),a2; \ +- mov (+__local_multiple_threads@GOT,a2),a2; \ +- mov (a2),d0; \ +- movm (sp),[a2]; \ +- cmp 0,d0 +-# endif +-# endif +- +-#elif !defined __ASSEMBLER__ +- +-/* This code should never be used but we define it anyhow. */ +-# define SINGLE_THREAD_P (1) +- +-#endif +diff --git a/ports/sysdeps/unix/sysv/linux/am33/lockf64.c b/ports/sysdeps/unix/sysv/linux/am33/lockf64.c +deleted file mode 100644 +index a88f5a784a544f0a..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/lockf64.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/lxstat.c b/ports/sysdeps/unix/sysv/linux/am33/lxstat.c +deleted file mode 100644 +index 0efa0aea491950a6..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/lxstat.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/profil-counter.h b/ports/sysdeps/unix/sysv/linux/am33/profil-counter.h +deleted file mode 100644 +index f4b7eaae76da4cf5..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/profil-counter.h ++++ /dev/null +@@ -1,26 +0,0 @@ +-/* Low-level statistical profiling support function. Linux/am33 version. +- Copyright (C) 1996, 1997, 1998, 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +- +-static void +-profil_counter (int signo, SIGCONTEXT scp) +-{ +- profil_count ((void *) GET_PC (scp)); +-} +diff --git a/ports/sysdeps/unix/sysv/linux/am33/putmsg.c b/ports/sysdeps/unix/sysv/linux/am33/putmsg.c +deleted file mode 100644 +index ebc1680ca7d1f2b5..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/putmsg.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setegid.c b/ports/sysdeps/unix/sysv/linux/am33/setegid.c +deleted file mode 100644 +index 2e3a54c893448c3d..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setegid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/seteuid.c b/ports/sysdeps/unix/sysv/linux/am33/seteuid.c +deleted file mode 100644 +index 18e41d08c1b7821f..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/seteuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setfsgid.c b/ports/sysdeps/unix/sysv/linux/am33/setfsgid.c +deleted file mode 100644 +index 0886712569e3e055..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setfsgid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setfsuid.c b/ports/sysdeps/unix/sysv/linux/am33/setfsuid.c +deleted file mode 100644 +index a9f22eb8ab823deb..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setfsuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setgid.c b/ports/sysdeps/unix/sysv/linux/am33/setgid.c +deleted file mode 100644 +index 377021d9ec8f9cea..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setgid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setgroups.c b/ports/sysdeps/unix/sysv/linux/am33/setgroups.c +deleted file mode 100644 +index cb9a7708e38ebc68..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setgroups.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setregid.c b/ports/sysdeps/unix/sysv/linux/am33/setregid.c +deleted file mode 100644 +index 99c57ad20f1ddb0c..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setregid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setresgid.c b/ports/sysdeps/unix/sysv/linux/am33/setresgid.c +deleted file mode 100644 +index daca1a48332e49d6..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setresgid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setresuid.c b/ports/sysdeps/unix/sysv/linux/am33/setresuid.c +deleted file mode 100644 +index 3aeabe9ad708c454..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setresuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setreuid.c b/ports/sysdeps/unix/sysv/linux/am33/setreuid.c +deleted file mode 100644 +index 8ad61226e979db47..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setreuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setrlimit.c b/ports/sysdeps/unix/sysv/linux/am33/setrlimit.c +deleted file mode 100644 +index bfaef74c387f91c0..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setrlimit.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/setuid.c b/ports/sysdeps/unix/sysv/linux/am33/setuid.c +deleted file mode 100644 +index de394379be6f9f90..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/setuid.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +diff --git a/ports/sysdeps/unix/sysv/linux/am33/socket.S b/ports/sysdeps/unix/sysv/linux/am33/socket.S +deleted file mode 100644 +index b4d3caab8a6506d8..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/socket.S ++++ /dev/null +@@ -1,72 +0,0 @@ +-/* Copyright 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/socket.S. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +-#include +- +-#define P(a, b) P2(a, b) +-#define P2(a, b) a##b +- +- .text +-/* The socket-oriented system calls are handled unusally in Linux. +- They are all gated through the single `socketcall' system call number. +- `socketcall' takes two arguments: the first is the subcode, specifying +- which socket function is being called; and the second is a pointer to +- the arguments to the specific function. +- +- The .S files for the other calls just #define socket and #include this. */ +- +-#ifndef __socket +-#ifndef NO_WEAK_ALIAS +-#define __socket P(__,socket) +-#else +-#define __socket socket +-#endif +-#endif +- +-.globl __socket +-ENTRY (__socket) +- +- mov d0,(4,sp) +- mov d1,(8,sp) +- +- mov SYS_ify(socketcall),d0 /* System call number in d0. */ +- +- /* Use ## so `socket' is a separate token that might be #define'd. */ +- mov P(SOCKOP_,socket),a0 /* Subcode is first arg to syscall. */ +- mov sp,d1 +- add 4,d1 /* Address of args is 2nd arg. */ +- +- /* Do the system call trap. */ +- syscall 0 +- +- /* d0 is < 0 if there was an error. */ +- cmp -126,d0 +- bls L(pseudo_end) +- jmp SYSCALL_ERROR_LABEL +- +- /* Successful; return the syscall's value. */ +-L(pseudo_end): +- ret +- +-PSEUDO_END (__socket) +- +-#ifndef NO_WEAK_ALIAS +-weak_alias (__socket, socket) +-#endif +diff --git a/ports/sysdeps/unix/sysv/linux/am33/syscall.S b/ports/sysdeps/unix/sysv/linux/am33/syscall.S +deleted file mode 100644 +index 63fa6ddcd4f670ae..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/syscall.S ++++ /dev/null +@@ -1,42 +0,0 @@ +-/* Copyright (C) 1995, 1996, 1998, 2001 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/syscall.S. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +- +-/* Please consult the file sysdeps/unix/sysv/linux/am33/sysdep.h for +- more information about the value -126 used below.*/ +- +- .text +-ENTRY (syscall) +- movm [d2,d3,a2,a3],(sp) /* Save register contents. */ +- mov d1,a0 +- mov (28,sp),d1 +- mov (32,sp),a3 +- mov (36,sp),a2 +- mov (40,sp),d3 +- mov (44,sp),d2 +- syscall 0 /* Do the system call. */ +- movm (sp),[d2,d3,a2,a3] /* Restore register contents. */ +- cmp -126,d0 /* Check for error. */ +- bls L(pseudo_end) +- jmp SYSCALL_ERROR_LABEL /* Jump to error handler if error. */ +-L(pseudo_end): +- ret /* Return to caller. */ +- +-PSEUDO_END (syscall) +diff --git a/ports/sysdeps/unix/sysv/linux/am33/sysdep.S b/ports/sysdeps/unix/sysv/linux/am33/sysdep.S +deleted file mode 100644 +index 877fd1e0823af3dd..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/sysdep.S ++++ /dev/null +@@ -1,41 +0,0 @@ +-/* Copyright (C) 1995, 1996, 1997, 1998, 2001, 2004 +- Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/sysdep.S. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#include +- +-/* The following code is only used in the shared library when we +- compile the reentrant version. Otherwise each system call defines +- each own version. */ +- +-#ifndef PIC +- +-#undef CALL_MCOUNT +-#define CALL_MCOUNT /* Don't insert the profiling call, it clobbers %eax. */ +- +- .text +-ENTRY (__syscall_error) +- mov d0,d1 +- clr d0 +- sub d1,d0 +- +-#define __syscall_error __syscall_error_1 +-#include <../../../am33/sysdep.S> +- +-#endif /* !PIC */ +diff --git a/ports/sysdeps/unix/sysv/linux/am33/sysdep.h b/ports/sysdeps/unix/sysv/linux/am33/sysdep.h +deleted file mode 100644 +index 68f93f8003e2dc07..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/sysdep.h ++++ /dev/null +@@ -1,316 +0,0 @@ +-/* Copyright 2001, 2004 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- Contributed by Alexandre Oliva . +- Based on ../i386/sysdep.h. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Library General Public License as +- published by the Free Software Foundation; either version 2 of the +- License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Library General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library. If not, see +- . */ +- +-#ifndef _LINUX_AM33_SYSDEP_H +-#define _LINUX_AM33_SYSDEP_H 1 +- +-/* There is some commonality. */ +-#include "../../../am33/sysdep.h" +- +-/* For Linux we can use the system call table in the header file +- /usr/include/asm/unistd.h +- of the kernel. But these symbols do not follow the SYS_* syntax +- so we have to redefine the `SYS_ify' macro here. */ +-#undef SYS_ify +-#define SYS_ify(syscall_name) __NR_##syscall_name +- +-/* ELF-like local names start with `.L'. */ +-#undef L +-#define L(name) .L##name +- +-#ifdef __ASSEMBLER__ +- +-/* Linux uses a negative return value to indicate syscall errors, +- unlike most Unices, which use the condition codes' carry flag. +- +- Since version 2.1 the return value of a system call might be +- negative even if the call succeeded. E.g., the `lseek' system call +- might return a large offset. Therefore we must not anymore test +- for < 0, but test for a real error by making sure the value in %eax +- is a real error number. Linus said he will make sure the no syscall +- returns a value in -1 .. -4095 as a valid result so we can savely +- test with -4095. */ +- +-/* We don't want the label for the error handle to be global when we define +- it here. */ +-#ifdef PIC +-# define SYSCALL_ERROR_LABEL 0f +-#else +-# define SYSCALL_ERROR_LABEL syscall_error +-#endif +- +-#undef PSEUDO +-#define PSEUDO(name, syscall_name, args) \ +- .text; \ +- ENTRY (name) \ +- DO_CALL (syscall_name, args); \ +- cmp -126,d0; \ +- bls L(pseudo_end); \ +- jmp SYSCALL_ERROR_LABEL; \ +- L(pseudo_end): \ +- mov d0,a0; +- +-#undef PSEUDO_END +-#define PSEUDO_END(name) \ +- SYSCALL_ERROR_HANDLER \ +- END (name) +- +-#undef PSEUDO_NOERROR +-#define PSEUDO_NOERRNO(name, syscall_name, args) \ +- .text; \ +- ENTRY (name) \ +- DO_CALL (syscall_name, args) +- +-#undef PSEUDO_END_NOERRNO +-#define PSEUDO_END_NOERRNO(name) \ +- END (name) +- +-#define ret_NOERRNO ret +- +-/* The function has to return the error code. */ +-#undef PSEUDO_ERRVAL +-#define PSEUDO_ERRVAL(name, syscall_name, args) \ +- .text; \ +- ENTRY (name) \ +- DO_CALL (syscall_name, args); \ +- clr d1; \ +- sub d0,d1,d0 +- +-#undef PSEUDO_END_ERRVAL +-#define PSEUDO_END_ERRVAL(name) \ +- END (name) +- +-#define ret_ERRVAL ret +- +-#ifndef PIC +-#define SYSCALL_ERROR_HANDLER /* Nothing here; code in sysdep.S is used. */ +-#else +-/* Store (- d0) into errno through the GOT. */ +-#ifdef _LIBC_REENTRANT +-#define SYSCALL_ERROR_HANDLER \ +-0:movm [d2,a2],(sp); \ +- add -12,sp; \ +-1:mov pc,a2; \ +- add _GLOBAL_OFFSET_TABLE_-(1b-.),a2; \ +- clr d2; \ +- sub d0,d2; \ +- call __errno_location@PLT,[],0; \ +- mov d2,(a0); \ +- add 12,sp; \ +- movm (sp),[d2,a2]; \ +- mov -1,d0; \ +- mov d0,a0; \ +- jmp L(pseudo_end); +-/* A quick note: it is assumed that the call to `__errno_location' does +- not modify the stack! */ +-#else +-#define SYSCALL_ERROR_HANDLER \ +-0:mov pc,a0; \ +- add _GLOBAL_OFFSET_TABLE_-(0b-.),a0; \ +- clr d1; \ +- sub d0,d1; \ +- mov (errno@GOT,a0),a1; \ +- mov d1,(a0); \ +- mov -1,d0; \ +- mov d0,a0; \ +- jmp L(pseudo_end); +-#endif /* _LIBC_REENTRANT */ +-#endif /* PIC */ +- +-/* Linux takes system call arguments in registers: +- +- syscall number d0 call-clobbered +- arg 1 a0 call-clobbered +- arg 2 d1 call-clobbered +- arg 3 a3 call-saved +- arg 4 a2 call-saved +- arg 5 d3 call-saved +- arg 6 d2 call-saved +- +- The stack layout upon entering the function is: +- +- (24,sp) Arg# 6 +- (20,sp) Arg# 5 +- (16,sp) Arg# 4 +- (12,sp) Arg# 3 +- d1 Arg# 2 +- d0 Arg# 1 +- (sp) Return address +- +- (Of course a function with say 3 arguments does not have entries for +- arguments 4, 5 and 6.) */ +- +-#undef DO_CALL +-#define DO_CALL(syscall_name, args) \ +- PUSHARGS_##args \ +- DOARGS_##args \ +- mov SYS_ify (syscall_name),d0; \ +- syscall 0 \ +- POPARGS_##args +- +-#define PUSHARGS_0 /* No arguments to push. */ +-#define _DOARGS_0(N) /* No arguments to frob. */ +-#define DOARGS_0 /* No arguments to frob. */ +-#define POPARGS_0 /* No arguments to pop. */ +- +-#define PUSHARGS_1 /* No arguments to push. */ +-#define _DOARGS_1(N) _DOARGS_0 (N-4) mov d0,a0; +-#define DOARGS_1 _DOARGS_1 (4) +-#define POPARGS_1 /* No arguments to pop. */ +- +-#define PUSHARGS_2 /* No arguments to push. */ +-#define _DOARGS_2(N) _DOARGS_1 (N-4) /* Argument already in d1. */ +-#define DOARGS_2 _DOARGS_2 (8) +-#define POPARGS_2 /* No arguments to pop. */ +- +-#define PUSHARGS_3 movm [a3],(sp); +-#define _DOARGS_3(N) _DOARGS_2 (N-4) mov (N,sp),a3; +-#define DOARGS_3 _DOARGS_3 (16) +-#define POPARGS_3 ; movm (sp),[a3] +- +-#define PUSHARGS_4 movm [a2,a3],(sp); +-#define _DOARGS_4(N) _DOARGS_3 (N-4) mov (N,sp),a2; +-#define DOARGS_4 _DOARGS_4 (24) +-#define POPARGS_4 ; movm (sp),[a2,a3] +- +-#define PUSHARGS_5 movm [d3,a2,a3],(sp); +-#define _DOARGS_5(N) _DOARGS_4 (N-4) mov (N,sp),d3; +-#define DOARGS_5 _DOARGS_5 (32) +-#define POPARGS_5 ; movm (sp),[d3,a2,a3] +- +-#define PUSHARGS_6 movm [d2,d3,a2,a3],(sp); +-#define _DOARGS_6(N) _DOARGS_5 (N-4) mov (N,sp),d2; +-#define DOARGS_6 _DOARGS_6 (40) +-#define POPARGS_6 ; movm (sp),[d2,d3,a2,a3] +- +-#else /* !__ASSEMBLER__ */ +- +-/* Define a macro which expands inline into the wrapper code for a system +- call. */ +-#undef INLINE_SYSCALL +-#define INLINE_SYSCALL(name, nr, args...) \ +- ({ \ +- unsigned int resultvar = INTERNAL_SYSCALL (name, , nr, args); \ +- if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (resultvar, ), 0)) \ +- { \ +- __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, )); \ +- resultvar = 0xffffffff; \ +- } \ +- (int) resultvar; }) +- +-#define INTERNAL_SYSCALL(name, err, nr, args...) \ +-({ \ +- register long __sc0 asm ("d0") = __NR_##name; \ +- inline_syscall##nr(name, ## args); \ +- __sc0; \ +-}) +- +-#undef INTERNAL_SYSCALL_DECL +-#define INTERNAL_SYSCALL_DECL(err) do { } while (0) +- +-#undef INTERNAL_SYSCALL_ERROR_P +-#define INTERNAL_SYSCALL_ERROR_P(val, err) \ +- ((unsigned int) (val) >= (unsigned long)-125) +- +-#undef INTERNAL_SYSCALL_ERRNO +-#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val)) +- +-#define inline_syscall0(name,dummy...) \ +-__asm__ __volatile__ ("syscall 0" \ +- : "+d" (__sc0) \ +- : : "memory") +- +-#define inline_syscall1(name,arg1) \ +-register long __sc1 asm ("a0") = (long) (arg1); \ +-inline_syscall0 (name); \ +-__asm__ __volatile__ ("" : : "r" (__sc1)) +- +-#define inline_syscall2(name,arg1,arg2) \ +-register long __sc2 asm ("d1") = (long) (arg2); \ +-inline_syscall1 (name,(arg1)); \ +-__asm__ __volatile__ ("" : : "r" (__sc2)) +- +-/* We can't tell whether a3 is going to be eliminated in the enclosing +- function, so we have to assume it isn't. We first load the value +- of any arguments into their registers, except for a3 itself, that +- may be needed to load the value of the other arguments. Then, we +- save a3's value in some other register, and load the argument value +- into a3. We have to force both a3 and its copy to be live in +- different registers at the same time, to avoid having the copy +- spilled and the value reloaded into the same register, in which +- case we'd be unable to get the value of a3 back, should the stack +- slot reference be (offset,a3). */ +-#define inline_syscall3(name,arg1,arg2,arg3) \ +-long __sc3v = (long) (arg3); \ +-register long __sc1 asm ("a0") = (long) (arg1); \ +-register long __sc2 asm ("d1") = (long) (arg2); \ +-register long __sc3 asm ("a3") = __sc3; \ +-register long __sc3c; \ +-__asm__ __volatile__ ("mov %1,%0" : "=&r" (__sc3c) : "r" (__sc3)); \ +-__sc3 = __sc3v; \ +-__asm__ __volatile__ ("" : : "r" (__sc3c), "r" (__sc3)); \ +-inline_syscall0 (name); \ +-__sc3 = __sc3c; \ +-__asm__ __volatile__ ("" : : "r" (__sc3), "r" (__sc2), "r" (__sc1)) +- +-#ifdef PIC +-/* Since a2 is the PIC register, it requires similar handling as a3 +- when we're generating PIC, as a2's value may be needed to load +- arguments whose values live in global variables. The difference is +- that we don't need to require its value to be live in a register; +- it may well be in a stack slot, as long as we save it before +- clobbering a3 and restore it after restoring a3. */ +-#define inline_syscall4(name,arg1,arg2,arg3,arg4) \ +-long __sc4v = (long) (arg4); \ +-long __sc3v = (long) (arg3); \ +-register long __sc1 asm ("a0") = (long) (arg1); \ +-register long __sc2 asm ("d1") = (long) (arg2); \ +-register long __sc3 asm ("a3") = __sc3; \ +-register long __sc3c; \ +-register long __sc4 asm ("a2") = __sc4; \ +-long __sc4c = __sc4; \ +-__sc4 = __sc4v; \ +-__asm__ __volatile__ ("mov %1,%0" : "=&r" (__sc3c) : "r" (__sc3)); \ +-__sc3 = __sc3v; \ +-__asm__ __volatile__ ("" : : "r" (__sc3c), "r" (__sc3), "r" (__sc4)); \ +-inline_syscall0 (name); \ +-__sc3 = __sc3c; \ +-__sc4 = __sc4c; \ +-__asm__ __volatile__ ("" : : "r" (__sc4), "r" (__sc3), \ +- "r" (__sc2), "r" (__sc1)) +-#else +-#define inline_syscall4(name,arg1,arg2,arg3,arg4) \ +-register long __sc4 asm ("a2") = (long) (arg4); \ +-inline_syscall3 (name,(arg1),(arg2),(arg3)); \ +-__asm__ __volatile__ ("" : : "r" (__sc4)) +-#endif +- +-#define inline_syscall5(name,arg1,arg2,arg3,arg4,arg5) \ +-register long __sc5 asm ("d3") = (long) (arg5); \ +-inline_syscall4 (name,(arg1),(arg2),(arg3),(arg4)); \ +-__asm__ __volatile__ ("" : : "r" (__sc5)) +- +-#define inline_syscall6(name,arg1,arg2,arg3,arg4,arg5,arg6) \ +-register long __sc6 asm ("d2") = (long) (arg6); \ +-inline_syscall5 (name,(arg1),(arg2),(arg3),(arg4),(arg5)); \ +-__asm__ __volatile__ ("" : : "r" (__sc6)) +- +-#endif /* __ASSEMBLER__ */ +- +-#endif /* linux/am33/sysdep.h */ +diff --git a/ports/sysdeps/unix/sysv/linux/am33/xstat.c b/ports/sysdeps/unix/sysv/linux/am33/xstat.c +deleted file mode 100644 +index e9869f550892e9a2..0000000000000000 +--- a/ports/sysdeps/unix/sysv/linux/am33/xstat.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include diff --git a/SOURCES/glibc-rh1505492-ports-move-aarch64.patch b/SOURCES/glibc-rh1505492-ports-move-aarch64.patch new file mode 100644 index 0000000..d0e9681 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-aarch64.patch @@ -0,0 +1,676 @@ +Recreation of this upstream commit: + +commit 75eff3fe90f96783f31f58fa84af1b77e57d1ae4 +Author: Marcus Shawcroft +Date: Mon Feb 10 15:36:16 2014 +0000 + + Relocate AArch64 from ports to libc. + + This patch moves the AArch64 port to the main sysdeps hierarchy. The + move is essentially: + + git mv ports/sysdeps/aarch64 sysdeps/aarch64 + git mv ports/sysdeps/unix/sysv/linux/aarch64 sysdeps/unix/sysv/linux/aarch64 + +The file + + sysdeps/unix/sysv/linux/aarch64/bits/sigstack.h + +already existed (added in glibc-rh1335629.patch), so the following +sequence of commands was used instead: + +git mv ports/sysdeps/aarch64 sysdeps/aarch64 +git mv ports/sysdeps/unix/sysv/linux/aarch64/bits/* \ + sysdeps/unix/sysv/linux/aarch64/bits/ +rmdir ports/sysdeps/unix/sysv/linux/aarch64/bits +git mv ports/sysdeps/unix/sysv/linux/aarch64/* \ + sysdeps/unix/sysv/linux/aarch64/ + +diff --git a/ports/sysdeps/aarch64/Implies b/sysdeps/aarch64/Implies +similarity index 100% +rename from ports/sysdeps/aarch64/Implies +rename to sysdeps/aarch64/Implies +diff --git a/ports/sysdeps/aarch64/Makefile b/sysdeps/aarch64/Makefile +similarity index 100% +rename from ports/sysdeps/aarch64/Makefile +rename to sysdeps/aarch64/Makefile +diff --git a/ports/sysdeps/aarch64/Versions b/sysdeps/aarch64/Versions +similarity index 100% +rename from ports/sysdeps/aarch64/Versions +rename to sysdeps/aarch64/Versions +diff --git a/ports/sysdeps/aarch64/__longjmp.S b/sysdeps/aarch64/__longjmp.S +similarity index 100% +rename from ports/sysdeps/aarch64/__longjmp.S +rename to sysdeps/aarch64/__longjmp.S +diff --git a/ports/sysdeps/aarch64/backtrace.c b/sysdeps/aarch64/backtrace.c +similarity index 100% +rename from ports/sysdeps/aarch64/backtrace.c +rename to sysdeps/aarch64/backtrace.c +diff --git a/ports/sysdeps/aarch64/bits/atomic.h b/sysdeps/aarch64/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/atomic.h +rename to sysdeps/aarch64/bits/atomic.h +diff --git a/ports/sysdeps/aarch64/bits/endian.h b/sysdeps/aarch64/bits/endian.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/endian.h +rename to sysdeps/aarch64/bits/endian.h +diff --git a/ports/sysdeps/aarch64/bits/fenv.h b/sysdeps/aarch64/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/fenv.h +rename to sysdeps/aarch64/bits/fenv.h +diff --git a/ports/sysdeps/aarch64/bits/link.h b/sysdeps/aarch64/bits/link.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/link.h +rename to sysdeps/aarch64/bits/link.h +diff --git a/ports/sysdeps/aarch64/bits/linkmap.h b/sysdeps/aarch64/bits/linkmap.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/linkmap.h +rename to sysdeps/aarch64/bits/linkmap.h +diff --git a/ports/sysdeps/aarch64/bits/mathdef.h b/sysdeps/aarch64/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/mathdef.h +rename to sysdeps/aarch64/bits/mathdef.h +diff --git a/ports/sysdeps/aarch64/bits/setjmp.h b/sysdeps/aarch64/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/aarch64/bits/setjmp.h +rename to sysdeps/aarch64/bits/setjmp.h +diff --git a/ports/sysdeps/aarch64/bsd-_setjmp.S b/sysdeps/aarch64/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/aarch64/bsd-_setjmp.S +rename to sysdeps/aarch64/bsd-_setjmp.S +diff --git a/ports/sysdeps/aarch64/bsd-setjmp.S b/sysdeps/aarch64/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/aarch64/bsd-setjmp.S +rename to sysdeps/aarch64/bsd-setjmp.S +diff --git a/ports/sysdeps/aarch64/crti.S b/sysdeps/aarch64/crti.S +similarity index 100% +rename from ports/sysdeps/aarch64/crti.S +rename to sysdeps/aarch64/crti.S +diff --git a/ports/sysdeps/aarch64/crtn.S b/sysdeps/aarch64/crtn.S +similarity index 100% +rename from ports/sysdeps/aarch64/crtn.S +rename to sysdeps/aarch64/crtn.S +diff --git a/ports/sysdeps/aarch64/dl-irel.h b/sysdeps/aarch64/dl-irel.h +similarity index 100% +rename from ports/sysdeps/aarch64/dl-irel.h +rename to sysdeps/aarch64/dl-irel.h +diff --git a/ports/sysdeps/aarch64/dl-link.sym b/sysdeps/aarch64/dl-link.sym +similarity index 100% +rename from ports/sysdeps/aarch64/dl-link.sym +rename to sysdeps/aarch64/dl-link.sym +diff --git a/ports/sysdeps/aarch64/dl-machine.h b/sysdeps/aarch64/dl-machine.h +similarity index 100% +rename from ports/sysdeps/aarch64/dl-machine.h +rename to sysdeps/aarch64/dl-machine.h +diff --git a/ports/sysdeps/aarch64/dl-sysdep.h b/sysdeps/aarch64/dl-sysdep.h +similarity index 100% +rename from ports/sysdeps/aarch64/dl-sysdep.h +rename to sysdeps/aarch64/dl-sysdep.h +diff --git a/ports/sysdeps/aarch64/dl-tls.h b/sysdeps/aarch64/dl-tls.h +similarity index 100% +rename from ports/sysdeps/aarch64/dl-tls.h +rename to sysdeps/aarch64/dl-tls.h +diff --git a/ports/sysdeps/aarch64/dl-tlsdesc.S b/sysdeps/aarch64/dl-tlsdesc.S +similarity index 100% +rename from ports/sysdeps/aarch64/dl-tlsdesc.S +rename to sysdeps/aarch64/dl-tlsdesc.S +diff --git a/ports/sysdeps/aarch64/dl-tlsdesc.h b/sysdeps/aarch64/dl-tlsdesc.h +similarity index 100% +rename from ports/sysdeps/aarch64/dl-tlsdesc.h +rename to sysdeps/aarch64/dl-tlsdesc.h +diff --git a/ports/sysdeps/aarch64/dl-trampoline.S b/sysdeps/aarch64/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/aarch64/dl-trampoline.S +rename to sysdeps/aarch64/dl-trampoline.S +diff --git a/ports/sysdeps/aarch64/fpu/fclrexcpt.c b/sysdeps/aarch64/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fclrexcpt.c +rename to sysdeps/aarch64/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/aarch64/fpu/fedisblxcpt.c b/sysdeps/aarch64/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fedisblxcpt.c +rename to sysdeps/aarch64/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/aarch64/fpu/feenablxcpt.c b/sysdeps/aarch64/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/feenablxcpt.c +rename to sysdeps/aarch64/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/aarch64/fpu/fegetenv.c b/sysdeps/aarch64/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fegetenv.c +rename to sysdeps/aarch64/fpu/fegetenv.c +diff --git a/ports/sysdeps/aarch64/fpu/fegetexcept.c b/sysdeps/aarch64/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fegetexcept.c +rename to sysdeps/aarch64/fpu/fegetexcept.c +diff --git a/ports/sysdeps/aarch64/fpu/fegetround.c b/sysdeps/aarch64/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fegetround.c +rename to sysdeps/aarch64/fpu/fegetround.c +diff --git a/ports/sysdeps/aarch64/fpu/feholdexcpt.c b/sysdeps/aarch64/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/feholdexcpt.c +rename to sysdeps/aarch64/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/aarch64/fpu/fesetenv.c b/sysdeps/aarch64/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fesetenv.c +rename to sysdeps/aarch64/fpu/fesetenv.c +diff --git a/ports/sysdeps/aarch64/fpu/fesetround.c b/sysdeps/aarch64/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fesetround.c +rename to sysdeps/aarch64/fpu/fesetround.c +diff --git a/ports/sysdeps/aarch64/fpu/feupdateenv.c b/sysdeps/aarch64/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/feupdateenv.c +rename to sysdeps/aarch64/fpu/feupdateenv.c +diff --git a/ports/sysdeps/aarch64/fpu/fgetexcptflg.c b/sysdeps/aarch64/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fgetexcptflg.c +rename to sysdeps/aarch64/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/aarch64/fpu/fpu_control.h b/sysdeps/aarch64/fpu/fpu_control.h +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fpu_control.h +rename to sysdeps/aarch64/fpu/fpu_control.h +diff --git a/ports/sysdeps/aarch64/fpu/fraiseexcpt.c b/sysdeps/aarch64/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fraiseexcpt.c +rename to sysdeps/aarch64/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/aarch64/fpu/fsetexcptflg.c b/sysdeps/aarch64/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/fsetexcptflg.c +rename to sysdeps/aarch64/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/aarch64/fpu/ftestexcept.c b/sysdeps/aarch64/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/ftestexcept.c +rename to sysdeps/aarch64/fpu/ftestexcept.c +diff --git a/ports/sysdeps/aarch64/fpu/get-rounding-mode.h b/sysdeps/aarch64/fpu/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/get-rounding-mode.h +rename to sysdeps/aarch64/fpu/get-rounding-mode.h +diff --git a/ports/sysdeps/aarch64/fpu/math_private.h b/sysdeps/aarch64/fpu/math_private.h +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/math_private.h +rename to sysdeps/aarch64/fpu/math_private.h +diff --git a/ports/sysdeps/aarch64/fpu/s_ceil.c b/sysdeps/aarch64/fpu/s_ceil.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_ceil.c +rename to sysdeps/aarch64/fpu/s_ceil.c +diff --git a/ports/sysdeps/aarch64/fpu/s_ceilf.c b/sysdeps/aarch64/fpu/s_ceilf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_ceilf.c +rename to sysdeps/aarch64/fpu/s_ceilf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_floor.c b/sysdeps/aarch64/fpu/s_floor.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_floor.c +rename to sysdeps/aarch64/fpu/s_floor.c +diff --git a/ports/sysdeps/aarch64/fpu/s_floorf.c b/sysdeps/aarch64/fpu/s_floorf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_floorf.c +rename to sysdeps/aarch64/fpu/s_floorf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fma.c b/sysdeps/aarch64/fpu/s_fma.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fma.c +rename to sysdeps/aarch64/fpu/s_fma.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fmaf.c b/sysdeps/aarch64/fpu/s_fmaf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fmaf.c +rename to sysdeps/aarch64/fpu/s_fmaf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fmax.c b/sysdeps/aarch64/fpu/s_fmax.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fmax.c +rename to sysdeps/aarch64/fpu/s_fmax.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fmaxf.c b/sysdeps/aarch64/fpu/s_fmaxf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fmaxf.c +rename to sysdeps/aarch64/fpu/s_fmaxf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fmin.c b/sysdeps/aarch64/fpu/s_fmin.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fmin.c +rename to sysdeps/aarch64/fpu/s_fmin.c +diff --git a/ports/sysdeps/aarch64/fpu/s_fminf.c b/sysdeps/aarch64/fpu/s_fminf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_fminf.c +rename to sysdeps/aarch64/fpu/s_fminf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_frint.c b/sysdeps/aarch64/fpu/s_frint.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_frint.c +rename to sysdeps/aarch64/fpu/s_frint.c +diff --git a/ports/sysdeps/aarch64/fpu/s_frintf.c b/sysdeps/aarch64/fpu/s_frintf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_frintf.c +rename to sysdeps/aarch64/fpu/s_frintf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_llrint.c b/sysdeps/aarch64/fpu/s_llrint.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_llrint.c +rename to sysdeps/aarch64/fpu/s_llrint.c +diff --git a/ports/sysdeps/aarch64/fpu/s_llrintf.c b/sysdeps/aarch64/fpu/s_llrintf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_llrintf.c +rename to sysdeps/aarch64/fpu/s_llrintf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_llround.c b/sysdeps/aarch64/fpu/s_llround.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_llround.c +rename to sysdeps/aarch64/fpu/s_llround.c +diff --git a/ports/sysdeps/aarch64/fpu/s_llroundf.c b/sysdeps/aarch64/fpu/s_llroundf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_llroundf.c +rename to sysdeps/aarch64/fpu/s_llroundf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_lrint.c b/sysdeps/aarch64/fpu/s_lrint.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_lrint.c +rename to sysdeps/aarch64/fpu/s_lrint.c +diff --git a/ports/sysdeps/aarch64/fpu/s_lrintf.c b/sysdeps/aarch64/fpu/s_lrintf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_lrintf.c +rename to sysdeps/aarch64/fpu/s_lrintf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_lround.c b/sysdeps/aarch64/fpu/s_lround.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_lround.c +rename to sysdeps/aarch64/fpu/s_lround.c +diff --git a/ports/sysdeps/aarch64/fpu/s_lroundf.c b/sysdeps/aarch64/fpu/s_lroundf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_lroundf.c +rename to sysdeps/aarch64/fpu/s_lroundf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_nearbyint.c b/sysdeps/aarch64/fpu/s_nearbyint.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_nearbyint.c +rename to sysdeps/aarch64/fpu/s_nearbyint.c +diff --git a/ports/sysdeps/aarch64/fpu/s_nearbyintf.c b/sysdeps/aarch64/fpu/s_nearbyintf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_nearbyintf.c +rename to sysdeps/aarch64/fpu/s_nearbyintf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_rint.c b/sysdeps/aarch64/fpu/s_rint.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_rint.c +rename to sysdeps/aarch64/fpu/s_rint.c +diff --git a/ports/sysdeps/aarch64/fpu/s_rintf.c b/sysdeps/aarch64/fpu/s_rintf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_rintf.c +rename to sysdeps/aarch64/fpu/s_rintf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_round.c b/sysdeps/aarch64/fpu/s_round.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_round.c +rename to sysdeps/aarch64/fpu/s_round.c +diff --git a/ports/sysdeps/aarch64/fpu/s_roundf.c b/sysdeps/aarch64/fpu/s_roundf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_roundf.c +rename to sysdeps/aarch64/fpu/s_roundf.c +diff --git a/ports/sysdeps/aarch64/fpu/s_trunc.c b/sysdeps/aarch64/fpu/s_trunc.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_trunc.c +rename to sysdeps/aarch64/fpu/s_trunc.c +diff --git a/ports/sysdeps/aarch64/fpu/s_truncf.c b/sysdeps/aarch64/fpu/s_truncf.c +similarity index 100% +rename from ports/sysdeps/aarch64/fpu/s_truncf.c +rename to sysdeps/aarch64/fpu/s_truncf.c +diff --git a/ports/sysdeps/aarch64/jmpbuf-offsets.h b/sysdeps/aarch64/jmpbuf-offsets.h +similarity index 100% +rename from ports/sysdeps/aarch64/jmpbuf-offsets.h +rename to sysdeps/aarch64/jmpbuf-offsets.h +diff --git a/ports/sysdeps/aarch64/jmpbuf-unwind.h b/sysdeps/aarch64/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/aarch64/jmpbuf-unwind.h +rename to sysdeps/aarch64/jmpbuf-unwind.h +diff --git a/ports/sysdeps/aarch64/ldsodefs.h b/sysdeps/aarch64/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/aarch64/ldsodefs.h +rename to sysdeps/aarch64/ldsodefs.h +diff --git a/ports/sysdeps/aarch64/libc-tls.c b/sysdeps/aarch64/libc-tls.c +similarity index 100% +rename from ports/sysdeps/aarch64/libc-tls.c +rename to sysdeps/aarch64/libc-tls.c +diff --git a/ports/sysdeps/aarch64/libm-test-ulps b/sysdeps/aarch64/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/aarch64/libm-test-ulps +rename to sysdeps/aarch64/libm-test-ulps +diff --git a/ports/sysdeps/aarch64/machine-gmon.h b/sysdeps/aarch64/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/aarch64/machine-gmon.h +rename to sysdeps/aarch64/machine-gmon.h +diff --git a/ports/sysdeps/aarch64/math-tests.h b/sysdeps/aarch64/math-tests.h +similarity index 100% +rename from ports/sysdeps/aarch64/math-tests.h +rename to sysdeps/aarch64/math-tests.h +diff --git a/ports/sysdeps/aarch64/mcount.c b/sysdeps/aarch64/mcount.c +similarity index 100% +rename from ports/sysdeps/aarch64/mcount.c +rename to sysdeps/aarch64/mcount.c +diff --git a/ports/sysdeps/aarch64/memusage.h b/sysdeps/aarch64/memusage.h +similarity index 100% +rename from ports/sysdeps/aarch64/memusage.h +rename to sysdeps/aarch64/memusage.h +diff --git a/ports/sysdeps/aarch64/nptl/Makefile b/sysdeps/aarch64/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/aarch64/nptl/Makefile +rename to sysdeps/aarch64/nptl/Makefile +diff --git a/ports/sysdeps/aarch64/nptl/pthread_spin_lock.c b/sysdeps/aarch64/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/aarch64/nptl/pthread_spin_lock.c +rename to sysdeps/aarch64/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/aarch64/nptl/pthreaddef.h b/sysdeps/aarch64/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/aarch64/nptl/pthreaddef.h +rename to sysdeps/aarch64/nptl/pthreaddef.h +diff --git a/ports/sysdeps/aarch64/nptl/tcb-offsets.sym b/sysdeps/aarch64/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/aarch64/nptl/tcb-offsets.sym +rename to sysdeps/aarch64/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/aarch64/nptl/tls.h b/sysdeps/aarch64/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/aarch64/nptl/tls.h +rename to sysdeps/aarch64/nptl/tls.h +diff --git a/ports/sysdeps/aarch64/preconfigure b/sysdeps/aarch64/preconfigure +similarity index 100% +rename from ports/sysdeps/aarch64/preconfigure +rename to sysdeps/aarch64/preconfigure +diff --git a/ports/sysdeps/aarch64/setjmp.S b/sysdeps/aarch64/setjmp.S +similarity index 100% +rename from ports/sysdeps/aarch64/setjmp.S +rename to sysdeps/aarch64/setjmp.S +diff --git a/ports/sysdeps/aarch64/shlib-versions b/sysdeps/aarch64/shlib-versions +similarity index 100% +rename from ports/sysdeps/aarch64/shlib-versions +rename to sysdeps/aarch64/shlib-versions +diff --git a/ports/sysdeps/aarch64/soft-fp/Makefile b/sysdeps/aarch64/soft-fp/Makefile +similarity index 100% +rename from ports/sysdeps/aarch64/soft-fp/Makefile +rename to sysdeps/aarch64/soft-fp/Makefile +diff --git a/ports/sysdeps/aarch64/soft-fp/e_sqrtl.c b/sysdeps/aarch64/soft-fp/e_sqrtl.c +similarity index 100% +rename from ports/sysdeps/aarch64/soft-fp/e_sqrtl.c +rename to sysdeps/aarch64/soft-fp/e_sqrtl.c +diff --git a/ports/sysdeps/aarch64/soft-fp/sfp-machine.h b/sysdeps/aarch64/soft-fp/sfp-machine.h +similarity index 100% +rename from ports/sysdeps/aarch64/soft-fp/sfp-machine.h +rename to sysdeps/aarch64/soft-fp/sfp-machine.h +diff --git a/ports/sysdeps/aarch64/sotruss-lib.c b/sysdeps/aarch64/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/aarch64/sotruss-lib.c +rename to sysdeps/aarch64/sotruss-lib.c +diff --git a/ports/sysdeps/aarch64/stackinfo.h b/sysdeps/aarch64/stackinfo.h +similarity index 100% +rename from ports/sysdeps/aarch64/stackinfo.h +rename to sysdeps/aarch64/stackinfo.h +diff --git a/ports/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S +similarity index 100% +rename from ports/sysdeps/aarch64/start.S +rename to sysdeps/aarch64/start.S +diff --git a/ports/sysdeps/aarch64/sysdep.h b/sysdeps/aarch64/sysdep.h +similarity index 100% +rename from ports/sysdeps/aarch64/sysdep.h +rename to sysdeps/aarch64/sysdep.h +diff --git a/ports/sysdeps/aarch64/tls-macros.h b/sysdeps/aarch64/tls-macros.h +similarity index 100% +rename from ports/sysdeps/aarch64/tls-macros.h +rename to sysdeps/aarch64/tls-macros.h +diff --git a/ports/sysdeps/aarch64/tlsdesc.c b/sysdeps/aarch64/tlsdesc.c +similarity index 100% +rename from ports/sysdeps/aarch64/tlsdesc.c +rename to sysdeps/aarch64/tlsdesc.c +diff --git a/ports/sysdeps/aarch64/tlsdesc.sym b/sysdeps/aarch64/tlsdesc.sym +similarity index 100% +rename from ports/sysdeps/aarch64/tlsdesc.sym +rename to sysdeps/aarch64/tlsdesc.sym +diff --git a/ports/sysdeps/aarch64/tst-audit.h b/sysdeps/aarch64/tst-audit.h +similarity index 100% +rename from ports/sysdeps/aarch64/tst-audit.h +rename to sysdeps/aarch64/tst-audit.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/Implies b/sysdeps/unix/sysv/linux/aarch64/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/Implies +rename to sysdeps/unix/sysv/linux/aarch64/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/Makefile b/sysdeps/unix/sysv/linux/aarch64/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/Makefile +rename to sysdeps/unix/sysv/linux/aarch64/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/Versions b/sysdeps/unix/sysv/linux/aarch64/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/Versions +rename to sysdeps/unix/sysv/linux/aarch64/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/__read_tp.S b/sysdeps/unix/sysv/linux/aarch64/__read_tp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/__read_tp.S +rename to sysdeps/unix/sysv/linux/aarch64/__read_tp.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h b/sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h b/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h +rename to sysdeps/unix/sysv/linux/aarch64/bits/ipc.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/bits/libc-vdso.h b/sysdeps/unix/sysv/linux/aarch64/bits/libc-vdso.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/bits/libc-vdso.h +rename to sysdeps/unix/sysv/linux/aarch64/bits/libc-vdso.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/bits/mman.h b/sysdeps/unix/sysv/linux/aarch64/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/bits/mman.h +rename to sysdeps/unix/sysv/linux/aarch64/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/clone.S b/sysdeps/unix/sysv/linux/aarch64/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/clone.S +rename to sysdeps/unix/sysv/linux/aarch64/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/configure b/sysdeps/unix/sysv/linux/aarch64/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/configure +rename to sysdeps/unix/sysv/linux/aarch64/configure +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/configure.in b/sysdeps/unix/sysv/linux/aarch64/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/configure.in +rename to sysdeps/unix/sysv/linux/aarch64/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/dl-cache.h b/sysdeps/unix/sysv/linux/aarch64/dl-cache.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/dl-cache.h +rename to sysdeps/unix/sysv/linux/aarch64/dl-cache.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/getcontext.S b/sysdeps/unix/sysv/linux/aarch64/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/getcontext.S +rename to sysdeps/unix/sysv/linux/aarch64/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c b/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +rename to sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/init-first.c b/sysdeps/unix/sysv/linux/aarch64/init-first.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/init-first.c +rename to sysdeps/unix/sysv/linux/aarch64/init-first.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/ioctl.S b/sysdeps/unix/sysv/linux/aarch64/ioctl.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/ioctl.S +rename to sysdeps/unix/sysv/linux/aarch64/ioctl.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/kernel-features.h b/sysdeps/unix/sysv/linux/aarch64/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/kernel-features.h +rename to sysdeps/unix/sysv/linux/aarch64/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h b/sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h +rename to sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h b/sysdeps/unix/sysv/linux/aarch64/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h +rename to sysdeps/unix/sysv/linux/aarch64/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/libc-__read_tp.S b/sysdeps/unix/sysv/linux/aarch64/libc-__read_tp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/libc-__read_tp.S +rename to sysdeps/unix/sysv/linux/aarch64/libc-__read_tp.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/makecontext.c b/sysdeps/unix/sysv/linux/aarch64/makecontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/makecontext.c +rename to sysdeps/unix/sysv/linux/aarch64/makecontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/mmap.c b/sysdeps/unix/sysv/linux/aarch64/mmap.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/mmap.c +rename to sysdeps/unix/sysv/linux/aarch64/mmap.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h b/sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h +rename to sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/aarch64/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/aarch64/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/c++-types.data b/sysdeps/unix/sysv/linux/aarch64/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/aarch64/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/clone.S b/sysdeps/unix/sysv/linux/aarch64/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/clone.S +rename to sysdeps/unix/sysv/linux/aarch64/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c b/sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/fork.c b/sysdeps/unix/sysv/linux/aarch64/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/fork.c +rename to sysdeps/unix/sysv/linux/aarch64/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/ld.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/librt.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/aarch64/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/aarch64/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data b/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/aarch64/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/aarch64/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/aarch64/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/aarch64/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/vfork.S b/sysdeps/unix/sysv/linux/aarch64/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/aarch64/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/profil-counter.h b/sysdeps/unix/sysv/linux/aarch64/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/profil-counter.h +rename to sysdeps/unix/sysv/linux/aarch64/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c b/sysdeps/unix/sysv/linux/aarch64/readelflib.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c +rename to sysdeps/unix/sysv/linux/aarch64/readelflib.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/setcontext.S b/sysdeps/unix/sysv/linux/aarch64/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/setcontext.S +rename to sysdeps/unix/sysv/linux/aarch64/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c b/sysdeps/unix/sysv/linux/aarch64/sigaction.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sigaction.c +rename to sysdeps/unix/sysv/linux/aarch64/sigaction.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h b/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/swapcontext.S b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/swapcontext.S +rename to sysdeps/unix/sysv/linux/aarch64/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sys/elf.h b/sysdeps/unix/sysv/linux/aarch64/sys/elf.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sys/elf.h +rename to sysdeps/unix/sysv/linux/aarch64/sys/elf.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sys/procfs.h b/sysdeps/unix/sysv/linux/aarch64/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sys/procfs.h +rename to sysdeps/unix/sysv/linux/aarch64/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +rename to sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h b/sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h b/sysdeps/unix/sysv/linux/aarch64/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h +rename to sysdeps/unix/sysv/linux/aarch64/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/syscall.S b/sysdeps/unix/sysv/linux/aarch64/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/syscall.S +rename to sysdeps/unix/sysv/linux/aarch64/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.c b/sysdeps/unix/sysv/linux/aarch64/sysdep.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sysdep.c +rename to sysdeps/unix/sysv/linux/aarch64/sysdep.c +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h +rename to sysdeps/unix/sysv/linux/aarch64/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/ucontext-internal.h b/sysdeps/unix/sysv/linux/aarch64/ucontext-internal.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/ucontext-internal.h +rename to sysdeps/unix/sysv/linux/aarch64/ucontext-internal.h +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym b/sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym +rename to sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym +diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/vfork.S b/sysdeps/unix/sysv/linux/aarch64/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/aarch64/vfork.S +rename to sysdeps/unix/sysv/linux/aarch64/vfork.S diff --git a/SOURCES/glibc-rh1505492-ports-move-alpha.patch b/SOURCES/glibc-rh1505492-ports-move-alpha.patch new file mode 100644 index 0000000..54c26a2 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-alpha.patch @@ -0,0 +1,1449 @@ +Recreation of this upstream commit: + +commit 68b7efaadb1b6045a56277ea62d324c20ac0b633 +Author: Richard Henderson +Date: Wed Feb 12 06:54:57 2014 -0800 + + Relocate alpha from ports to libc + +The git commands used were: + +git mv ports/sysdeps/alpha sysdeps/ +git mv ports/sysdeps/unix/alpha sysdeps/unix/ +git mv ports/sysdeps/unix/sysv/linux/alpha sysdeps/unix/sysv/linux/ + +Note that the upstream whitespace changes are not part of this +commit. + +diff --git a/ports/sysdeps/alpha/Implies b/sysdeps/alpha/Implies +similarity index 100% +rename from ports/sysdeps/alpha/Implies +rename to sysdeps/alpha/Implies +diff --git a/ports/sysdeps/alpha/Makefile b/sysdeps/alpha/Makefile +similarity index 100% +rename from ports/sysdeps/alpha/Makefile +rename to sysdeps/alpha/Makefile +diff --git a/ports/sysdeps/alpha/Subdirs b/sysdeps/alpha/Subdirs +similarity index 100% +rename from ports/sysdeps/alpha/Subdirs +rename to sysdeps/alpha/Subdirs +diff --git a/ports/sysdeps/alpha/Versions b/sysdeps/alpha/Versions +similarity index 100% +rename from ports/sysdeps/alpha/Versions +rename to sysdeps/alpha/Versions +diff --git a/ports/sysdeps/alpha/__longjmp.S b/sysdeps/alpha/__longjmp.S +similarity index 100% +rename from ports/sysdeps/alpha/__longjmp.S +rename to sysdeps/alpha/__longjmp.S +diff --git a/ports/sysdeps/alpha/_mcount.S b/sysdeps/alpha/_mcount.S +similarity index 100% +rename from ports/sysdeps/alpha/_mcount.S +rename to sysdeps/alpha/_mcount.S +diff --git a/ports/sysdeps/alpha/add_n.S b/sysdeps/alpha/add_n.S +similarity index 100% +rename from ports/sysdeps/alpha/add_n.S +rename to sysdeps/alpha/add_n.S +diff --git a/ports/sysdeps/alpha/addmul_1.S b/sysdeps/alpha/addmul_1.S +similarity index 100% +rename from ports/sysdeps/alpha/addmul_1.S +rename to sysdeps/alpha/addmul_1.S +diff --git a/ports/sysdeps/alpha/alphaev5/add_n.S b/sysdeps/alpha/alphaev5/add_n.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev5/add_n.S +rename to sysdeps/alpha/alphaev5/add_n.S +diff --git a/ports/sysdeps/alpha/alphaev5/lshift.S b/sysdeps/alpha/alphaev5/lshift.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev5/lshift.S +rename to sysdeps/alpha/alphaev5/lshift.S +diff --git a/ports/sysdeps/alpha/alphaev5/rshift.S b/sysdeps/alpha/alphaev5/rshift.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev5/rshift.S +rename to sysdeps/alpha/alphaev5/rshift.S +diff --git a/ports/sysdeps/alpha/alphaev5/sub_n.S b/sysdeps/alpha/alphaev5/sub_n.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev5/sub_n.S +rename to sysdeps/alpha/alphaev5/sub_n.S +diff --git a/ports/sysdeps/alpha/alphaev6/Implies b/sysdeps/alpha/alphaev6/Implies +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/Implies +rename to sysdeps/alpha/alphaev6/Implies +diff --git a/ports/sysdeps/alpha/alphaev6/addmul_1.S b/sysdeps/alpha/alphaev6/addmul_1.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/addmul_1.S +rename to sysdeps/alpha/alphaev6/addmul_1.S +diff --git a/ports/sysdeps/alpha/alphaev6/fpu/e_sqrt.S b/sysdeps/alpha/alphaev6/fpu/e_sqrt.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/fpu/e_sqrt.S +rename to sysdeps/alpha/alphaev6/fpu/e_sqrt.S +diff --git a/ports/sysdeps/alpha/alphaev6/fpu/e_sqrtf.S b/sysdeps/alpha/alphaev6/fpu/e_sqrtf.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/fpu/e_sqrtf.S +rename to sysdeps/alpha/alphaev6/fpu/e_sqrtf.S +diff --git a/ports/sysdeps/alpha/alphaev6/memcpy.S b/sysdeps/alpha/alphaev6/memcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/memcpy.S +rename to sysdeps/alpha/alphaev6/memcpy.S +diff --git a/ports/sysdeps/alpha/alphaev6/memset.S b/sysdeps/alpha/alphaev6/memset.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/memset.S +rename to sysdeps/alpha/alphaev6/memset.S +diff --git a/ports/sysdeps/alpha/alphaev6/stxcpy.S b/sysdeps/alpha/alphaev6/stxcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/stxcpy.S +rename to sysdeps/alpha/alphaev6/stxcpy.S +diff --git a/ports/sysdeps/alpha/alphaev6/stxncpy.S b/sysdeps/alpha/alphaev6/stxncpy.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev6/stxncpy.S +rename to sysdeps/alpha/alphaev6/stxncpy.S +diff --git a/ports/sysdeps/alpha/alphaev67/Implies b/sysdeps/alpha/alphaev67/Implies +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/Implies +rename to sysdeps/alpha/alphaev67/Implies +diff --git a/ports/sysdeps/alpha/alphaev67/ffs.S b/sysdeps/alpha/alphaev67/ffs.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/ffs.S +rename to sysdeps/alpha/alphaev67/ffs.S +diff --git a/ports/sysdeps/alpha/alphaev67/ffsll.S b/sysdeps/alpha/alphaev67/ffsll.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/ffsll.S +rename to sysdeps/alpha/alphaev67/ffsll.S +diff --git a/ports/sysdeps/alpha/alphaev67/fpu/Implies b/sysdeps/alpha/alphaev67/fpu/Implies +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/fpu/Implies +rename to sysdeps/alpha/alphaev67/fpu/Implies +diff --git a/ports/sysdeps/alpha/alphaev67/rawmemchr.S b/sysdeps/alpha/alphaev67/rawmemchr.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/rawmemchr.S +rename to sysdeps/alpha/alphaev67/rawmemchr.S +diff --git a/ports/sysdeps/alpha/alphaev67/stpcpy.S b/sysdeps/alpha/alphaev67/stpcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/stpcpy.S +rename to sysdeps/alpha/alphaev67/stpcpy.S +diff --git a/ports/sysdeps/alpha/alphaev67/stpncpy.S b/sysdeps/alpha/alphaev67/stpncpy.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/stpncpy.S +rename to sysdeps/alpha/alphaev67/stpncpy.S +diff --git a/ports/sysdeps/alpha/alphaev67/strcat.S b/sysdeps/alpha/alphaev67/strcat.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/strcat.S +rename to sysdeps/alpha/alphaev67/strcat.S +diff --git a/ports/sysdeps/alpha/alphaev67/strchr.S b/sysdeps/alpha/alphaev67/strchr.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/strchr.S +rename to sysdeps/alpha/alphaev67/strchr.S +diff --git a/ports/sysdeps/alpha/alphaev67/strlen.S b/sysdeps/alpha/alphaev67/strlen.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/strlen.S +rename to sysdeps/alpha/alphaev67/strlen.S +diff --git a/ports/sysdeps/alpha/alphaev67/strncat.S b/sysdeps/alpha/alphaev67/strncat.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/strncat.S +rename to sysdeps/alpha/alphaev67/strncat.S +diff --git a/ports/sysdeps/alpha/alphaev67/strrchr.S b/sysdeps/alpha/alphaev67/strrchr.S +similarity index 100% +rename from ports/sysdeps/alpha/alphaev67/strrchr.S +rename to sysdeps/alpha/alphaev67/strrchr.S +diff --git a/ports/sysdeps/alpha/backtrace.c b/sysdeps/alpha/backtrace.c +similarity index 100% +rename from ports/sysdeps/alpha/backtrace.c +rename to sysdeps/alpha/backtrace.c +diff --git a/ports/sysdeps/alpha/bb_init_func.S b/sysdeps/alpha/bb_init_func.S +similarity index 100% +rename from ports/sysdeps/alpha/bb_init_func.S +rename to sysdeps/alpha/bb_init_func.S +diff --git a/ports/sysdeps/alpha/bits/atomic.h b/sysdeps/alpha/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/alpha/bits/atomic.h +rename to sysdeps/alpha/bits/atomic.h +diff --git a/ports/sysdeps/alpha/bits/endian.h b/sysdeps/alpha/bits/endian.h +similarity index 100% +rename from ports/sysdeps/alpha/bits/endian.h +rename to sysdeps/alpha/bits/endian.h +diff --git a/ports/sysdeps/alpha/bits/link.h b/sysdeps/alpha/bits/link.h +similarity index 100% +rename from ports/sysdeps/alpha/bits/link.h +rename to sysdeps/alpha/bits/link.h +diff --git a/ports/sysdeps/alpha/bits/mathdef.h b/sysdeps/alpha/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/alpha/bits/mathdef.h +rename to sysdeps/alpha/bits/mathdef.h +diff --git a/ports/sysdeps/alpha/bits/setjmp.h b/sysdeps/alpha/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/alpha/bits/setjmp.h +rename to sysdeps/alpha/bits/setjmp.h +diff --git a/ports/sysdeps/alpha/bsd-_setjmp.S b/sysdeps/alpha/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/alpha/bsd-_setjmp.S +rename to sysdeps/alpha/bsd-_setjmp.S +diff --git a/ports/sysdeps/alpha/bsd-setjmp.S b/sysdeps/alpha/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/alpha/bsd-setjmp.S +rename to sysdeps/alpha/bsd-setjmp.S +diff --git a/ports/sysdeps/alpha/bzero.S b/sysdeps/alpha/bzero.S +similarity index 100% +rename from ports/sysdeps/alpha/bzero.S +rename to sysdeps/alpha/bzero.S +diff --git a/ports/sysdeps/alpha/configure b/sysdeps/alpha/configure +similarity index 100% +rename from ports/sysdeps/alpha/configure +rename to sysdeps/alpha/configure +diff --git a/ports/sysdeps/alpha/configure.in b/sysdeps/alpha/configure.in +similarity index 100% +rename from ports/sysdeps/alpha/configure.in +rename to sysdeps/alpha/configure.in +diff --git a/ports/sysdeps/alpha/crti.S b/sysdeps/alpha/crti.S +similarity index 100% +rename from ports/sysdeps/alpha/crti.S +rename to sysdeps/alpha/crti.S +diff --git a/ports/sysdeps/alpha/crtn.S b/sysdeps/alpha/crtn.S +similarity index 100% +rename from ports/sysdeps/alpha/crtn.S +rename to sysdeps/alpha/crtn.S +diff --git a/ports/sysdeps/alpha/div.S b/sysdeps/alpha/div.S +similarity index 100% +rename from ports/sysdeps/alpha/div.S +rename to sysdeps/alpha/div.S +diff --git a/ports/sysdeps/alpha/div_libc.h b/sysdeps/alpha/div_libc.h +similarity index 100% +rename from ports/sysdeps/alpha/div_libc.h +rename to sysdeps/alpha/div_libc.h +diff --git a/ports/sysdeps/alpha/divl.S b/sysdeps/alpha/divl.S +similarity index 100% +rename from ports/sysdeps/alpha/divl.S +rename to sysdeps/alpha/divl.S +diff --git a/ports/sysdeps/alpha/divlu.S b/sysdeps/alpha/divlu.S +similarity index 100% +rename from ports/sysdeps/alpha/divlu.S +rename to sysdeps/alpha/divlu.S +diff --git a/ports/sysdeps/alpha/divq.S b/sysdeps/alpha/divq.S +similarity index 100% +rename from ports/sysdeps/alpha/divq.S +rename to sysdeps/alpha/divq.S +diff --git a/ports/sysdeps/alpha/divqu.S b/sysdeps/alpha/divqu.S +similarity index 100% +rename from ports/sysdeps/alpha/divqu.S +rename to sysdeps/alpha/divqu.S +diff --git a/ports/sysdeps/alpha/dl-dtprocnum.h b/sysdeps/alpha/dl-dtprocnum.h +similarity index 100% +rename from ports/sysdeps/alpha/dl-dtprocnum.h +rename to sysdeps/alpha/dl-dtprocnum.h +diff --git a/ports/sysdeps/alpha/dl-machine.h b/sysdeps/alpha/dl-machine.h +similarity index 100% +rename from ports/sysdeps/alpha/dl-machine.h +rename to sysdeps/alpha/dl-machine.h +diff --git a/ports/sysdeps/alpha/dl-procinfo.c b/sysdeps/alpha/dl-procinfo.c +similarity index 100% +rename from ports/sysdeps/alpha/dl-procinfo.c +rename to sysdeps/alpha/dl-procinfo.c +diff --git a/ports/sysdeps/alpha/dl-procinfo.h b/sysdeps/alpha/dl-procinfo.h +similarity index 100% +rename from ports/sysdeps/alpha/dl-procinfo.h +rename to sysdeps/alpha/dl-procinfo.h +diff --git a/ports/sysdeps/alpha/dl-sysdep.h b/sysdeps/alpha/dl-sysdep.h +similarity index 100% +rename from ports/sysdeps/alpha/dl-sysdep.h +rename to sysdeps/alpha/dl-sysdep.h +diff --git a/ports/sysdeps/alpha/dl-tls.h b/sysdeps/alpha/dl-tls.h +similarity index 100% +rename from ports/sysdeps/alpha/dl-tls.h +rename to sysdeps/alpha/dl-tls.h +diff --git a/ports/sysdeps/alpha/dl-trampoline.S b/sysdeps/alpha/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/alpha/dl-trampoline.S +rename to sysdeps/alpha/dl-trampoline.S +diff --git a/ports/sysdeps/alpha/ffs.S b/sysdeps/alpha/ffs.S +similarity index 100% +rename from ports/sysdeps/alpha/ffs.S +rename to sysdeps/alpha/ffs.S +diff --git a/ports/sysdeps/alpha/ffsll.S b/sysdeps/alpha/ffsll.S +similarity index 100% +rename from ports/sysdeps/alpha/ffsll.S +rename to sysdeps/alpha/ffsll.S +diff --git a/ports/sysdeps/alpha/fpu/Versions b/sysdeps/alpha/fpu/Versions +similarity index 100% +rename from ports/sysdeps/alpha/fpu/Versions +rename to sysdeps/alpha/fpu/Versions +diff --git a/ports/sysdeps/alpha/fpu/bits/fenv.h b/sysdeps/alpha/fpu/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/bits/fenv.h +rename to sysdeps/alpha/fpu/bits/fenv.h +diff --git a/ports/sysdeps/alpha/fpu/bits/mathinline.h b/sysdeps/alpha/fpu/bits/mathinline.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/bits/mathinline.h +rename to sysdeps/alpha/fpu/bits/mathinline.h +diff --git a/ports/sysdeps/alpha/fpu/cabsf.c b/sysdeps/alpha/fpu/cabsf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/cabsf.c +rename to sysdeps/alpha/fpu/cabsf.c +diff --git a/ports/sysdeps/alpha/fpu/cargf.c b/sysdeps/alpha/fpu/cargf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/cargf.c +rename to sysdeps/alpha/fpu/cargf.c +diff --git a/ports/sysdeps/alpha/fpu/cfloat-compat.h b/sysdeps/alpha/fpu/cfloat-compat.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/cfloat-compat.h +rename to sysdeps/alpha/fpu/cfloat-compat.h +diff --git a/ports/sysdeps/alpha/fpu/cimagf.c b/sysdeps/alpha/fpu/cimagf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/cimagf.c +rename to sysdeps/alpha/fpu/cimagf.c +diff --git a/ports/sysdeps/alpha/fpu/conjf.c b/sysdeps/alpha/fpu/conjf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/conjf.c +rename to sysdeps/alpha/fpu/conjf.c +diff --git a/ports/sysdeps/alpha/fpu/crealf.c b/sysdeps/alpha/fpu/crealf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/crealf.c +rename to sysdeps/alpha/fpu/crealf.c +diff --git a/ports/sysdeps/alpha/fpu/e_sqrt.c b/sysdeps/alpha/fpu/e_sqrt.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/e_sqrt.c +rename to sysdeps/alpha/fpu/e_sqrt.c +diff --git a/ports/sysdeps/alpha/fpu/fclrexcpt.c b/sysdeps/alpha/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fclrexcpt.c +rename to sysdeps/alpha/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/alpha/fpu/fedisblxcpt.c b/sysdeps/alpha/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fedisblxcpt.c +rename to sysdeps/alpha/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/alpha/fpu/feenablxcpt.c b/sysdeps/alpha/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/feenablxcpt.c +rename to sysdeps/alpha/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/alpha/fpu/fegetenv.c b/sysdeps/alpha/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fegetenv.c +rename to sysdeps/alpha/fpu/fegetenv.c +diff --git a/ports/sysdeps/alpha/fpu/fegetexcept.c b/sysdeps/alpha/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fegetexcept.c +rename to sysdeps/alpha/fpu/fegetexcept.c +diff --git a/ports/sysdeps/alpha/fpu/fegetround.c b/sysdeps/alpha/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fegetround.c +rename to sysdeps/alpha/fpu/fegetround.c +diff --git a/ports/sysdeps/alpha/fpu/feholdexcpt.c b/sysdeps/alpha/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/feholdexcpt.c +rename to sysdeps/alpha/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/alpha/fpu/fenv_libc.h b/sysdeps/alpha/fpu/fenv_libc.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fenv_libc.h +rename to sysdeps/alpha/fpu/fenv_libc.h +diff --git a/ports/sysdeps/alpha/fpu/fesetenv.c b/sysdeps/alpha/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fesetenv.c +rename to sysdeps/alpha/fpu/fesetenv.c +diff --git a/ports/sysdeps/alpha/fpu/fesetround.c b/sysdeps/alpha/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fesetround.c +rename to sysdeps/alpha/fpu/fesetround.c +diff --git a/ports/sysdeps/alpha/fpu/feupdateenv.c b/sysdeps/alpha/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/feupdateenv.c +rename to sysdeps/alpha/fpu/feupdateenv.c +diff --git a/ports/sysdeps/alpha/fpu/fgetexcptflg.c b/sysdeps/alpha/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fgetexcptflg.c +rename to sysdeps/alpha/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/alpha/fpu/fpu_control.h b/sysdeps/alpha/fpu/fpu_control.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fpu_control.h +rename to sysdeps/alpha/fpu/fpu_control.h +diff --git a/ports/sysdeps/alpha/fpu/fsetexcptflg.c b/sysdeps/alpha/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/fsetexcptflg.c +rename to sysdeps/alpha/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/alpha/fpu/ftestexcept.c b/sysdeps/alpha/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/ftestexcept.c +rename to sysdeps/alpha/fpu/ftestexcept.c +diff --git a/ports/sysdeps/alpha/fpu/get-rounding-mode.h b/sysdeps/alpha/fpu/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/get-rounding-mode.h +rename to sysdeps/alpha/fpu/get-rounding-mode.h +diff --git a/ports/sysdeps/alpha/fpu/libm-test-ulps b/sysdeps/alpha/fpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/alpha/fpu/libm-test-ulps +rename to sysdeps/alpha/fpu/libm-test-ulps +diff --git a/ports/sysdeps/alpha/fpu/math_private.h b/sysdeps/alpha/fpu/math_private.h +similarity index 100% +rename from ports/sysdeps/alpha/fpu/math_private.h +rename to sysdeps/alpha/fpu/math_private.h +diff --git a/ports/sysdeps/alpha/fpu/s_cacosf.c b/sysdeps/alpha/fpu/s_cacosf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_cacosf.c +rename to sysdeps/alpha/fpu/s_cacosf.c +diff --git a/ports/sysdeps/alpha/fpu/s_cacoshf.c b/sysdeps/alpha/fpu/s_cacoshf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_cacoshf.c +rename to sysdeps/alpha/fpu/s_cacoshf.c +diff --git a/ports/sysdeps/alpha/fpu/s_casinf.c b/sysdeps/alpha/fpu/s_casinf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_casinf.c +rename to sysdeps/alpha/fpu/s_casinf.c +diff --git a/ports/sysdeps/alpha/fpu/s_casinhf.c b/sysdeps/alpha/fpu/s_casinhf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_casinhf.c +rename to sysdeps/alpha/fpu/s_casinhf.c +diff --git a/ports/sysdeps/alpha/fpu/s_catanf.c b/sysdeps/alpha/fpu/s_catanf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_catanf.c +rename to sysdeps/alpha/fpu/s_catanf.c +diff --git a/ports/sysdeps/alpha/fpu/s_catanhf.c b/sysdeps/alpha/fpu/s_catanhf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_catanhf.c +rename to sysdeps/alpha/fpu/s_catanhf.c +diff --git a/ports/sysdeps/alpha/fpu/s_ccosf.c b/sysdeps/alpha/fpu/s_ccosf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ccosf.c +rename to sysdeps/alpha/fpu/s_ccosf.c +diff --git a/ports/sysdeps/alpha/fpu/s_ccoshf.c b/sysdeps/alpha/fpu/s_ccoshf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ccoshf.c +rename to sysdeps/alpha/fpu/s_ccoshf.c +diff --git a/ports/sysdeps/alpha/fpu/s_ceil.c b/sysdeps/alpha/fpu/s_ceil.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ceil.c +rename to sysdeps/alpha/fpu/s_ceil.c +diff --git a/ports/sysdeps/alpha/fpu/s_ceilf.c b/sysdeps/alpha/fpu/s_ceilf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ceilf.c +rename to sysdeps/alpha/fpu/s_ceilf.c +diff --git a/ports/sysdeps/alpha/fpu/s_cexpf.c b/sysdeps/alpha/fpu/s_cexpf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_cexpf.c +rename to sysdeps/alpha/fpu/s_cexpf.c +diff --git a/ports/sysdeps/alpha/fpu/s_clog10f.c b/sysdeps/alpha/fpu/s_clog10f.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_clog10f.c +rename to sysdeps/alpha/fpu/s_clog10f.c +diff --git a/ports/sysdeps/alpha/fpu/s_clogf.c b/sysdeps/alpha/fpu/s_clogf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_clogf.c +rename to sysdeps/alpha/fpu/s_clogf.c +diff --git a/ports/sysdeps/alpha/fpu/s_copysign.c b/sysdeps/alpha/fpu/s_copysign.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_copysign.c +rename to sysdeps/alpha/fpu/s_copysign.c +diff --git a/ports/sysdeps/alpha/fpu/s_copysignf.c b/sysdeps/alpha/fpu/s_copysignf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_copysignf.c +rename to sysdeps/alpha/fpu/s_copysignf.c +diff --git a/ports/sysdeps/alpha/fpu/s_cpowf.c b/sysdeps/alpha/fpu/s_cpowf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_cpowf.c +rename to sysdeps/alpha/fpu/s_cpowf.c +diff --git a/ports/sysdeps/alpha/fpu/s_cprojf.c b/sysdeps/alpha/fpu/s_cprojf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_cprojf.c +rename to sysdeps/alpha/fpu/s_cprojf.c +diff --git a/ports/sysdeps/alpha/fpu/s_csinf.c b/sysdeps/alpha/fpu/s_csinf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_csinf.c +rename to sysdeps/alpha/fpu/s_csinf.c +diff --git a/ports/sysdeps/alpha/fpu/s_csinhf.c b/sysdeps/alpha/fpu/s_csinhf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_csinhf.c +rename to sysdeps/alpha/fpu/s_csinhf.c +diff --git a/ports/sysdeps/alpha/fpu/s_csqrtf.c b/sysdeps/alpha/fpu/s_csqrtf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_csqrtf.c +rename to sysdeps/alpha/fpu/s_csqrtf.c +diff --git a/ports/sysdeps/alpha/fpu/s_ctanf.c b/sysdeps/alpha/fpu/s_ctanf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ctanf.c +rename to sysdeps/alpha/fpu/s_ctanf.c +diff --git a/ports/sysdeps/alpha/fpu/s_ctanhf.c b/sysdeps/alpha/fpu/s_ctanhf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_ctanhf.c +rename to sysdeps/alpha/fpu/s_ctanhf.c +diff --git a/ports/sysdeps/alpha/fpu/s_fabs.c b/sysdeps/alpha/fpu/s_fabs.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fabs.c +rename to sysdeps/alpha/fpu/s_fabs.c +diff --git a/ports/sysdeps/alpha/fpu/s_fabsf.c b/sysdeps/alpha/fpu/s_fabsf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fabsf.c +rename to sysdeps/alpha/fpu/s_fabsf.c +diff --git a/ports/sysdeps/alpha/fpu/s_floor.c b/sysdeps/alpha/fpu/s_floor.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_floor.c +rename to sysdeps/alpha/fpu/s_floor.c +diff --git a/ports/sysdeps/alpha/fpu/s_floorf.c b/sysdeps/alpha/fpu/s_floorf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_floorf.c +rename to sysdeps/alpha/fpu/s_floorf.c +diff --git a/ports/sysdeps/alpha/fpu/s_fmax.S b/sysdeps/alpha/fpu/s_fmax.S +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fmax.S +rename to sysdeps/alpha/fpu/s_fmax.S +diff --git a/ports/sysdeps/alpha/fpu/s_fmaxf.S b/sysdeps/alpha/fpu/s_fmaxf.S +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fmaxf.S +rename to sysdeps/alpha/fpu/s_fmaxf.S +diff --git a/ports/sysdeps/alpha/fpu/s_fmin.S b/sysdeps/alpha/fpu/s_fmin.S +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fmin.S +rename to sysdeps/alpha/fpu/s_fmin.S +diff --git a/ports/sysdeps/alpha/fpu/s_fminf.S b/sysdeps/alpha/fpu/s_fminf.S +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_fminf.S +rename to sysdeps/alpha/fpu/s_fminf.S +diff --git a/ports/sysdeps/alpha/fpu/s_isnan.c b/sysdeps/alpha/fpu/s_isnan.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_isnan.c +rename to sysdeps/alpha/fpu/s_isnan.c +diff --git a/ports/sysdeps/alpha/fpu/s_isnanf.c b/sysdeps/alpha/fpu/s_isnanf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_isnanf.c +rename to sysdeps/alpha/fpu/s_isnanf.c +diff --git a/ports/sysdeps/alpha/fpu/s_llrint.c b/sysdeps/alpha/fpu/s_llrint.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_llrint.c +rename to sysdeps/alpha/fpu/s_llrint.c +diff --git a/ports/sysdeps/alpha/fpu/s_llrintf.c b/sysdeps/alpha/fpu/s_llrintf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_llrintf.c +rename to sysdeps/alpha/fpu/s_llrintf.c +diff --git a/ports/sysdeps/alpha/fpu/s_llround.c b/sysdeps/alpha/fpu/s_llround.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_llround.c +rename to sysdeps/alpha/fpu/s_llround.c +diff --git a/ports/sysdeps/alpha/fpu/s_llroundf.c b/sysdeps/alpha/fpu/s_llroundf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_llroundf.c +rename to sysdeps/alpha/fpu/s_llroundf.c +diff --git a/ports/sysdeps/alpha/fpu/s_lrint.c b/sysdeps/alpha/fpu/s_lrint.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_lrint.c +rename to sysdeps/alpha/fpu/s_lrint.c +diff --git a/ports/sysdeps/alpha/fpu/s_lrintf.c b/sysdeps/alpha/fpu/s_lrintf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_lrintf.c +rename to sysdeps/alpha/fpu/s_lrintf.c +diff --git a/ports/sysdeps/alpha/fpu/s_lround.c b/sysdeps/alpha/fpu/s_lround.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_lround.c +rename to sysdeps/alpha/fpu/s_lround.c +diff --git a/ports/sysdeps/alpha/fpu/s_lroundf.c b/sysdeps/alpha/fpu/s_lroundf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_lroundf.c +rename to sysdeps/alpha/fpu/s_lroundf.c +diff --git a/ports/sysdeps/alpha/fpu/s_nearbyint.c b/sysdeps/alpha/fpu/s_nearbyint.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_nearbyint.c +rename to sysdeps/alpha/fpu/s_nearbyint.c +diff --git a/ports/sysdeps/alpha/fpu/s_nearbyintf.c b/sysdeps/alpha/fpu/s_nearbyintf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_nearbyintf.c +rename to sysdeps/alpha/fpu/s_nearbyintf.c +diff --git a/ports/sysdeps/alpha/fpu/s_rint.c b/sysdeps/alpha/fpu/s_rint.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_rint.c +rename to sysdeps/alpha/fpu/s_rint.c +diff --git a/ports/sysdeps/alpha/fpu/s_rintf.c b/sysdeps/alpha/fpu/s_rintf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_rintf.c +rename to sysdeps/alpha/fpu/s_rintf.c +diff --git a/ports/sysdeps/alpha/fpu/s_round.c b/sysdeps/alpha/fpu/s_round.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_round.c +rename to sysdeps/alpha/fpu/s_round.c +diff --git a/ports/sysdeps/alpha/fpu/s_roundf.c b/sysdeps/alpha/fpu/s_roundf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_roundf.c +rename to sysdeps/alpha/fpu/s_roundf.c +diff --git a/ports/sysdeps/alpha/fpu/s_trunc.c b/sysdeps/alpha/fpu/s_trunc.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_trunc.c +rename to sysdeps/alpha/fpu/s_trunc.c +diff --git a/ports/sysdeps/alpha/fpu/s_truncf.c b/sysdeps/alpha/fpu/s_truncf.c +similarity index 100% +rename from ports/sysdeps/alpha/fpu/s_truncf.c +rename to sysdeps/alpha/fpu/s_truncf.c +diff --git a/ports/sysdeps/alpha/gccframe.h b/sysdeps/alpha/gccframe.h +similarity index 100% +rename from ports/sysdeps/alpha/gccframe.h +rename to sysdeps/alpha/gccframe.h +diff --git a/ports/sysdeps/alpha/hp-timing.h b/sysdeps/alpha/hp-timing.h +similarity index 100% +rename from ports/sysdeps/alpha/hp-timing.h +rename to sysdeps/alpha/hp-timing.h +diff --git a/ports/sysdeps/alpha/htonl.S b/sysdeps/alpha/htonl.S +similarity index 100% +rename from ports/sysdeps/alpha/htonl.S +rename to sysdeps/alpha/htonl.S +diff --git a/ports/sysdeps/alpha/htons.S b/sysdeps/alpha/htons.S +similarity index 100% +rename from ports/sysdeps/alpha/htons.S +rename to sysdeps/alpha/htons.S +diff --git a/ports/sysdeps/alpha/jmpbuf-offsets.h b/sysdeps/alpha/jmpbuf-offsets.h +similarity index 100% +rename from ports/sysdeps/alpha/jmpbuf-offsets.h +rename to sysdeps/alpha/jmpbuf-offsets.h +diff --git a/ports/sysdeps/alpha/jmpbuf-unwind.h b/sysdeps/alpha/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/alpha/jmpbuf-unwind.h +rename to sysdeps/alpha/jmpbuf-unwind.h +diff --git a/ports/sysdeps/alpha/ldiv.S b/sysdeps/alpha/ldiv.S +similarity index 100% +rename from ports/sysdeps/alpha/ldiv.S +rename to sysdeps/alpha/ldiv.S +diff --git a/ports/sysdeps/alpha/ldsodefs.h b/sysdeps/alpha/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/alpha/ldsodefs.h +rename to sysdeps/alpha/ldsodefs.h +diff --git a/ports/sysdeps/alpha/libc-tls.c b/sysdeps/alpha/libc-tls.c +similarity index 100% +rename from ports/sysdeps/alpha/libc-tls.c +rename to sysdeps/alpha/libc-tls.c +diff --git a/ports/sysdeps/alpha/lldiv.S b/sysdeps/alpha/lldiv.S +similarity index 100% +rename from ports/sysdeps/alpha/lldiv.S +rename to sysdeps/alpha/lldiv.S +diff --git a/ports/sysdeps/alpha/lshift.S b/sysdeps/alpha/lshift.S +similarity index 100% +rename from ports/sysdeps/alpha/lshift.S +rename to sysdeps/alpha/lshift.S +diff --git a/ports/sysdeps/alpha/machine-gmon.h b/sysdeps/alpha/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/alpha/machine-gmon.h +rename to sysdeps/alpha/machine-gmon.h +diff --git a/ports/sysdeps/alpha/memchr.c b/sysdeps/alpha/memchr.c +similarity index 100% +rename from ports/sysdeps/alpha/memchr.c +rename to sysdeps/alpha/memchr.c +diff --git a/ports/sysdeps/alpha/memset.S b/sysdeps/alpha/memset.S +similarity index 100% +rename from ports/sysdeps/alpha/memset.S +rename to sysdeps/alpha/memset.S +diff --git a/ports/sysdeps/alpha/memusage.h b/sysdeps/alpha/memusage.h +similarity index 100% +rename from ports/sysdeps/alpha/memusage.h +rename to sysdeps/alpha/memusage.h +diff --git a/ports/sysdeps/alpha/mul_1.S b/sysdeps/alpha/mul_1.S +similarity index 100% +rename from ports/sysdeps/alpha/mul_1.S +rename to sysdeps/alpha/mul_1.S +diff --git a/ports/sysdeps/alpha/nptl/Makefile b/sysdeps/alpha/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/alpha/nptl/Makefile +rename to sysdeps/alpha/nptl/Makefile +diff --git a/ports/sysdeps/alpha/nptl/pthread_spin_lock.S b/sysdeps/alpha/nptl/pthread_spin_lock.S +similarity index 100% +rename from ports/sysdeps/alpha/nptl/pthread_spin_lock.S +rename to sysdeps/alpha/nptl/pthread_spin_lock.S +diff --git a/ports/sysdeps/alpha/nptl/pthread_spin_trylock.S b/sysdeps/alpha/nptl/pthread_spin_trylock.S +similarity index 100% +rename from ports/sysdeps/alpha/nptl/pthread_spin_trylock.S +rename to sysdeps/alpha/nptl/pthread_spin_trylock.S +diff --git a/ports/sysdeps/alpha/nptl/pthreaddef.h b/sysdeps/alpha/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/alpha/nptl/pthreaddef.h +rename to sysdeps/alpha/nptl/pthreaddef.h +diff --git a/ports/sysdeps/alpha/nptl/tcb-offsets.sym b/sysdeps/alpha/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/alpha/nptl/tcb-offsets.sym +rename to sysdeps/alpha/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/alpha/nptl/tls.h b/sysdeps/alpha/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/alpha/nptl/tls.h +rename to sysdeps/alpha/nptl/tls.h +diff --git a/ports/sysdeps/alpha/nscd-types.h b/sysdeps/alpha/nscd-types.h +similarity index 100% +rename from ports/sysdeps/alpha/nscd-types.h +rename to sysdeps/alpha/nscd-types.h +diff --git a/ports/sysdeps/alpha/preconfigure b/sysdeps/alpha/preconfigure +similarity index 100% +rename from ports/sysdeps/alpha/preconfigure +rename to sysdeps/alpha/preconfigure +diff --git a/ports/sysdeps/alpha/rawmemchr.S b/sysdeps/alpha/rawmemchr.S +similarity index 100% +rename from ports/sysdeps/alpha/rawmemchr.S +rename to sysdeps/alpha/rawmemchr.S +diff --git a/ports/sysdeps/alpha/reml.S b/sysdeps/alpha/reml.S +similarity index 100% +rename from ports/sysdeps/alpha/reml.S +rename to sysdeps/alpha/reml.S +diff --git a/ports/sysdeps/alpha/remlu.S b/sysdeps/alpha/remlu.S +similarity index 100% +rename from ports/sysdeps/alpha/remlu.S +rename to sysdeps/alpha/remlu.S +diff --git a/ports/sysdeps/alpha/remq.S b/sysdeps/alpha/remq.S +similarity index 100% +rename from ports/sysdeps/alpha/remq.S +rename to sysdeps/alpha/remq.S +diff --git a/ports/sysdeps/alpha/remqu.S b/sysdeps/alpha/remqu.S +similarity index 100% +rename from ports/sysdeps/alpha/remqu.S +rename to sysdeps/alpha/remqu.S +diff --git a/ports/sysdeps/alpha/rshift.S b/sysdeps/alpha/rshift.S +similarity index 100% +rename from ports/sysdeps/alpha/rshift.S +rename to sysdeps/alpha/rshift.S +diff --git a/ports/sysdeps/alpha/setjmp.S b/sysdeps/alpha/setjmp.S +similarity index 100% +rename from ports/sysdeps/alpha/setjmp.S +rename to sysdeps/alpha/setjmp.S +diff --git a/ports/sysdeps/alpha/shlib-versions b/sysdeps/alpha/shlib-versions +similarity index 100% +rename from ports/sysdeps/alpha/shlib-versions +rename to sysdeps/alpha/shlib-versions +diff --git a/ports/sysdeps/alpha/soft-fp/Makefile b/sysdeps/alpha/soft-fp/Makefile +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/Makefile +rename to sysdeps/alpha/soft-fp/Makefile +diff --git a/ports/sysdeps/alpha/soft-fp/Versions b/sysdeps/alpha/soft-fp/Versions +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/Versions +rename to sysdeps/alpha/soft-fp/Versions +diff --git a/ports/sysdeps/alpha/soft-fp/e_sqrtl.c b/sysdeps/alpha/soft-fp/e_sqrtl.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/e_sqrtl.c +rename to sysdeps/alpha/soft-fp/e_sqrtl.c +diff --git a/ports/sysdeps/alpha/soft-fp/local-soft-fp.h b/sysdeps/alpha/soft-fp/local-soft-fp.h +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/local-soft-fp.h +rename to sysdeps/alpha/soft-fp/local-soft-fp.h +diff --git a/ports/sysdeps/alpha/soft-fp/ots_add.c b/sysdeps/alpha/soft-fp/ots_add.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_add.c +rename to sysdeps/alpha/soft-fp/ots_add.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cmp.c b/sysdeps/alpha/soft-fp/ots_cmp.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cmp.c +rename to sysdeps/alpha/soft-fp/ots_cmp.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cmpe.c b/sysdeps/alpha/soft-fp/ots_cmpe.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cmpe.c +rename to sysdeps/alpha/soft-fp/ots_cmpe.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cvtqux.c b/sysdeps/alpha/soft-fp/ots_cvtqux.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cvtqux.c +rename to sysdeps/alpha/soft-fp/ots_cvtqux.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cvtqx.c b/sysdeps/alpha/soft-fp/ots_cvtqx.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cvtqx.c +rename to sysdeps/alpha/soft-fp/ots_cvtqx.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cvttx.c b/sysdeps/alpha/soft-fp/ots_cvttx.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cvttx.c +rename to sysdeps/alpha/soft-fp/ots_cvttx.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cvtxq.c b/sysdeps/alpha/soft-fp/ots_cvtxq.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cvtxq.c +rename to sysdeps/alpha/soft-fp/ots_cvtxq.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_cvtxt.c b/sysdeps/alpha/soft-fp/ots_cvtxt.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_cvtxt.c +rename to sysdeps/alpha/soft-fp/ots_cvtxt.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_div.c b/sysdeps/alpha/soft-fp/ots_div.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_div.c +rename to sysdeps/alpha/soft-fp/ots_div.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_mul.c b/sysdeps/alpha/soft-fp/ots_mul.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_mul.c +rename to sysdeps/alpha/soft-fp/ots_mul.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_nintxq.c b/sysdeps/alpha/soft-fp/ots_nintxq.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_nintxq.c +rename to sysdeps/alpha/soft-fp/ots_nintxq.c +diff --git a/ports/sysdeps/alpha/soft-fp/ots_sub.c b/sysdeps/alpha/soft-fp/ots_sub.c +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/ots_sub.c +rename to sysdeps/alpha/soft-fp/ots_sub.c +diff --git a/ports/sysdeps/alpha/soft-fp/sfp-machine.h b/sysdeps/alpha/soft-fp/sfp-machine.h +similarity index 100% +rename from ports/sysdeps/alpha/soft-fp/sfp-machine.h +rename to sysdeps/alpha/soft-fp/sfp-machine.h +diff --git a/ports/sysdeps/alpha/sotruss-lib.c b/sysdeps/alpha/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/alpha/sotruss-lib.c +rename to sysdeps/alpha/sotruss-lib.c +diff --git a/ports/sysdeps/alpha/stackinfo.h b/sysdeps/alpha/stackinfo.h +similarity index 100% +rename from ports/sysdeps/alpha/stackinfo.h +rename to sysdeps/alpha/stackinfo.h +diff --git a/ports/sysdeps/alpha/start.S b/sysdeps/alpha/start.S +similarity index 100% +rename from ports/sysdeps/alpha/start.S +rename to sysdeps/alpha/start.S +diff --git a/ports/sysdeps/alpha/stpcpy.S b/sysdeps/alpha/stpcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/stpcpy.S +rename to sysdeps/alpha/stpcpy.S +diff --git a/ports/sysdeps/alpha/stpncpy.S b/sysdeps/alpha/stpncpy.S +similarity index 100% +rename from ports/sysdeps/alpha/stpncpy.S +rename to sysdeps/alpha/stpncpy.S +diff --git a/ports/sysdeps/alpha/strcat.S b/sysdeps/alpha/strcat.S +similarity index 100% +rename from ports/sysdeps/alpha/strcat.S +rename to sysdeps/alpha/strcat.S +diff --git a/ports/sysdeps/alpha/strchr.S b/sysdeps/alpha/strchr.S +similarity index 100% +rename from ports/sysdeps/alpha/strchr.S +rename to sysdeps/alpha/strchr.S +diff --git a/ports/sysdeps/alpha/strcmp.S b/sysdeps/alpha/strcmp.S +similarity index 100% +rename from ports/sysdeps/alpha/strcmp.S +rename to sysdeps/alpha/strcmp.S +diff --git a/ports/sysdeps/alpha/strcpy.S b/sysdeps/alpha/strcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/strcpy.S +rename to sysdeps/alpha/strcpy.S +diff --git a/ports/sysdeps/alpha/strlen.S b/sysdeps/alpha/strlen.S +similarity index 100% +rename from ports/sysdeps/alpha/strlen.S +rename to sysdeps/alpha/strlen.S +diff --git a/ports/sysdeps/alpha/strncat.S b/sysdeps/alpha/strncat.S +similarity index 100% +rename from ports/sysdeps/alpha/strncat.S +rename to sysdeps/alpha/strncat.S +diff --git a/ports/sysdeps/alpha/strncmp.S b/sysdeps/alpha/strncmp.S +similarity index 100% +rename from ports/sysdeps/alpha/strncmp.S +rename to sysdeps/alpha/strncmp.S +diff --git a/ports/sysdeps/alpha/strncpy.S b/sysdeps/alpha/strncpy.S +similarity index 100% +rename from ports/sysdeps/alpha/strncpy.S +rename to sysdeps/alpha/strncpy.S +diff --git a/ports/sysdeps/alpha/strrchr.S b/sysdeps/alpha/strrchr.S +similarity index 100% +rename from ports/sysdeps/alpha/strrchr.S +rename to sysdeps/alpha/strrchr.S +diff --git a/ports/sysdeps/alpha/stxcpy.S b/sysdeps/alpha/stxcpy.S +similarity index 100% +rename from ports/sysdeps/alpha/stxcpy.S +rename to sysdeps/alpha/stxcpy.S +diff --git a/ports/sysdeps/alpha/stxncpy.S b/sysdeps/alpha/stxncpy.S +similarity index 100% +rename from ports/sysdeps/alpha/stxncpy.S +rename to sysdeps/alpha/stxncpy.S +diff --git a/ports/sysdeps/alpha/sub_n.S b/sysdeps/alpha/sub_n.S +similarity index 100% +rename from ports/sysdeps/alpha/sub_n.S +rename to sysdeps/alpha/sub_n.S +diff --git a/ports/sysdeps/alpha/submul_1.S b/sysdeps/alpha/submul_1.S +similarity index 100% +rename from ports/sysdeps/alpha/submul_1.S +rename to sysdeps/alpha/submul_1.S +diff --git a/ports/sysdeps/alpha/tininess.h b/sysdeps/alpha/tininess.h +similarity index 100% +rename from ports/sysdeps/alpha/tininess.h +rename to sysdeps/alpha/tininess.h +diff --git a/ports/sysdeps/alpha/tls-macros.h b/sysdeps/alpha/tls-macros.h +similarity index 100% +rename from ports/sysdeps/alpha/tls-macros.h +rename to sysdeps/alpha/tls-macros.h +diff --git a/ports/sysdeps/alpha/tst-audit.h b/sysdeps/alpha/tst-audit.h +similarity index 100% +rename from ports/sysdeps/alpha/tst-audit.h +rename to sysdeps/alpha/tst-audit.h +diff --git a/ports/sysdeps/alpha/udiv_qrnnd.S b/sysdeps/alpha/udiv_qrnnd.S +similarity index 100% +rename from ports/sysdeps/alpha/udiv_qrnnd.S +rename to sysdeps/alpha/udiv_qrnnd.S +diff --git a/ports/sysdeps/unix/alpha/Makefile b/sysdeps/unix/alpha/Makefile +similarity index 100% +rename from ports/sysdeps/unix/alpha/Makefile +rename to sysdeps/unix/alpha/Makefile +diff --git a/ports/sysdeps/unix/alpha/getegid.S b/sysdeps/unix/alpha/getegid.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/getegid.S +rename to sysdeps/unix/alpha/getegid.S +diff --git a/ports/sysdeps/unix/alpha/geteuid.S b/sysdeps/unix/alpha/geteuid.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/geteuid.S +rename to sysdeps/unix/alpha/geteuid.S +diff --git a/ports/sysdeps/unix/alpha/getppid.S b/sysdeps/unix/alpha/getppid.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/getppid.S +rename to sysdeps/unix/alpha/getppid.S +diff --git a/ports/sysdeps/unix/alpha/pipe.S b/sysdeps/unix/alpha/pipe.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/pipe.S +rename to sysdeps/unix/alpha/pipe.S +diff --git a/ports/sysdeps/unix/alpha/rt-sysdep.S b/sysdeps/unix/alpha/rt-sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/rt-sysdep.S +rename to sysdeps/unix/alpha/rt-sysdep.S +diff --git a/ports/sysdeps/unix/alpha/sysdep.S b/sysdeps/unix/alpha/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/alpha/sysdep.S +rename to sysdeps/unix/alpha/sysdep.S +diff --git a/ports/sysdeps/unix/alpha/sysdep.h b/sysdeps/unix/alpha/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/alpha/sysdep.h +rename to sysdeps/unix/alpha/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/Implies b/sysdeps/unix/sysv/linux/alpha/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/Implies +rename to sysdeps/unix/sysv/linux/alpha/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/Makefile b/sysdeps/unix/sysv/linux/alpha/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/Makefile +rename to sysdeps/unix/sysv/linux/alpha/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/Versions b/sysdeps/unix/sysv/linux/alpha/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/Versions +rename to sysdeps/unix/sysv/linux/alpha/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/____longjmp_chk.S b/sysdeps/unix/sysv/linux/alpha/____longjmp_chk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/____longjmp_chk.S +rename to sysdeps/unix/sysv/linux/alpha/____longjmp_chk.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/a.out.h b/sysdeps/unix/sysv/linux/alpha/a.out.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/a.out.h +rename to sysdeps/unix/sysv/linux/alpha/a.out.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/adjtime.c b/sysdeps/unix/sysv/linux/alpha/adjtime.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/adjtime.c +rename to sysdeps/unix/sysv/linux/alpha/adjtime.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h b/sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h +rename to sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/alpha/regdef.h b/sysdeps/unix/sysv/linux/alpha/alpha/regdef.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/alpha/regdef.h +rename to sysdeps/unix/sysv/linux/alpha/alpha/regdef.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies b/sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies +rename to sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies b/sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies +rename to sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/a.out.h b/sysdeps/unix/sysv/linux/alpha/bits/a.out.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/a.out.h +rename to sysdeps/unix/sysv/linux/alpha/bits/a.out.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/dirent.h b/sysdeps/unix/sysv/linux/alpha/bits/dirent.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/dirent.h +rename to sysdeps/unix/sysv/linux/alpha/bits/dirent.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/elfclass.h b/sysdeps/unix/sysv/linux/alpha/bits/elfclass.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/elfclass.h +rename to sysdeps/unix/sysv/linux/alpha/bits/elfclass.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/epoll.h b/sysdeps/unix/sysv/linux/alpha/bits/epoll.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/epoll.h +rename to sysdeps/unix/sysv/linux/alpha/bits/epoll.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/errno.h b/sysdeps/unix/sysv/linux/alpha/bits/errno.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/errno.h +rename to sysdeps/unix/sysv/linux/alpha/bits/errno.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/eventfd.h b/sysdeps/unix/sysv/linux/alpha/bits/eventfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/eventfd.h +rename to sysdeps/unix/sysv/linux/alpha/bits/eventfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h b/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/alpha/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/inotify.h b/sysdeps/unix/sysv/linux/alpha/bits/inotify.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/inotify.h +rename to sysdeps/unix/sysv/linux/alpha/bits/inotify.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/ioctls.h b/sysdeps/unix/sysv/linux/alpha/bits/ioctls.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/ioctls.h +rename to sysdeps/unix/sysv/linux/alpha/bits/ioctls.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h b/sysdeps/unix/sysv/linux/alpha/bits/ipc.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h +rename to sysdeps/unix/sysv/linux/alpha/bits/ipc.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h b/sysdeps/unix/sysv/linux/alpha/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h +rename to sysdeps/unix/sysv/linux/alpha/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h b/sysdeps/unix/sysv/linux/alpha/bits/msq.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h +rename to sysdeps/unix/sysv/linux/alpha/bits/msq.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/netdb.h b/sysdeps/unix/sysv/linux/alpha/bits/netdb.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/netdb.h +rename to sysdeps/unix/sysv/linux/alpha/bits/netdb.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/resource.h b/sysdeps/unix/sysv/linux/alpha/bits/resource.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/resource.h +rename to sysdeps/unix/sysv/linux/alpha/bits/resource.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h b/sysdeps/unix/sysv/linux/alpha/bits/sem.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h +rename to sysdeps/unix/sysv/linux/alpha/bits/sem.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h b/sysdeps/unix/sysv/linux/alpha/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h +rename to sysdeps/unix/sysv/linux/alpha/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/sigaction.h b/sysdeps/unix/sysv/linux/alpha/bits/sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/sigaction.h +rename to sysdeps/unix/sysv/linux/alpha/bits/sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h b/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h +rename to sysdeps/unix/sysv/linux/alpha/bits/siginfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/signalfd.h b/sysdeps/unix/sysv/linux/alpha/bits/signalfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/signalfd.h +rename to sysdeps/unix/sysv/linux/alpha/bits/signalfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/signum.h b/sysdeps/unix/sysv/linux/alpha/bits/signum.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/signum.h +rename to sysdeps/unix/sysv/linux/alpha/bits/signum.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/sigstack.h b/sysdeps/unix/sysv/linux/alpha/bits/sigstack.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/sigstack.h +rename to sysdeps/unix/sysv/linux/alpha/bits/sigstack.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/socket_type.h b/sysdeps/unix/sysv/linux/alpha/bits/socket_type.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/socket_type.h +rename to sysdeps/unix/sysv/linux/alpha/bits/socket_type.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h b/sysdeps/unix/sysv/linux/alpha/bits/stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h +rename to sysdeps/unix/sysv/linux/alpha/bits/stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/statfs.h b/sysdeps/unix/sysv/linux/alpha/bits/statfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/statfs.h +rename to sysdeps/unix/sysv/linux/alpha/bits/statfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/termios.h b/sysdeps/unix/sysv/linux/alpha/bits/termios.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/termios.h +rename to sysdeps/unix/sysv/linux/alpha/bits/termios.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/timerfd.h b/sysdeps/unix/sysv/linux/alpha/bits/timerfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/timerfd.h +rename to sysdeps/unix/sysv/linux/alpha/bits/timerfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h b/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h +rename to sysdeps/unix/sysv/linux/alpha/bits/typesizes.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/wordsize.h b/sysdeps/unix/sysv/linux/alpha/bits/wordsize.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/bits/wordsize.h +rename to sysdeps/unix/sysv/linux/alpha/bits/wordsize.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/brk.S b/sysdeps/unix/sysv/linux/alpha/brk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/brk.S +rename to sysdeps/unix/sysv/linux/alpha/brk.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/clone.S b/sysdeps/unix/sysv/linux/alpha/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/clone.S +rename to sysdeps/unix/sysv/linux/alpha/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/configure b/sysdeps/unix/sysv/linux/alpha/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/configure +rename to sysdeps/unix/sysv/linux/alpha/configure +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/configure.in b/sysdeps/unix/sysv/linux/alpha/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/configure.in +rename to sysdeps/unix/sysv/linux/alpha/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/creat.c b/sysdeps/unix/sysv/linux/alpha/creat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/creat.c +rename to sysdeps/unix/sysv/linux/alpha/creat.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/dl-auxv.h b/sysdeps/unix/sysv/linux/alpha/dl-auxv.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/dl-auxv.h +rename to sysdeps/unix/sysv/linux/alpha/dl-auxv.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/dl-brk.S b/sysdeps/unix/sysv/linux/alpha/dl-brk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/dl-brk.S +rename to sysdeps/unix/sysv/linux/alpha/dl-brk.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/dl-fxstatat64.c b/sysdeps/unix/sysv/linux/alpha/dl-fxstatat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/dl-fxstatat64.c +rename to sysdeps/unix/sysv/linux/alpha/dl-fxstatat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/dl-support.c b/sysdeps/unix/sysv/linux/alpha/dl-support.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/dl-support.c +rename to sysdeps/unix/sysv/linux/alpha/dl-support.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/dl-sysdep.c b/sysdeps/unix/sysv/linux/alpha/dl-sysdep.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/dl-sysdep.c +rename to sysdeps/unix/sysv/linux/alpha/dl-sysdep.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c b/sysdeps/unix/sysv/linux/alpha/fdatasync.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fdatasync.c +rename to sysdeps/unix/sysv/linux/alpha/fdatasync.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fpu/Implies b/sysdeps/unix/sysv/linux/alpha/fpu/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fpu/Implies +rename to sysdeps/unix/sysv/linux/alpha/fpu/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fraiseexcpt.S b/sysdeps/unix/sysv/linux/alpha/fraiseexcpt.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fraiseexcpt.S +rename to sysdeps/unix/sysv/linux/alpha/fraiseexcpt.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fstatfs64.c b/sysdeps/unix/sysv/linux/alpha/fstatfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fstatfs64.c +rename to sysdeps/unix/sysv/linux/alpha/fstatfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fstatvfs.c b/sysdeps/unix/sysv/linux/alpha/fstatvfs.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fstatvfs.c +rename to sysdeps/unix/sysv/linux/alpha/fstatvfs.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fstatvfs64.c b/sysdeps/unix/sysv/linux/alpha/fstatvfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fstatvfs64.c +rename to sysdeps/unix/sysv/linux/alpha/fstatvfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fxstat.c b/sysdeps/unix/sysv/linux/alpha/fxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fxstat.c +rename to sysdeps/unix/sysv/linux/alpha/fxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c b/sysdeps/unix/sysv/linux/alpha/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c +rename to sysdeps/unix/sysv/linux/alpha/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/getclktck.c b/sysdeps/unix/sysv/linux/alpha/getclktck.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/getclktck.c +rename to sysdeps/unix/sysv/linux/alpha/getclktck.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/getcontext.S b/sysdeps/unix/sysv/linux/alpha/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/getcontext.S +rename to sysdeps/unix/sysv/linux/alpha/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/getdents.c b/sysdeps/unix/sysv/linux/alpha/getdents.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/getdents.c +rename to sysdeps/unix/sysv/linux/alpha/getdents.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/getdents64.c b/sysdeps/unix/sysv/linux/alpha/getdents64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/getdents64.c +rename to sysdeps/unix/sysv/linux/alpha/getdents64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/gethostname.c b/sysdeps/unix/sysv/linux/alpha/gethostname.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/gethostname.c +rename to sysdeps/unix/sysv/linux/alpha/gethostname.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/getsysstats.c b/sysdeps/unix/sysv/linux/alpha/getsysstats.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/getsysstats.c +rename to sysdeps/unix/sysv/linux/alpha/getsysstats.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/glob.c b/sysdeps/unix/sysv/linux/alpha/glob.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/glob.c +rename to sysdeps/unix/sysv/linux/alpha/glob.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S b/sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S +rename to sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S b/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S +rename to sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/internal_statvfs64.c b/sysdeps/unix/sysv/linux/alpha/internal_statvfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/internal_statvfs64.c +rename to sysdeps/unix/sysv/linux/alpha/internal_statvfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/ioperm.c b/sysdeps/unix/sysv/linux/alpha/ioperm.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/ioperm.c +rename to sysdeps/unix/sysv/linux/alpha/ioperm.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/ipc_priv.h b/sysdeps/unix/sysv/linux/alpha/ipc_priv.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/ipc_priv.h +rename to sysdeps/unix/sysv/linux/alpha/ipc_priv.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/kernel-features.h +rename to sysdeps/unix/sysv/linux/alpha/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h b/sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h +rename to sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h b/sysdeps/unix/sysv/linux/alpha/kernel_stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h +rename to sysdeps/unix/sysv/linux/alpha/kernel_stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h b/sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h +rename to sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel_termios.h b/sysdeps/unix/sysv/linux/alpha/kernel_termios.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/kernel_termios.h +rename to sysdeps/unix/sysv/linux/alpha/kernel_termios.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/lxstat.c b/sysdeps/unix/sysv/linux/alpha/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/lxstat.c +rename to sysdeps/unix/sysv/linux/alpha/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/makecontext.S b/sysdeps/unix/sysv/linux/alpha/makecontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/makecontext.S +rename to sysdeps/unix/sysv/linux/alpha/makecontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c b/sysdeps/unix/sysv/linux/alpha/msgctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/msgctl.c +rename to sysdeps/unix/sysv/linux/alpha/msgctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nldbl-abi.h b/sysdeps/unix/sysv/linux/alpha/nldbl-abi.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nldbl-abi.h +rename to sysdeps/unix/sysv/linux/alpha/nldbl-abi.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/Makefile b/sysdeps/unix/sysv/linux/alpha/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/Makefile +rename to sysdeps/unix/sysv/linux/alpha/nptl/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/Versions b/sysdeps/unix/sysv/linux/alpha/nptl/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/Versions +rename to sysdeps/unix/sysv/linux/alpha/nptl/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/aio_cancel.c b/sysdeps/unix/sysv/linux/alpha/nptl/aio_cancel.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/aio_cancel.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/aio_cancel.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/local_lim.h b/sysdeps/unix/sysv/linux/alpha/nptl/bits/local_lim.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/local_lim.h +rename to sysdeps/unix/sysv/linux/alpha/nptl/bits/local_lim.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/alpha/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/alpha/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/c++-types.data b/sysdeps/unix/sysv/linux/alpha/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/alpha/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/clone.S b/sysdeps/unix/sysv/linux/alpha/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/clone.S +rename to sysdeps/unix/sysv/linux/alpha/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/createthread.c b/sysdeps/unix/sysv/linux/alpha/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/fork.c b/sysdeps/unix/sysv/linux/alpha/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/fork.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libm.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/librt.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/alpha/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/alpha/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/localplt.data b/sysdeps/unix/sysv/linux/alpha/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/alpha/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/alpha/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/alpha/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/alpha/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_create.c b/sysdeps/unix/sysv/linux/alpha/nptl/timer_create.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_create.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/timer_create.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_delete.c b/sysdeps/unix/sysv/linux/alpha/nptl/timer_delete.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_delete.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/timer_delete.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_getoverr.c b/sysdeps/unix/sysv/linux/alpha/nptl/timer_getoverr.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_getoverr.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/timer_getoverr.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_gettime.c b/sysdeps/unix/sysv/linux/alpha/nptl/timer_gettime.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_gettime.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/timer_gettime.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_settime.c b/sysdeps/unix/sysv/linux/alpha/nptl/timer_settime.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/timer_settime.c +rename to sysdeps/unix/sysv/linux/alpha/nptl/timer_settime.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S b/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/alpha/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/oldglob.c b/sysdeps/unix/sysv/linux/alpha/oldglob.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/oldglob.c +rename to sysdeps/unix/sysv/linux/alpha/oldglob.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/pipe.S b/sysdeps/unix/sysv/linux/alpha/pipe.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/pipe.S +rename to sysdeps/unix/sysv/linux/alpha/pipe.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/register-dump.h b/sysdeps/unix/sysv/linux/alpha/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/register-dump.h +rename to sysdeps/unix/sysv/linux/alpha/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S b/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S +rename to sysdeps/unix/sysv/linux/alpha/rt_sigaction.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c b/sysdeps/unix/sysv/linux/alpha/semctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/semctl.c +rename to sysdeps/unix/sysv/linux/alpha/semctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/setcontext.S b/sysdeps/unix/sysv/linux/alpha/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/setcontext.S +rename to sysdeps/unix/sysv/linux/alpha/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/setfpucw.c b/sysdeps/unix/sysv/linux/alpha/setfpucw.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/setfpucw.c +rename to sysdeps/unix/sysv/linux/alpha/setfpucw.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c b/sysdeps/unix/sysv/linux/alpha/shmctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/shmctl.c +rename to sysdeps/unix/sysv/linux/alpha/shmctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sigaction.c b/sysdeps/unix/sysv/linux/alpha/sigaction.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sigaction.c +rename to sysdeps/unix/sysv/linux/alpha/sigaction.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h b/sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sigprocmask.c b/sysdeps/unix/sysv/linux/alpha/sigprocmask.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sigprocmask.c +rename to sysdeps/unix/sysv/linux/alpha/sigprocmask.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sigsuspend.S b/sysdeps/unix/sysv/linux/alpha/sigsuspend.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sigsuspend.S +rename to sysdeps/unix/sysv/linux/alpha/sigsuspend.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sizes.h b/sysdeps/unix/sysv/linux/alpha/sizes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sizes.h +rename to sysdeps/unix/sysv/linux/alpha/sizes.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/statfs64.c b/sysdeps/unix/sysv/linux/alpha/statfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/statfs64.c +rename to sysdeps/unix/sysv/linux/alpha/statfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/statvfs.c b/sysdeps/unix/sysv/linux/alpha/statvfs.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/statvfs.c +rename to sysdeps/unix/sysv/linux/alpha/statvfs.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/statvfs64.c b/sysdeps/unix/sysv/linux/alpha/statvfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/statvfs64.c +rename to sysdeps/unix/sysv/linux/alpha/statvfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/swapcontext.S b/sysdeps/unix/sysv/linux/alpha/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/swapcontext.S +rename to sysdeps/unix/sysv/linux/alpha/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sys/acct.h b/sysdeps/unix/sysv/linux/alpha/sys/acct.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sys/acct.h +rename to sysdeps/unix/sysv/linux/alpha/sys/acct.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sys/io.h b/sysdeps/unix/sysv/linux/alpha/sys/io.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sys/io.h +rename to sysdeps/unix/sysv/linux/alpha/sys/io.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sys/procfs.h b/sysdeps/unix/sysv/linux/alpha/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sys/procfs.h +rename to sysdeps/unix/sysv/linux/alpha/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sys/ucontext.h b/sysdeps/unix/sysv/linux/alpha/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/alpha/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sys/user.h b/sysdeps/unix/sysv/linux/alpha/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sys/user.h +rename to sysdeps/unix/sysv/linux/alpha/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/syscall.S b/sysdeps/unix/sysv/linux/alpha/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/syscall.S +rename to sysdeps/unix/sysv/linux/alpha/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/syscalls.list b/sysdeps/unix/sysv/linux/alpha/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/syscalls.list +rename to sysdeps/unix/sysv/linux/alpha/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sysconf.c b/sysdeps/unix/sysv/linux/alpha/sysconf.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sysconf.c +rename to sysdeps/unix/sysv/linux/alpha/sysconf.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/sysdep.h b/sysdeps/unix/sysv/linux/alpha/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/sysdep.h +rename to sysdeps/unix/sysv/linux/alpha/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym b/sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym +rename to sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/wordexp.c b/sysdeps/unix/sysv/linux/alpha/wordexp.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/wordexp.c +rename to sysdeps/unix/sysv/linux/alpha/wordexp.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/xstat.c b/sysdeps/unix/sysv/linux/alpha/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/xstat.c +rename to sysdeps/unix/sysv/linux/alpha/xstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c b/sysdeps/unix/sysv/linux/alpha/xstatconv.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c +rename to sysdeps/unix/sysv/linux/alpha/xstatconv.c +diff --git a/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.h b/sysdeps/unix/sysv/linux/alpha/xstatconv.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/alpha/xstatconv.h +rename to sysdeps/unix/sysv/linux/alpha/xstatconv.h diff --git a/SOURCES/glibc-rh1505492-ports-move-arm.patch b/SOURCES/glibc-rh1505492-ports-move-arm.patch new file mode 100644 index 0000000..3a19d5c --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-arm.patch @@ -0,0 +1,959 @@ +Recreation of this upstream patch, using the indicated git commands: + +commit c6bfe5c4d756913297db03f55e42016d1c48918c +Author: Joseph Myers +Date: Sat Feb 8 01:49:39 2014 +0000 + + Move arm from ports to libc. + + I've moved the ARM port from ports to the main sysdeps hierarchy. + Beyond the README update, the move of the files was simply + + git mv ports/sysdeps/arm sysdeps/arm + git mv ports/sysdeps/unix/arm sysdeps/unix/arm + git mv ports/sysdeps/unix/sysv/linux/arm sysdeps/unix/sysv/linux/arm + +diff --git a/ports/sysdeps/arm/Implies b/sysdeps/arm/Implies +similarity index 100% +rename from ports/sysdeps/arm/Implies +rename to sysdeps/arm/Implies +diff --git a/ports/sysdeps/arm/Makefile b/sysdeps/arm/Makefile +similarity index 100% +rename from ports/sysdeps/arm/Makefile +rename to sysdeps/arm/Makefile +diff --git a/ports/sysdeps/arm/Versions b/sysdeps/arm/Versions +similarity index 100% +rename from ports/sysdeps/arm/Versions +rename to sysdeps/arm/Versions +diff --git a/ports/sysdeps/arm/__longjmp.S b/sysdeps/arm/__longjmp.S +similarity index 100% +rename from ports/sysdeps/arm/__longjmp.S +rename to sysdeps/arm/__longjmp.S +diff --git a/ports/sysdeps/arm/abi-note.S b/sysdeps/arm/abi-note.S +similarity index 100% +rename from ports/sysdeps/arm/abi-note.S +rename to sysdeps/arm/abi-note.S +diff --git a/ports/sysdeps/arm/aeabi_assert.c b/sysdeps/arm/aeabi_assert.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_assert.c +rename to sysdeps/arm/aeabi_assert.c +diff --git a/ports/sysdeps/arm/aeabi_atexit.c b/sysdeps/arm/aeabi_atexit.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_atexit.c +rename to sysdeps/arm/aeabi_atexit.c +diff --git a/ports/sysdeps/arm/aeabi_errno_addr.c b/sysdeps/arm/aeabi_errno_addr.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_errno_addr.c +rename to sysdeps/arm/aeabi_errno_addr.c +diff --git a/ports/sysdeps/arm/aeabi_lcsts.c b/sysdeps/arm/aeabi_lcsts.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_lcsts.c +rename to sysdeps/arm/aeabi_lcsts.c +diff --git a/ports/sysdeps/arm/aeabi_localeconv.c b/sysdeps/arm/aeabi_localeconv.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_localeconv.c +rename to sysdeps/arm/aeabi_localeconv.c +diff --git a/ports/sysdeps/arm/aeabi_math.c b/sysdeps/arm/aeabi_math.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_math.c +rename to sysdeps/arm/aeabi_math.c +diff --git a/ports/sysdeps/arm/aeabi_mb_cur_max.c b/sysdeps/arm/aeabi_mb_cur_max.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_mb_cur_max.c +rename to sysdeps/arm/aeabi_mb_cur_max.c +diff --git a/ports/sysdeps/arm/aeabi_memclr.c b/sysdeps/arm/aeabi_memclr.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_memclr.c +rename to sysdeps/arm/aeabi_memclr.c +diff --git a/ports/sysdeps/arm/aeabi_memcpy.c b/sysdeps/arm/aeabi_memcpy.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_memcpy.c +rename to sysdeps/arm/aeabi_memcpy.c +diff --git a/ports/sysdeps/arm/aeabi_memmove.c b/sysdeps/arm/aeabi_memmove.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_memmove.c +rename to sysdeps/arm/aeabi_memmove.c +diff --git a/ports/sysdeps/arm/aeabi_memset.c b/sysdeps/arm/aeabi_memset.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_memset.c +rename to sysdeps/arm/aeabi_memset.c +diff --git a/ports/sysdeps/arm/aeabi_sighandlers.S b/sysdeps/arm/aeabi_sighandlers.S +similarity index 100% +rename from ports/sysdeps/arm/aeabi_sighandlers.S +rename to sysdeps/arm/aeabi_sighandlers.S +diff --git a/ports/sysdeps/arm/aeabi_unwind_cpp_pr1.c b/sysdeps/arm/aeabi_unwind_cpp_pr1.c +similarity index 100% +rename from ports/sysdeps/arm/aeabi_unwind_cpp_pr1.c +rename to sysdeps/arm/aeabi_unwind_cpp_pr1.c +diff --git a/ports/sysdeps/arm/arm-features.h b/sysdeps/arm/arm-features.h +similarity index 100% +rename from ports/sysdeps/arm/arm-features.h +rename to sysdeps/arm/arm-features.h +diff --git a/ports/sysdeps/arm/arm-mcount.S b/sysdeps/arm/arm-mcount.S +similarity index 100% +rename from ports/sysdeps/arm/arm-mcount.S +rename to sysdeps/arm/arm-mcount.S +diff --git a/ports/sysdeps/arm/armv6t2/memchr.S b/sysdeps/arm/armv6t2/memchr.S +similarity index 100% +rename from ports/sysdeps/arm/armv6t2/memchr.S +rename to sysdeps/arm/armv6t2/memchr.S +diff --git a/ports/sysdeps/arm/armv7/Implies b/sysdeps/arm/armv7/Implies +similarity index 100% +rename from ports/sysdeps/arm/armv7/Implies +rename to sysdeps/arm/armv7/Implies +diff --git a/ports/sysdeps/arm/backtrace.c b/sysdeps/arm/backtrace.c +similarity index 100% +rename from ports/sysdeps/arm/backtrace.c +rename to sysdeps/arm/backtrace.c +diff --git a/ports/sysdeps/arm/bits/atomic.h b/sysdeps/arm/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/arm/bits/atomic.h +rename to sysdeps/arm/bits/atomic.h +diff --git a/ports/sysdeps/arm/bits/endian.h b/sysdeps/arm/bits/endian.h +similarity index 100% +rename from ports/sysdeps/arm/bits/endian.h +rename to sysdeps/arm/bits/endian.h +diff --git a/ports/sysdeps/arm/bits/fenv.h b/sysdeps/arm/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/arm/bits/fenv.h +rename to sysdeps/arm/bits/fenv.h +diff --git a/ports/sysdeps/arm/bits/link.h b/sysdeps/arm/bits/link.h +similarity index 100% +rename from ports/sysdeps/arm/bits/link.h +rename to sysdeps/arm/bits/link.h +diff --git a/ports/sysdeps/arm/bits/linkmap.h b/sysdeps/arm/bits/linkmap.h +similarity index 100% +rename from ports/sysdeps/arm/bits/linkmap.h +rename to sysdeps/arm/bits/linkmap.h +diff --git a/ports/sysdeps/arm/bits/mathdef.h b/sysdeps/arm/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/arm/bits/mathdef.h +rename to sysdeps/arm/bits/mathdef.h +diff --git a/ports/sysdeps/arm/bits/setjmp.h b/sysdeps/arm/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/arm/bits/setjmp.h +rename to sysdeps/arm/bits/setjmp.h +diff --git a/ports/sysdeps/arm/bsd-_setjmp.S b/sysdeps/arm/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/arm/bsd-_setjmp.S +rename to sysdeps/arm/bsd-_setjmp.S +diff --git a/ports/sysdeps/arm/bsd-setjmp.S b/sysdeps/arm/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/arm/bsd-setjmp.S +rename to sysdeps/arm/bsd-setjmp.S +diff --git a/ports/sysdeps/arm/configure b/sysdeps/arm/configure +similarity index 100% +rename from ports/sysdeps/arm/configure +rename to sysdeps/arm/configure +diff --git a/ports/sysdeps/arm/configure.in b/sysdeps/arm/configure.in +similarity index 100% +rename from ports/sysdeps/arm/configure.in +rename to sysdeps/arm/configure.in +diff --git a/ports/sysdeps/arm/crti.S b/sysdeps/arm/crti.S +similarity index 100% +rename from ports/sysdeps/arm/crti.S +rename to sysdeps/arm/crti.S +diff --git a/ports/sysdeps/arm/crtn.S b/sysdeps/arm/crtn.S +similarity index 100% +rename from ports/sysdeps/arm/crtn.S +rename to sysdeps/arm/crtn.S +diff --git a/ports/sysdeps/arm/dl-irel.h b/sysdeps/arm/dl-irel.h +similarity index 100% +rename from ports/sysdeps/arm/dl-irel.h +rename to sysdeps/arm/dl-irel.h +diff --git a/ports/sysdeps/arm/dl-lookupcfg.h b/sysdeps/arm/dl-lookupcfg.h +similarity index 100% +rename from ports/sysdeps/arm/dl-lookupcfg.h +rename to sysdeps/arm/dl-lookupcfg.h +diff --git a/ports/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h +similarity index 100% +rename from ports/sysdeps/arm/dl-machine.h +rename to sysdeps/arm/dl-machine.h +diff --git a/ports/sysdeps/arm/dl-sysdep.h b/sysdeps/arm/dl-sysdep.h +similarity index 100% +rename from ports/sysdeps/arm/dl-sysdep.h +rename to sysdeps/arm/dl-sysdep.h +diff --git a/ports/sysdeps/arm/dl-tls.h b/sysdeps/arm/dl-tls.h +similarity index 100% +rename from ports/sysdeps/arm/dl-tls.h +rename to sysdeps/arm/dl-tls.h +diff --git a/ports/sysdeps/arm/dl-tlsdesc.S b/sysdeps/arm/dl-tlsdesc.S +similarity index 100% +rename from ports/sysdeps/arm/dl-tlsdesc.S +rename to sysdeps/arm/dl-tlsdesc.S +diff --git a/ports/sysdeps/arm/dl-tlsdesc.h b/sysdeps/arm/dl-tlsdesc.h +similarity index 100% +rename from ports/sysdeps/arm/dl-tlsdesc.h +rename to sysdeps/arm/dl-tlsdesc.h +diff --git a/ports/sysdeps/arm/dl-trampoline.S b/sysdeps/arm/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/arm/dl-trampoline.S +rename to sysdeps/arm/dl-trampoline.S +diff --git a/ports/sysdeps/arm/fclrexcpt.c b/sysdeps/arm/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/arm/fclrexcpt.c +rename to sysdeps/arm/fclrexcpt.c +diff --git a/ports/sysdeps/arm/fedisblxcpt.c b/sysdeps/arm/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/arm/fedisblxcpt.c +rename to sysdeps/arm/fedisblxcpt.c +diff --git a/ports/sysdeps/arm/feenablxcpt.c b/sysdeps/arm/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/arm/feenablxcpt.c +rename to sysdeps/arm/feenablxcpt.c +diff --git a/ports/sysdeps/arm/fegetenv.c b/sysdeps/arm/fegetenv.c +similarity index 100% +rename from ports/sysdeps/arm/fegetenv.c +rename to sysdeps/arm/fegetenv.c +diff --git a/ports/sysdeps/arm/fegetexcept.c b/sysdeps/arm/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/arm/fegetexcept.c +rename to sysdeps/arm/fegetexcept.c +diff --git a/ports/sysdeps/arm/fegetround.c b/sysdeps/arm/fegetround.c +similarity index 100% +rename from ports/sysdeps/arm/fegetround.c +rename to sysdeps/arm/fegetround.c +diff --git a/ports/sysdeps/arm/feholdexcpt.c b/sysdeps/arm/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/arm/feholdexcpt.c +rename to sysdeps/arm/feholdexcpt.c +diff --git a/ports/sysdeps/arm/fesetenv.c b/sysdeps/arm/fesetenv.c +similarity index 100% +rename from ports/sysdeps/arm/fesetenv.c +rename to sysdeps/arm/fesetenv.c +diff --git a/ports/sysdeps/arm/fesetround.c b/sysdeps/arm/fesetround.c +similarity index 100% +rename from ports/sysdeps/arm/fesetround.c +rename to sysdeps/arm/fesetround.c +diff --git a/ports/sysdeps/arm/feupdateenv.c b/sysdeps/arm/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/arm/feupdateenv.c +rename to sysdeps/arm/feupdateenv.c +diff --git a/ports/sysdeps/arm/fgetexcptflg.c b/sysdeps/arm/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/arm/fgetexcptflg.c +rename to sysdeps/arm/fgetexcptflg.c +diff --git a/ports/sysdeps/arm/find_exidx.c b/sysdeps/arm/find_exidx.c +similarity index 100% +rename from ports/sysdeps/arm/find_exidx.c +rename to sysdeps/arm/find_exidx.c +diff --git a/ports/sysdeps/arm/fpu_control.h b/sysdeps/arm/fpu_control.h +similarity index 100% +rename from ports/sysdeps/arm/fpu_control.h +rename to sysdeps/arm/fpu_control.h +diff --git a/ports/sysdeps/arm/fraiseexcpt.c b/sysdeps/arm/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/arm/fraiseexcpt.c +rename to sysdeps/arm/fraiseexcpt.c +diff --git a/ports/sysdeps/arm/frame.h b/sysdeps/arm/frame.h +similarity index 100% +rename from ports/sysdeps/arm/frame.h +rename to sysdeps/arm/frame.h +diff --git a/ports/sysdeps/arm/framestate.c b/sysdeps/arm/framestate.c +similarity index 100% +rename from ports/sysdeps/arm/framestate.c +rename to sysdeps/arm/framestate.c +diff --git a/ports/sysdeps/arm/fsetexcptflg.c b/sysdeps/arm/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/arm/fsetexcptflg.c +rename to sysdeps/arm/fsetexcptflg.c +diff --git a/ports/sysdeps/arm/ftestexcept.c b/sysdeps/arm/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/arm/ftestexcept.c +rename to sysdeps/arm/ftestexcept.c +diff --git a/ports/sysdeps/arm/gccframe.h b/sysdeps/arm/gccframe.h +similarity index 100% +rename from ports/sysdeps/arm/gccframe.h +rename to sysdeps/arm/gccframe.h +diff --git a/ports/sysdeps/arm/get-rounding-mode.h b/sysdeps/arm/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/arm/get-rounding-mode.h +rename to sysdeps/arm/get-rounding-mode.h +diff --git a/ports/sysdeps/arm/gmp-mparam.h b/sysdeps/arm/gmp-mparam.h +similarity index 100% +rename from ports/sysdeps/arm/gmp-mparam.h +rename to sysdeps/arm/gmp-mparam.h +diff --git a/ports/sysdeps/arm/jmpbuf-offsets.h b/sysdeps/arm/jmpbuf-offsets.h +similarity index 100% +rename from ports/sysdeps/arm/jmpbuf-offsets.h +rename to sysdeps/arm/jmpbuf-offsets.h +diff --git a/ports/sysdeps/arm/jmpbuf-unwind.h b/sysdeps/arm/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/arm/jmpbuf-unwind.h +rename to sysdeps/arm/jmpbuf-unwind.h +diff --git a/ports/sysdeps/arm/ldsodefs.h b/sysdeps/arm/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/arm/ldsodefs.h +rename to sysdeps/arm/ldsodefs.h +diff --git a/ports/sysdeps/arm/libc-tls.c b/sysdeps/arm/libc-tls.c +similarity index 100% +rename from ports/sysdeps/arm/libc-tls.c +rename to sysdeps/arm/libc-tls.c +diff --git a/ports/sysdeps/arm/libm-test-ulps b/sysdeps/arm/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/arm/libm-test-ulps +rename to sysdeps/arm/libm-test-ulps +diff --git a/ports/sysdeps/arm/machine-gmon.h b/sysdeps/arm/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/arm/machine-gmon.h +rename to sysdeps/arm/machine-gmon.h +diff --git a/ports/sysdeps/arm/memcpy.S b/sysdeps/arm/memcpy.S +similarity index 100% +rename from ports/sysdeps/arm/memcpy.S +rename to sysdeps/arm/memcpy.S +diff --git a/ports/sysdeps/arm/memmove.S b/sysdeps/arm/memmove.S +similarity index 100% +rename from ports/sysdeps/arm/memmove.S +rename to sysdeps/arm/memmove.S +diff --git a/ports/sysdeps/arm/memset.S b/sysdeps/arm/memset.S +similarity index 100% +rename from ports/sysdeps/arm/memset.S +rename to sysdeps/arm/memset.S +diff --git a/ports/sysdeps/arm/memusage.h b/sysdeps/arm/memusage.h +similarity index 100% +rename from ports/sysdeps/arm/memusage.h +rename to sysdeps/arm/memusage.h +diff --git a/ports/sysdeps/arm/nptl/Makefile b/sysdeps/arm/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/arm/nptl/Makefile +rename to sysdeps/arm/nptl/Makefile +diff --git a/ports/sysdeps/arm/nptl/pthread_spin_lock.c b/sysdeps/arm/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/arm/nptl/pthread_spin_lock.c +rename to sysdeps/arm/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/arm/nptl/pthreaddef.h b/sysdeps/arm/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/arm/nptl/pthreaddef.h +rename to sysdeps/arm/nptl/pthreaddef.h +diff --git a/ports/sysdeps/arm/nptl/tcb-offsets.sym b/sysdeps/arm/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/arm/nptl/tcb-offsets.sym +rename to sysdeps/arm/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/arm/nptl/tls.h b/sysdeps/arm/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/arm/nptl/tls.h +rename to sysdeps/arm/nptl/tls.h +diff --git a/ports/sysdeps/arm/preconfigure b/sysdeps/arm/preconfigure +similarity index 100% +rename from ports/sysdeps/arm/preconfigure +rename to sysdeps/arm/preconfigure +diff --git a/ports/sysdeps/arm/rtld-global-offsets.sym b/sysdeps/arm/rtld-global-offsets.sym +similarity index 100% +rename from ports/sysdeps/arm/rtld-global-offsets.sym +rename to sysdeps/arm/rtld-global-offsets.sym +diff --git a/ports/sysdeps/arm/setfpucw.c b/sysdeps/arm/setfpucw.c +similarity index 100% +rename from ports/sysdeps/arm/setfpucw.c +rename to sysdeps/arm/setfpucw.c +diff --git a/ports/sysdeps/arm/setjmp.S b/sysdeps/arm/setjmp.S +similarity index 100% +rename from ports/sysdeps/arm/setjmp.S +rename to sysdeps/arm/setjmp.S +diff --git a/ports/sysdeps/arm/shlib-versions b/sysdeps/arm/shlib-versions +similarity index 100% +rename from ports/sysdeps/arm/shlib-versions +rename to sysdeps/arm/shlib-versions +diff --git a/ports/sysdeps/arm/sotruss-lib.c b/sysdeps/arm/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/arm/sotruss-lib.c +rename to sysdeps/arm/sotruss-lib.c +diff --git a/ports/sysdeps/arm/stackinfo.h b/sysdeps/arm/stackinfo.h +similarity index 100% +rename from ports/sysdeps/arm/stackinfo.h +rename to sysdeps/arm/stackinfo.h +diff --git a/ports/sysdeps/arm/start.S b/sysdeps/arm/start.S +similarity index 100% +rename from ports/sysdeps/arm/start.S +rename to sysdeps/arm/start.S +diff --git a/ports/sysdeps/arm/static-stubs.c b/sysdeps/arm/static-stubs.c +similarity index 100% +rename from ports/sysdeps/arm/static-stubs.c +rename to sysdeps/arm/static-stubs.c +diff --git a/ports/sysdeps/arm/strlen.S b/sysdeps/arm/strlen.S +similarity index 100% +rename from ports/sysdeps/arm/strlen.S +rename to sysdeps/arm/strlen.S +diff --git a/ports/sysdeps/arm/sys/ucontext.h b/sysdeps/arm/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/arm/sys/ucontext.h +rename to sysdeps/arm/sys/ucontext.h +diff --git a/ports/sysdeps/arm/sysdep.h b/sysdeps/arm/sysdep.h +similarity index 100% +rename from ports/sysdeps/arm/sysdep.h +rename to sysdeps/arm/sysdep.h +diff --git a/ports/sysdeps/arm/tls-macros.h b/sysdeps/arm/tls-macros.h +similarity index 100% +rename from ports/sysdeps/arm/tls-macros.h +rename to sysdeps/arm/tls-macros.h +diff --git a/ports/sysdeps/arm/tlsdesc.c b/sysdeps/arm/tlsdesc.c +similarity index 100% +rename from ports/sysdeps/arm/tlsdesc.c +rename to sysdeps/arm/tlsdesc.c +diff --git a/ports/sysdeps/arm/tlsdesc.sym b/sysdeps/arm/tlsdesc.sym +similarity index 100% +rename from ports/sysdeps/arm/tlsdesc.sym +rename to sysdeps/arm/tlsdesc.sym +diff --git a/ports/sysdeps/arm/tst-audit.h b/sysdeps/arm/tst-audit.h +similarity index 100% +rename from ports/sysdeps/arm/tst-audit.h +rename to sysdeps/arm/tst-audit.h +diff --git a/ports/sysdeps/arm/unwind-dw2-fde-glibc.c b/sysdeps/arm/unwind-dw2-fde-glibc.c +similarity index 100% +rename from ports/sysdeps/arm/unwind-dw2-fde-glibc.c +rename to sysdeps/arm/unwind-dw2-fde-glibc.c +diff --git a/ports/sysdeps/arm/unwind-pe.c b/sysdeps/arm/unwind-pe.c +similarity index 100% +rename from ports/sysdeps/arm/unwind-pe.c +rename to sysdeps/arm/unwind-pe.c +diff --git a/ports/sysdeps/unix/arm/sysdep.S b/sysdeps/unix/arm/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/arm/sysdep.S +rename to sysdeps/unix/arm/sysdep.S +diff --git a/ports/sysdeps/unix/arm/sysdep.h b/sysdeps/unix/arm/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/arm/sysdep.h +rename to sysdeps/unix/arm/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/Makefile b/sysdeps/unix/sysv/linux/arm/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/Makefile +rename to sysdeps/unix/sysv/linux/arm/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/arm/Versions b/sysdeps/unix/sysv/linux/arm/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/Versions +rename to sysdeps/unix/sysv/linux/arm/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S b/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S +rename to sysdeps/unix/sysv/linux/arm/____longjmp_chk.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S b/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S +rename to sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/alphasort64.c b/sysdeps/unix/sysv/linux/arm/alphasort64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/alphasort64.c +rename to sysdeps/unix/sysv/linux/arm/alphasort64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/arm-features.h b/sysdeps/unix/sysv/linux/arm/arm-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/arm-features.h +rename to sysdeps/unix/sysv/linux/arm/arm-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/atomic.h b/sysdeps/unix/sysv/linux/arm/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/bits/atomic.h +rename to sysdeps/unix/sysv/linux/arm/bits/atomic.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h b/sysdeps/unix/sysv/linux/arm/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/arm/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/hwcap.h b/sysdeps/unix/sysv/linux/arm/bits/hwcap.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/bits/hwcap.h +rename to sysdeps/unix/sysv/linux/arm/bits/hwcap.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/mman.h b/sysdeps/unix/sysv/linux/arm/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/bits/mman.h +rename to sysdeps/unix/sysv/linux/arm/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h b/sysdeps/unix/sysv/linux/arm/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/bits/shm.h +rename to sysdeps/unix/sysv/linux/arm/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/brk.c b/sysdeps/unix/sysv/linux/arm/brk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/brk.c +rename to sysdeps/unix/sysv/linux/arm/brk.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/clone.S b/sysdeps/unix/sysv/linux/arm/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/clone.S +rename to sysdeps/unix/sysv/linux/arm/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/configure b/sysdeps/unix/sysv/linux/arm/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/configure +rename to sysdeps/unix/sysv/linux/arm/configure +diff --git a/ports/sysdeps/unix/sysv/linux/arm/configure.in b/sysdeps/unix/sysv/linux/arm/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/configure.in +rename to sysdeps/unix/sysv/linux/arm/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/arm/dl-cache.h b/sysdeps/unix/sysv/linux/arm/dl-cache.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/dl-cache.h +rename to sysdeps/unix/sysv/linux/arm/dl-cache.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/dl-machine.h b/sysdeps/unix/sysv/linux/arm/dl-machine.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/dl-machine.h +rename to sysdeps/unix/sysv/linux/arm/dl-machine.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.c b/sysdeps/unix/sysv/linux/arm/dl-procinfo.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.c +rename to sysdeps/unix/sysv/linux/arm/dl-procinfo.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.h b/sysdeps/unix/sysv/linux/arm/dl-procinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/dl-procinfo.h +rename to sysdeps/unix/sysv/linux/arm/dl-procinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/fchown.c b/sysdeps/unix/sysv/linux/arm/fchown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/fchown.c +rename to sysdeps/unix/sysv/linux/arm/fchown.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/fcntl.c b/sysdeps/unix/sysv/linux/arm/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/fcntl.c +rename to sysdeps/unix/sysv/linux/arm/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/ftruncate64.c b/sysdeps/unix/sysv/linux/arm/ftruncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/ftruncate64.c +rename to sysdeps/unix/sysv/linux/arm/ftruncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/fxstat.c b/sysdeps/unix/sysv/linux/arm/fxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/fxstat.c +rename to sysdeps/unix/sysv/linux/arm/fxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/fxstatat.c b/sysdeps/unix/sysv/linux/arm/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/fxstatat.c +rename to sysdeps/unix/sysv/linux/arm/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getcontext.S b/sysdeps/unix/sysv/linux/arm/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getcontext.S +rename to sysdeps/unix/sysv/linux/arm/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getdents64.c b/sysdeps/unix/sysv/linux/arm/getdents64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getdents64.c +rename to sysdeps/unix/sysv/linux/arm/getdents64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getegid.c b/sysdeps/unix/sysv/linux/arm/getegid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getegid.c +rename to sysdeps/unix/sysv/linux/arm/getegid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/geteuid.c b/sysdeps/unix/sysv/linux/arm/geteuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/geteuid.c +rename to sysdeps/unix/sysv/linux/arm/geteuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getgid.c b/sysdeps/unix/sysv/linux/arm/getgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getgid.c +rename to sysdeps/unix/sysv/linux/arm/getgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getgroups.c b/sysdeps/unix/sysv/linux/arm/getgroups.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getgroups.c +rename to sysdeps/unix/sysv/linux/arm/getgroups.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getresgid.c b/sysdeps/unix/sysv/linux/arm/getresgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getresgid.c +rename to sysdeps/unix/sysv/linux/arm/getresgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getresuid.c b/sysdeps/unix/sysv/linux/arm/getresuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getresuid.c +rename to sysdeps/unix/sysv/linux/arm/getresuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getrlimit64.c b/sysdeps/unix/sysv/linux/arm/getrlimit64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getrlimit64.c +rename to sysdeps/unix/sysv/linux/arm/getrlimit64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/getuid.c b/sysdeps/unix/sysv/linux/arm/getuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/getuid.c +rename to sysdeps/unix/sysv/linux/arm/getuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/glob64.c b/sysdeps/unix/sysv/linux/arm/glob64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/glob64.c +rename to sysdeps/unix/sysv/linux/arm/glob64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/internal_accept4.S b/sysdeps/unix/sysv/linux/arm/internal_accept4.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/internal_accept4.S +rename to sysdeps/unix/sysv/linux/arm/internal_accept4.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/internal_recvmmsg.S b/sysdeps/unix/sysv/linux/arm/internal_recvmmsg.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/internal_recvmmsg.S +rename to sysdeps/unix/sysv/linux/arm/internal_recvmmsg.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/internal_sendmmsg.S b/sysdeps/unix/sysv/linux/arm/internal_sendmmsg.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/internal_sendmmsg.S +rename to sysdeps/unix/sysv/linux/arm/internal_sendmmsg.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/ioperm.c b/sysdeps/unix/sysv/linux/arm/ioperm.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/ioperm.c +rename to sysdeps/unix/sysv/linux/arm/ioperm.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h b/sysdeps/unix/sysv/linux/arm/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/kernel-features.h +rename to sysdeps/unix/sysv/linux/arm/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/lchown.c b/sysdeps/unix/sysv/linux/arm/lchown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/lchown.c +rename to sysdeps/unix/sysv/linux/arm/lchown.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/ldconfig.h b/sysdeps/unix/sysv/linux/arm/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/ldconfig.h +rename to sysdeps/unix/sysv/linux/arm/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/ldsodefs.h b/sysdeps/unix/sysv/linux/arm/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/ldsodefs.h +rename to sysdeps/unix/sysv/linux/arm/ldsodefs.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/libc-aeabi_read_tp.S b/sysdeps/unix/sysv/linux/arm/libc-aeabi_read_tp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/libc-aeabi_read_tp.S +rename to sysdeps/unix/sysv/linux/arm/libc-aeabi_read_tp.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S b/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S +rename to sysdeps/unix/sysv/linux/arm/libc-do-syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/lockf64.c b/sysdeps/unix/sysv/linux/arm/lockf64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/lockf64.c +rename to sysdeps/unix/sysv/linux/arm/lockf64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/lxstat.c b/sysdeps/unix/sysv/linux/arm/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/lxstat.c +rename to sysdeps/unix/sysv/linux/arm/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/makecontext.c b/sysdeps/unix/sysv/linux/arm/makecontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/makecontext.c +rename to sysdeps/unix/sysv/linux/arm/makecontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/mmap.S b/sysdeps/unix/sysv/linux/arm/mmap.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/mmap.S +rename to sysdeps/unix/sysv/linux/arm/mmap.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/mmap64.S b/sysdeps/unix/sysv/linux/arm/mmap64.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/mmap64.S +rename to sysdeps/unix/sysv/linux/arm/mmap64.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/msgctl.c b/sysdeps/unix/sysv/linux/arm/msgctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/msgctl.c +rename to sysdeps/unix/sysv/linux/arm/msgctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/Makefile b/sysdeps/unix/sysv/linux/arm/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/Makefile +rename to sysdeps/unix/sysv/linux/arm/nptl/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/Versions b/sysdeps/unix/sysv/linux/arm/nptl/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/Versions +rename to sysdeps/unix/sysv/linux/arm/nptl/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/arm/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/arm/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/c++-types.data b/sysdeps/unix/sysv/linux/arm/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/arm/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/clone.S b/sysdeps/unix/sysv/linux/arm/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/clone.S +rename to sysdeps/unix/sysv/linux/arm/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure b/sysdeps/unix/sysv/linux/arm/nptl/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/configure +rename to sysdeps/unix/sysv/linux/arm/nptl/configure +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure.in b/sysdeps/unix/sysv/linux/arm/nptl/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/configure.in +rename to sysdeps/unix/sysv/linux/arm/nptl/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/createthread.c b/sysdeps/unix/sysv/linux/arm/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/arm/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/fork.c b/sysdeps/unix/sysv/linux/arm/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/fork.c +rename to sysdeps/unix/sysv/linux/arm/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/ld.abilist b/sysdeps/unix/sysv/linux/arm/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libm.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/librt.abilist b/sysdeps/unix/sysv/linux/arm/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/arm/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/arm/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/localplt.data b/sysdeps/unix/sysv/linux/arm/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/arm/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c b/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c +rename to sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/nptl-aeabi_unwind_cpp_pr1.c b/sysdeps/unix/sysv/linux/arm/nptl/nptl-aeabi_unwind_cpp_pr1.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/nptl-aeabi_unwind_cpp_pr1.c +rename to sysdeps/unix/sysv/linux/arm/nptl/nptl-aeabi_unwind_cpp_pr1.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/arm/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/arm/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/rt-aeabi_unwind_cpp_pr1.c b/sysdeps/unix/sysv/linux/arm/nptl/rt-aeabi_unwind_cpp_pr1.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/rt-aeabi_unwind_cpp_pr1.c +rename to sysdeps/unix/sysv/linux/arm/nptl/rt-aeabi_unwind_cpp_pr1.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c b/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c +rename to sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c b/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c +rename to sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/unwind.h b/sysdeps/unix/sysv/linux/arm/nptl/unwind.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/unwind.h +rename to sysdeps/unix/sysv/linux/arm/nptl/unwind.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/vfork.S b/sysdeps/unix/sysv/linux/arm/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/arm/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/oldgetrlimit.c b/sysdeps/unix/sysv/linux/arm/oldgetrlimit.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/oldgetrlimit.c +rename to sysdeps/unix/sysv/linux/arm/oldgetrlimit.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/oldgetrlimit64.c b/sysdeps/unix/sysv/linux/arm/oldgetrlimit64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/oldgetrlimit64.c +rename to sysdeps/unix/sysv/linux/arm/oldgetrlimit64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/oldsetrlimit.c b/sysdeps/unix/sysv/linux/arm/oldsetrlimit.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/oldsetrlimit.c +rename to sysdeps/unix/sysv/linux/arm/oldsetrlimit.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/posix_fadvise.c b/sysdeps/unix/sysv/linux/arm/posix_fadvise.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/posix_fadvise.c +rename to sysdeps/unix/sysv/linux/arm/posix_fadvise.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/posix_fadvise64.c b/sysdeps/unix/sysv/linux/arm/posix_fadvise64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/posix_fadvise64.c +rename to sysdeps/unix/sysv/linux/arm/posix_fadvise64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pread.c b/sysdeps/unix/sysv/linux/arm/pread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/pread.c +rename to sysdeps/unix/sysv/linux/arm/pread.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pread64.c b/sysdeps/unix/sysv/linux/arm/pread64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/pread64.c +rename to sysdeps/unix/sysv/linux/arm/pread64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/profil-counter.h b/sysdeps/unix/sysv/linux/arm/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/profil-counter.h +rename to sysdeps/unix/sysv/linux/arm/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pwrite.c b/sysdeps/unix/sysv/linux/arm/pwrite.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/pwrite.c +rename to sysdeps/unix/sysv/linux/arm/pwrite.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/pwrite64.c b/sysdeps/unix/sysv/linux/arm/pwrite64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/pwrite64.c +rename to sysdeps/unix/sysv/linux/arm/pwrite64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/readahead.c b/sysdeps/unix/sysv/linux/arm/readahead.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/readahead.c +rename to sysdeps/unix/sysv/linux/arm/readahead.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/readdir64.c b/sysdeps/unix/sysv/linux/arm/readdir64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/readdir64.c +rename to sysdeps/unix/sysv/linux/arm/readdir64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/readdir64_r.c b/sysdeps/unix/sysv/linux/arm/readdir64_r.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/readdir64_r.c +rename to sysdeps/unix/sysv/linux/arm/readdir64_r.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/readelflib.c b/sysdeps/unix/sysv/linux/arm/readelflib.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/readelflib.c +rename to sysdeps/unix/sysv/linux/arm/readelflib.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/register-dump.h b/sysdeps/unix/sysv/linux/arm/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/register-dump.h +rename to sysdeps/unix/sysv/linux/arm/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/scandir64.c b/sysdeps/unix/sysv/linux/arm/scandir64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/scandir64.c +rename to sysdeps/unix/sysv/linux/arm/scandir64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/semctl.c b/sysdeps/unix/sysv/linux/arm/semctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/semctl.c +rename to sysdeps/unix/sysv/linux/arm/semctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setcontext.S b/sysdeps/unix/sysv/linux/arm/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setcontext.S +rename to sysdeps/unix/sysv/linux/arm/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setegid.c b/sysdeps/unix/sysv/linux/arm/setegid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setegid.c +rename to sysdeps/unix/sysv/linux/arm/setegid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/seteuid.c b/sysdeps/unix/sysv/linux/arm/seteuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/seteuid.c +rename to sysdeps/unix/sysv/linux/arm/seteuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setfsgid.c b/sysdeps/unix/sysv/linux/arm/setfsgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setfsgid.c +rename to sysdeps/unix/sysv/linux/arm/setfsgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setfsuid.c b/sysdeps/unix/sysv/linux/arm/setfsuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setfsuid.c +rename to sysdeps/unix/sysv/linux/arm/setfsuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setgid.c b/sysdeps/unix/sysv/linux/arm/setgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setgid.c +rename to sysdeps/unix/sysv/linux/arm/setgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setgroups.c b/sysdeps/unix/sysv/linux/arm/setgroups.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setgroups.c +rename to sysdeps/unix/sysv/linux/arm/setgroups.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setregid.c b/sysdeps/unix/sysv/linux/arm/setregid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setregid.c +rename to sysdeps/unix/sysv/linux/arm/setregid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setresgid.c b/sysdeps/unix/sysv/linux/arm/setresgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setresgid.c +rename to sysdeps/unix/sysv/linux/arm/setresgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setresuid.c b/sysdeps/unix/sysv/linux/arm/setresuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setresuid.c +rename to sysdeps/unix/sysv/linux/arm/setresuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setreuid.c b/sysdeps/unix/sysv/linux/arm/setreuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setreuid.c +rename to sysdeps/unix/sysv/linux/arm/setreuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setrlimit.c b/sysdeps/unix/sysv/linux/arm/setrlimit.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setrlimit.c +rename to sysdeps/unix/sysv/linux/arm/setrlimit.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/setuid.c b/sysdeps/unix/sysv/linux/arm/setuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/setuid.c +rename to sysdeps/unix/sysv/linux/arm/setuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/shmctl.c b/sysdeps/unix/sysv/linux/arm/shmctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/shmctl.c +rename to sysdeps/unix/sysv/linux/arm/shmctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sigaction.c b/sysdeps/unix/sysv/linux/arm/sigaction.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sigaction.c +rename to sysdeps/unix/sysv/linux/arm/sigaction.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sigcontextinfo.h b/sysdeps/unix/sysv/linux/arm/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/arm/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sigrestorer.S b/sysdeps/unix/sysv/linux/arm/sigrestorer.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sigrestorer.S +rename to sysdeps/unix/sysv/linux/arm/sigrestorer.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/swapcontext.S b/sysdeps/unix/sysv/linux/arm/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/swapcontext.S +rename to sysdeps/unix/sysv/linux/arm/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sys/elf.h b/sysdeps/unix/sysv/linux/arm/sys/elf.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sys/elf.h +rename to sysdeps/unix/sysv/linux/arm/sys/elf.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sys/io.h b/sysdeps/unix/sysv/linux/arm/sys/io.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sys/io.h +rename to sysdeps/unix/sysv/linux/arm/sys/io.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sys/procfs.h b/sysdeps/unix/sysv/linux/arm/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sys/procfs.h +rename to sysdeps/unix/sysv/linux/arm/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sys/ucontext.h b/sysdeps/unix/sysv/linux/arm/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/arm/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sys/user.h b/sysdeps/unix/sysv/linux/arm/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sys/user.h +rename to sysdeps/unix/sysv/linux/arm/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/syscall.S b/sysdeps/unix/sysv/linux/arm/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/syscall.S +rename to sysdeps/unix/sysv/linux/arm/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/syscalls.list b/sysdeps/unix/sysv/linux/arm/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/syscalls.list +rename to sysdeps/unix/sysv/linux/arm/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sysdep.S b/sysdeps/unix/sysv/linux/arm/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sysdep.S +rename to sysdeps/unix/sysv/linux/arm/sysdep.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/sysdep.h b/sysdeps/unix/sysv/linux/arm/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/sysdep.h +rename to sysdeps/unix/sysv/linux/arm/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/arm/truncate64.c b/sysdeps/unix/sysv/linux/arm/truncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/truncate64.c +rename to sysdeps/unix/sysv/linux/arm/truncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/ucontext_i.sym b/sysdeps/unix/sysv/linux/arm/ucontext_i.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/ucontext_i.sym +rename to sysdeps/unix/sysv/linux/arm/ucontext_i.sym +diff --git a/ports/sysdeps/unix/sysv/linux/arm/umount.c b/sysdeps/unix/sysv/linux/arm/umount.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/umount.c +rename to sysdeps/unix/sysv/linux/arm/umount.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/versionsort64.c b/sysdeps/unix/sysv/linux/arm/versionsort64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/versionsort64.c +rename to sysdeps/unix/sysv/linux/arm/versionsort64.c +diff --git a/ports/sysdeps/unix/sysv/linux/arm/vfork.S b/sysdeps/unix/sysv/linux/arm/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/vfork.S +rename to sysdeps/unix/sysv/linux/arm/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/arm/xstat.c b/sysdeps/unix/sysv/linux/arm/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/arm/xstat.c +rename to sysdeps/unix/sysv/linux/arm/xstat.c diff --git a/SOURCES/glibc-rh1505492-ports-move-hppa.patch b/SOURCES/glibc-rh1505492-ports-move-hppa.patch new file mode 100644 index 0000000..368ffe1 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-hppa.patch @@ -0,0 +1,613 @@ +Recreation of this upstream commit: + +commit 5abebba403181de898bbea4ee1bcce5f088c663b +Author: Carlos O'Donell +Date: Tue Apr 29 03:08:48 2014 -0400 + + Relocate hppa from ports to libc. + +Commands used: + +git mv ports/sysdeps/hppa sysdeps/ +git mv ports/sysdeps/unix/sysv/linux/hppa sysdeps/unix/sysv/linux/ + +diff --git a/ports/sysdeps/hppa/Makefile b/sysdeps/hppa/Makefile +similarity index 100% +rename from ports/sysdeps/hppa/Makefile +rename to sysdeps/hppa/Makefile +diff --git a/ports/sysdeps/hppa/Versions b/sysdeps/hppa/Versions +similarity index 100% +rename from ports/sysdeps/hppa/Versions +rename to sysdeps/hppa/Versions +diff --git a/ports/sysdeps/hppa/__longjmp.c b/sysdeps/hppa/__longjmp.c +similarity index 100% +rename from ports/sysdeps/hppa/__longjmp.c +rename to sysdeps/hppa/__longjmp.c +diff --git a/ports/sysdeps/hppa/abort-instr.h b/sysdeps/hppa/abort-instr.h +similarity index 100% +rename from ports/sysdeps/hppa/abort-instr.h +rename to sysdeps/hppa/abort-instr.h +diff --git a/ports/sysdeps/hppa/add_n.S b/sysdeps/hppa/add_n.S +similarity index 100% +rename from ports/sysdeps/hppa/add_n.S +rename to sysdeps/hppa/add_n.S +diff --git a/ports/sysdeps/hppa/bits/endian.h b/sysdeps/hppa/bits/endian.h +similarity index 100% +rename from ports/sysdeps/hppa/bits/endian.h +rename to sysdeps/hppa/bits/endian.h +diff --git a/ports/sysdeps/hppa/bits/link.h b/sysdeps/hppa/bits/link.h +similarity index 100% +rename from ports/sysdeps/hppa/bits/link.h +rename to sysdeps/hppa/bits/link.h +diff --git a/ports/sysdeps/hppa/bits/linkmap.h b/sysdeps/hppa/bits/linkmap.h +similarity index 100% +rename from ports/sysdeps/hppa/bits/linkmap.h +rename to sysdeps/hppa/bits/linkmap.h +diff --git a/ports/sysdeps/hppa/bits/setjmp.h b/sysdeps/hppa/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/hppa/bits/setjmp.h +rename to sysdeps/hppa/bits/setjmp.h +diff --git a/ports/sysdeps/hppa/bsd-_setjmp.S b/sysdeps/hppa/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/hppa/bsd-_setjmp.S +rename to sysdeps/hppa/bsd-_setjmp.S +diff --git a/ports/sysdeps/hppa/bsd-setjmp.S b/sysdeps/hppa/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/hppa/bsd-setjmp.S +rename to sysdeps/hppa/bsd-setjmp.S +diff --git a/ports/sysdeps/hppa/configure b/sysdeps/hppa/configure +similarity index 100% +rename from ports/sysdeps/hppa/configure +rename to sysdeps/hppa/configure +diff --git a/ports/sysdeps/hppa/configure.in b/sysdeps/hppa/configure.in +similarity index 100% +rename from ports/sysdeps/hppa/configure.in +rename to sysdeps/hppa/configure.in +diff --git a/ports/sysdeps/hppa/crti.S b/sysdeps/hppa/crti.S +similarity index 100% +rename from ports/sysdeps/hppa/crti.S +rename to sysdeps/hppa/crti.S +diff --git a/ports/sysdeps/hppa/crtn.S b/sysdeps/hppa/crtn.S +similarity index 100% +rename from ports/sysdeps/hppa/crtn.S +rename to sysdeps/hppa/crtn.S +diff --git a/ports/sysdeps/hppa/dl-fptr.c b/sysdeps/hppa/dl-fptr.c +similarity index 100% +rename from ports/sysdeps/hppa/dl-fptr.c +rename to sysdeps/hppa/dl-fptr.c +diff --git a/ports/sysdeps/hppa/dl-fptr.h b/sysdeps/hppa/dl-fptr.h +similarity index 100% +rename from ports/sysdeps/hppa/dl-fptr.h +rename to sysdeps/hppa/dl-fptr.h +diff --git a/ports/sysdeps/hppa/dl-irel.h b/sysdeps/hppa/dl-irel.h +similarity index 100% +rename from ports/sysdeps/hppa/dl-irel.h +rename to sysdeps/hppa/dl-irel.h +diff --git a/ports/sysdeps/hppa/dl-lookupcfg.h b/sysdeps/hppa/dl-lookupcfg.h +similarity index 100% +rename from ports/sysdeps/hppa/dl-lookupcfg.h +rename to sysdeps/hppa/dl-lookupcfg.h +diff --git a/ports/sysdeps/hppa/dl-machine.h b/sysdeps/hppa/dl-machine.h +similarity index 100% +rename from ports/sysdeps/hppa/dl-machine.h +rename to sysdeps/hppa/dl-machine.h +diff --git a/ports/sysdeps/hppa/dl-symaddr.c b/sysdeps/hppa/dl-symaddr.c +similarity index 100% +rename from ports/sysdeps/hppa/dl-symaddr.c +rename to sysdeps/hppa/dl-symaddr.c +diff --git a/ports/sysdeps/hppa/dl-tls.h b/sysdeps/hppa/dl-tls.h +similarity index 100% +rename from ports/sysdeps/hppa/dl-tls.h +rename to sysdeps/hppa/dl-tls.h +diff --git a/ports/sysdeps/hppa/dl-trampoline.S b/sysdeps/hppa/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/hppa/dl-trampoline.S +rename to sysdeps/hppa/dl-trampoline.S +diff --git a/ports/sysdeps/hppa/entry.h b/sysdeps/hppa/entry.h +similarity index 100% +rename from ports/sysdeps/hppa/entry.h +rename to sysdeps/hppa/entry.h +diff --git a/ports/sysdeps/hppa/fpu/bits/fenv.h b/sysdeps/hppa/fpu/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/hppa/fpu/bits/fenv.h +rename to sysdeps/hppa/fpu/bits/fenv.h +diff --git a/ports/sysdeps/hppa/fpu/bits/mathdef.h b/sysdeps/hppa/fpu/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/hppa/fpu/bits/mathdef.h +rename to sysdeps/hppa/fpu/bits/mathdef.h +diff --git a/ports/sysdeps/hppa/fpu/fclrexcpt.c b/sysdeps/hppa/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fclrexcpt.c +rename to sysdeps/hppa/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/hppa/fpu/fedisblxcpt.c b/sysdeps/hppa/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fedisblxcpt.c +rename to sysdeps/hppa/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/hppa/fpu/feenablxcpt.c b/sysdeps/hppa/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/feenablxcpt.c +rename to sysdeps/hppa/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/hppa/fpu/fegetenv.c b/sysdeps/hppa/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fegetenv.c +rename to sysdeps/hppa/fpu/fegetenv.c +diff --git a/ports/sysdeps/hppa/fpu/fegetexcept.c b/sysdeps/hppa/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fegetexcept.c +rename to sysdeps/hppa/fpu/fegetexcept.c +diff --git a/ports/sysdeps/hppa/fpu/fegetround.c b/sysdeps/hppa/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fegetround.c +rename to sysdeps/hppa/fpu/fegetround.c +diff --git a/ports/sysdeps/hppa/fpu/feholdexcpt.c b/sysdeps/hppa/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/feholdexcpt.c +rename to sysdeps/hppa/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/hppa/fpu/fesetenv.c b/sysdeps/hppa/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fesetenv.c +rename to sysdeps/hppa/fpu/fesetenv.c +diff --git a/ports/sysdeps/hppa/fpu/fesetround.c b/sysdeps/hppa/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fesetround.c +rename to sysdeps/hppa/fpu/fesetround.c +diff --git a/ports/sysdeps/hppa/fpu/feupdateenv.c b/sysdeps/hppa/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/feupdateenv.c +rename to sysdeps/hppa/fpu/feupdateenv.c +diff --git a/ports/sysdeps/hppa/fpu/fgetexcptflg.c b/sysdeps/hppa/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fgetexcptflg.c +rename to sysdeps/hppa/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/hppa/fpu/fpu_control.h b/sysdeps/hppa/fpu/fpu_control.h +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fpu_control.h +rename to sysdeps/hppa/fpu/fpu_control.h +diff --git a/ports/sysdeps/hppa/fpu/fraiseexcpt.c b/sysdeps/hppa/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fraiseexcpt.c +rename to sysdeps/hppa/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/hppa/fpu/fsetexcptflg.c b/sysdeps/hppa/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/fsetexcptflg.c +rename to sysdeps/hppa/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/hppa/fpu/ftestexcept.c b/sysdeps/hppa/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/hppa/fpu/ftestexcept.c +rename to sysdeps/hppa/fpu/ftestexcept.c +diff --git a/ports/sysdeps/hppa/fpu/libm-test-ulps b/sysdeps/hppa/fpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/hppa/fpu/libm-test-ulps +rename to sysdeps/hppa/fpu/libm-test-ulps +diff --git a/ports/sysdeps/hppa/frame.h b/sysdeps/hppa/frame.h +similarity index 100% +rename from ports/sysdeps/hppa/frame.h +rename to sysdeps/hppa/frame.h +diff --git a/ports/sysdeps/hppa/gccframe.h b/sysdeps/hppa/gccframe.h +similarity index 100% +rename from ports/sysdeps/hppa/gccframe.h +rename to sysdeps/hppa/gccframe.h +diff --git a/ports/sysdeps/hppa/get-rounding-mode.h b/sysdeps/hppa/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/hppa/get-rounding-mode.h +rename to sysdeps/hppa/get-rounding-mode.h +diff --git a/ports/sysdeps/hppa/hppa1.1/Implies b/sysdeps/hppa/hppa1.1/Implies +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/Implies +rename to sysdeps/hppa/hppa1.1/Implies +diff --git a/ports/sysdeps/hppa/hppa1.1/addmul_1.S b/sysdeps/hppa/hppa1.1/addmul_1.S +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/addmul_1.S +rename to sysdeps/hppa/hppa1.1/addmul_1.S +diff --git a/ports/sysdeps/hppa/hppa1.1/mul_1.S b/sysdeps/hppa/hppa1.1/mul_1.S +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/mul_1.S +rename to sysdeps/hppa/hppa1.1/mul_1.S +diff --git a/ports/sysdeps/hppa/hppa1.1/s_signbit.c b/sysdeps/hppa/hppa1.1/s_signbit.c +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/s_signbit.c +rename to sysdeps/hppa/hppa1.1/s_signbit.c +diff --git a/ports/sysdeps/hppa/hppa1.1/submul_1.S b/sysdeps/hppa/hppa1.1/submul_1.S +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/submul_1.S +rename to sysdeps/hppa/hppa1.1/submul_1.S +diff --git a/ports/sysdeps/hppa/hppa1.1/udiv_qrnnd.S b/sysdeps/hppa/hppa1.1/udiv_qrnnd.S +similarity index 100% +rename from ports/sysdeps/hppa/hppa1.1/udiv_qrnnd.S +rename to sysdeps/hppa/hppa1.1/udiv_qrnnd.S +diff --git a/ports/sysdeps/hppa/jmpbuf-offsets.h b/sysdeps/hppa/jmpbuf-offsets.h +similarity index 100% +rename from ports/sysdeps/hppa/jmpbuf-offsets.h +rename to sysdeps/hppa/jmpbuf-offsets.h +diff --git a/ports/sysdeps/hppa/jmpbuf-unwind.h b/sysdeps/hppa/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/hppa/jmpbuf-unwind.h +rename to sysdeps/hppa/jmpbuf-unwind.h +diff --git a/ports/sysdeps/hppa/ldsodefs.h b/sysdeps/hppa/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/hppa/ldsodefs.h +rename to sysdeps/hppa/ldsodefs.h +diff --git a/ports/sysdeps/hppa/libc-tls.c b/sysdeps/hppa/libc-tls.c +similarity index 100% +rename from ports/sysdeps/hppa/libc-tls.c +rename to sysdeps/hppa/libc-tls.c +diff --git a/ports/sysdeps/hppa/libgcc-compat.c b/sysdeps/hppa/libgcc-compat.c +similarity index 100% +rename from ports/sysdeps/hppa/libgcc-compat.c +rename to sysdeps/hppa/libgcc-compat.c +diff --git a/ports/sysdeps/hppa/lshift.S b/sysdeps/hppa/lshift.S +similarity index 100% +rename from ports/sysdeps/hppa/lshift.S +rename to sysdeps/hppa/lshift.S +diff --git a/ports/sysdeps/hppa/machine-gmon.h b/sysdeps/hppa/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/hppa/machine-gmon.h +rename to sysdeps/hppa/machine-gmon.h +diff --git a/ports/sysdeps/hppa/memusage.h b/sysdeps/hppa/memusage.h +similarity index 100% +rename from ports/sysdeps/hppa/memusage.h +rename to sysdeps/hppa/memusage.h +diff --git a/ports/sysdeps/hppa/mp_clz_tab.c b/sysdeps/hppa/mp_clz_tab.c +similarity index 100% +rename from ports/sysdeps/hppa/mp_clz_tab.c +rename to sysdeps/hppa/mp_clz_tab.c +diff --git a/ports/sysdeps/hppa/nptl/Makefile b/sysdeps/hppa/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/hppa/nptl/Makefile +rename to sysdeps/hppa/nptl/Makefile +diff --git a/ports/sysdeps/hppa/nptl/jmpbuf-unwind.h b/sysdeps/hppa/nptl/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/hppa/nptl/jmpbuf-unwind.h +rename to sysdeps/hppa/nptl/jmpbuf-unwind.h +diff --git a/ports/sysdeps/hppa/nptl/pthread_spin_init.c b/sysdeps/hppa/nptl/pthread_spin_init.c +similarity index 100% +rename from ports/sysdeps/hppa/nptl/pthread_spin_init.c +rename to sysdeps/hppa/nptl/pthread_spin_init.c +diff --git a/ports/sysdeps/hppa/nptl/pthread_spin_lock.c b/sysdeps/hppa/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/hppa/nptl/pthread_spin_lock.c +rename to sysdeps/hppa/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/hppa/nptl/pthread_spin_unlock.c b/sysdeps/hppa/nptl/pthread_spin_unlock.c +similarity index 100% +rename from ports/sysdeps/hppa/nptl/pthread_spin_unlock.c +rename to sysdeps/hppa/nptl/pthread_spin_unlock.c +diff --git a/ports/sysdeps/hppa/nptl/pthreaddef.h b/sysdeps/hppa/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/hppa/nptl/pthreaddef.h +rename to sysdeps/hppa/nptl/pthreaddef.h +diff --git a/ports/sysdeps/hppa/nptl/shlib-versions b/sysdeps/hppa/nptl/shlib-versions +similarity index 100% +rename from ports/sysdeps/hppa/nptl/shlib-versions +rename to sysdeps/hppa/nptl/shlib-versions +diff --git a/ports/sysdeps/hppa/nptl/tcb-offsets.sym b/sysdeps/hppa/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/hppa/nptl/tcb-offsets.sym +rename to sysdeps/hppa/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/hppa/nptl/tls.h b/sysdeps/hppa/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/hppa/nptl/tls.h +rename to sysdeps/hppa/nptl/tls.h +diff --git a/ports/sysdeps/hppa/nptl/tst-oddstacklimit.c b/sysdeps/hppa/nptl/tst-oddstacklimit.c +similarity index 100% +rename from ports/sysdeps/hppa/nptl/tst-oddstacklimit.c +rename to sysdeps/hppa/nptl/tst-oddstacklimit.c +diff --git a/ports/sysdeps/hppa/preconfigure b/sysdeps/hppa/preconfigure +similarity index 100% +rename from ports/sysdeps/hppa/preconfigure +rename to sysdeps/hppa/preconfigure +diff --git a/ports/sysdeps/hppa/rshift.S b/sysdeps/hppa/rshift.S +similarity index 100% +rename from ports/sysdeps/hppa/rshift.S +rename to sysdeps/hppa/rshift.S +diff --git a/ports/sysdeps/hppa/setjmp.S b/sysdeps/hppa/setjmp.S +similarity index 100% +rename from ports/sysdeps/hppa/setjmp.S +rename to sysdeps/hppa/setjmp.S +diff --git a/ports/sysdeps/hppa/shlib-versions b/sysdeps/hppa/shlib-versions +similarity index 100% +rename from ports/sysdeps/hppa/shlib-versions +rename to sysdeps/hppa/shlib-versions +diff --git a/ports/sysdeps/hppa/stackinfo.h b/sysdeps/hppa/stackinfo.h +similarity index 100% +rename from ports/sysdeps/hppa/stackinfo.h +rename to sysdeps/hppa/stackinfo.h +diff --git a/ports/sysdeps/hppa/start.S b/sysdeps/hppa/start.S +similarity index 100% +rename from ports/sysdeps/hppa/start.S +rename to sysdeps/hppa/start.S +diff --git a/ports/sysdeps/hppa/sub_n.S b/sysdeps/hppa/sub_n.S +similarity index 100% +rename from ports/sysdeps/hppa/sub_n.S +rename to sysdeps/hppa/sub_n.S +diff --git a/ports/sysdeps/hppa/sysdep.h b/sysdeps/hppa/sysdep.h +similarity index 100% +rename from ports/sysdeps/hppa/sysdep.h +rename to sysdeps/hppa/sysdep.h +diff --git a/ports/sysdeps/hppa/tininess.h b/sysdeps/hppa/tininess.h +similarity index 100% +rename from ports/sysdeps/hppa/tininess.h +rename to sysdeps/hppa/tininess.h +diff --git a/ports/sysdeps/hppa/tls-macros.h b/sysdeps/hppa/tls-macros.h +similarity index 100% +rename from ports/sysdeps/hppa/tls-macros.h +rename to sysdeps/hppa/tls-macros.h +diff --git a/ports/sysdeps/hppa/tst-audit.h b/sysdeps/hppa/tst-audit.h +similarity index 100% +rename from ports/sysdeps/hppa/tst-audit.h +rename to sysdeps/hppa/tst-audit.h +diff --git a/ports/sysdeps/hppa/udiv_qrnnd.S b/sysdeps/hppa/udiv_qrnnd.S +similarity index 100% +rename from ports/sysdeps/hppa/udiv_qrnnd.S +rename to sysdeps/hppa/udiv_qrnnd.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/Makefile b/sysdeps/unix/sysv/linux/hppa/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/Makefile +rename to sysdeps/unix/sysv/linux/hppa/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/Versions b/sysdeps/unix/sysv/linux/hppa/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/Versions +rename to sysdeps/unix/sysv/linux/hppa/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/____longjmp_chk.c b/sysdeps/unix/sysv/linux/hppa/____longjmp_chk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/____longjmp_chk.c +rename to sysdeps/unix/sysv/linux/hppa/____longjmp_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h b/sysdeps/unix/sysv/linux/hppa/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h +rename to sysdeps/unix/sysv/linux/hppa/bits/atomic.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/errno.h b/sysdeps/unix/sysv/linux/hppa/bits/errno.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/errno.h +rename to sysdeps/unix/sysv/linux/hppa/bits/errno.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h b/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/hppa/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/ioctls.h b/sysdeps/unix/sysv/linux/hppa/bits/ioctls.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/ioctls.h +rename to sysdeps/unix/sysv/linux/hppa/bits/ioctls.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h b/sysdeps/unix/sysv/linux/hppa/bits/ipc.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h +rename to sysdeps/unix/sysv/linux/hppa/bits/ipc.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/mman.h b/sysdeps/unix/sysv/linux/hppa/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/mman.h +rename to sysdeps/unix/sysv/linux/hppa/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h b/sysdeps/unix/sysv/linux/hppa/bits/msq.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h +rename to sysdeps/unix/sysv/linux/hppa/bits/msq.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h b/sysdeps/unix/sysv/linux/hppa/bits/sem.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h +rename to sysdeps/unix/sysv/linux/hppa/bits/sem.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h b/sysdeps/unix/sysv/linux/hppa/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h +rename to sysdeps/unix/sysv/linux/hppa/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/sigaction.h b/sysdeps/unix/sysv/linux/hppa/bits/sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/sigaction.h +rename to sysdeps/unix/sysv/linux/hppa/bits/sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/signum.h b/sysdeps/unix/sysv/linux/hppa/bits/signum.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/signum.h +rename to sysdeps/unix/sysv/linux/hppa/bits/signum.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/socket_type.h b/sysdeps/unix/sysv/linux/hppa/bits/socket_type.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/bits/socket_type.h +rename to sysdeps/unix/sysv/linux/hppa/bits/socket_type.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/brk.c b/sysdeps/unix/sysv/linux/hppa/brk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/brk.c +rename to sysdeps/unix/sysv/linux/hppa/brk.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/clone.S b/sysdeps/unix/sysv/linux/hppa/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/clone.S +rename to sysdeps/unix/sysv/linux/hppa/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/fcntl.c b/sysdeps/unix/sysv/linux/hppa/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/fcntl.c +rename to sysdeps/unix/sysv/linux/hppa/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/fxstat.c b/sysdeps/unix/sysv/linux/hppa/fxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/fxstat.c +rename to sysdeps/unix/sysv/linux/hppa/fxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/fxstatat.c b/sysdeps/unix/sysv/linux/hppa/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/fxstatat.c +rename to sysdeps/unix/sysv/linux/hppa/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/getcontext.S b/sysdeps/unix/sysv/linux/hppa/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/getcontext.S +rename to sysdeps/unix/sysv/linux/hppa/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/getdents64.c b/sysdeps/unix/sysv/linux/hppa/getdents64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/getdents64.c +rename to sysdeps/unix/sysv/linux/hppa/getdents64.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/getrlimit64.c b/sysdeps/unix/sysv/linux/hppa/getrlimit64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/getrlimit64.c +rename to sysdeps/unix/sysv/linux/hppa/getrlimit64.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/internaltypes.h b/sysdeps/unix/sysv/linux/hppa/internaltypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/internaltypes.h +rename to sysdeps/unix/sysv/linux/hppa/internaltypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/kernel-features.h b/sysdeps/unix/sysv/linux/hppa/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/kernel-features.h +rename to sysdeps/unix/sysv/linux/hppa/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h b/sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h +rename to sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h b/sysdeps/unix/sysv/linux/hppa/kernel_stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h +rename to sysdeps/unix/sysv/linux/hppa/kernel_stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/lxstat.c b/sysdeps/unix/sysv/linux/hppa/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/lxstat.c +rename to sysdeps/unix/sysv/linux/hppa/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/makecontext.c b/sysdeps/unix/sysv/linux/hppa/makecontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/makecontext.c +rename to sysdeps/unix/sysv/linux/hppa/makecontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/mmap.c b/sysdeps/unix/sysv/linux/hppa/mmap.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/mmap.c +rename to sysdeps/unix/sysv/linux/hppa/mmap.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/clone.S b/sysdeps/unix/sysv/linux/hppa/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/clone.S +rename to sysdeps/unix/sysv/linux/hppa/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/createthread.c b/sysdeps/unix/sysv/linux/hppa/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/fork.c b/sysdeps/unix/sysv/linux/hppa/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/fork.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c b/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c b/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h b/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h b/sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/profil-counter.h b/sysdeps/unix/sysv/linux/hppa/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/profil-counter.h +rename to sysdeps/unix/sysv/linux/hppa/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/setcontext.S b/sysdeps/unix/sysv/linux/hppa/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/setcontext.S +rename to sysdeps/unix/sysv/linux/hppa/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/socket.S b/sysdeps/unix/sysv/linux/hppa/socket.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/socket.S +rename to sysdeps/unix/sysv/linux/hppa/socket.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/swapcontext.c b/sysdeps/unix/sysv/linux/hppa/swapcontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/swapcontext.c +rename to sysdeps/unix/sysv/linux/hppa/swapcontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h b/sysdeps/unix/sysv/linux/hppa/sys/epoll.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/epoll.h +rename to sysdeps/unix/sysv/linux/hppa/sys/epoll.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/eventfd.h b/sysdeps/unix/sysv/linux/hppa/sys/eventfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/eventfd.h +rename to sysdeps/unix/sysv/linux/hppa/sys/eventfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/inotify.h b/sysdeps/unix/sysv/linux/hppa/sys/inotify.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/inotify.h +rename to sysdeps/unix/sysv/linux/hppa/sys/inotify.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/procfs.h b/sysdeps/unix/sysv/linux/hppa/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/procfs.h +rename to sysdeps/unix/sysv/linux/hppa/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/signalfd.h b/sysdeps/unix/sysv/linux/hppa/sys/signalfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/signalfd.h +rename to sysdeps/unix/sysv/linux/hppa/sys/signalfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/timerfd.h b/sysdeps/unix/sysv/linux/hppa/sys/timerfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/timerfd.h +rename to sysdeps/unix/sysv/linux/hppa/sys/timerfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/ucontext.h b/sysdeps/unix/sysv/linux/hppa/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/hppa/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sys/user.h b/sysdeps/unix/sysv/linux/hppa/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sys/user.h +rename to sysdeps/unix/sysv/linux/hppa/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/syscall.S b/sysdeps/unix/sysv/linux/hppa/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/syscall.S +rename to sysdeps/unix/sysv/linux/hppa/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/syscalls.list b/sysdeps/unix/sysv/linux/hppa/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/syscalls.list +rename to sysdeps/unix/sysv/linux/hppa/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sysdep.c b/sysdeps/unix/sysv/linux/hppa/sysdep.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sysdep.c +rename to sysdeps/unix/sysv/linux/hppa/sysdep.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/sysdep.h b/sysdeps/unix/sysv/linux/hppa/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/sysdep.h +rename to sysdeps/unix/sysv/linux/hppa/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/ucontext_i.sym b/sysdeps/unix/sysv/linux/hppa/ucontext_i.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/ucontext_i.sym +rename to sysdeps/unix/sysv/linux/hppa/ucontext_i.sym +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/umount.c b/sysdeps/unix/sysv/linux/hppa/umount.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/umount.c +rename to sysdeps/unix/sysv/linux/hppa/umount.c +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/xstat.c b/sysdeps/unix/sysv/linux/hppa/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/hppa/xstat.c +rename to sysdeps/unix/sysv/linux/hppa/xstat.c diff --git a/SOURCES/glibc-rh1505492-ports-move-ia64.patch b/SOURCES/glibc-rh1505492-ports-move-ia64.patch new file mode 100644 index 0000000..b108301 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-ia64.patch @@ -0,0 +1,2029 @@ +Recreation of this upstream patch: + +commit c70a4b1db0cf5e813ae24b0fa96a352399eb6edf +Author: Mike Frysinger +Date: Sat Feb 15 22:07:25 2014 -0500 + + ia64: relocate out of ports/ subdir + +Git commands used: + +git mv ports/sysdeps/ia64 sysdeps/ +git mv ports/sysdeps/unix/sysv/linux/ia64 sysdeps/unix/sysv/linux/ + +diff --git a/ports/sysdeps/ia64/Implies b/sysdeps/ia64/Implies +similarity index 100% +rename from ports/sysdeps/ia64/Implies +rename to sysdeps/ia64/Implies +diff --git a/ports/sysdeps/ia64/Makeconfig b/sysdeps/ia64/Makeconfig +similarity index 100% +rename from ports/sysdeps/ia64/Makeconfig +rename to sysdeps/ia64/Makeconfig +diff --git a/ports/sysdeps/ia64/Makefile b/sysdeps/ia64/Makefile +similarity index 100% +rename from ports/sysdeps/ia64/Makefile +rename to sysdeps/ia64/Makefile +diff --git a/ports/sysdeps/ia64/Versions b/sysdeps/ia64/Versions +similarity index 100% +rename from ports/sysdeps/ia64/Versions +rename to sysdeps/ia64/Versions +diff --git a/ports/sysdeps/ia64/_mcount.S b/sysdeps/ia64/_mcount.S +similarity index 100% +rename from ports/sysdeps/ia64/_mcount.S +rename to sysdeps/ia64/_mcount.S +diff --git a/ports/sysdeps/ia64/abort-instr.h b/sysdeps/ia64/abort-instr.h +similarity index 100% +rename from ports/sysdeps/ia64/abort-instr.h +rename to sysdeps/ia64/abort-instr.h +diff --git a/ports/sysdeps/ia64/backtrace.c b/sysdeps/ia64/backtrace.c +similarity index 100% +rename from ports/sysdeps/ia64/backtrace.c +rename to sysdeps/ia64/backtrace.c +diff --git a/ports/sysdeps/ia64/bcopy.S b/sysdeps/ia64/bcopy.S +similarity index 100% +rename from ports/sysdeps/ia64/bcopy.S +rename to sysdeps/ia64/bcopy.S +diff --git a/ports/sysdeps/ia64/bits/atomic.h b/sysdeps/ia64/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/atomic.h +rename to sysdeps/ia64/bits/atomic.h +diff --git a/ports/sysdeps/ia64/bits/byteswap-16.h b/sysdeps/ia64/bits/byteswap-16.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/byteswap-16.h +rename to sysdeps/ia64/bits/byteswap-16.h +diff --git a/ports/sysdeps/ia64/bits/byteswap.h b/sysdeps/ia64/bits/byteswap.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/byteswap.h +rename to sysdeps/ia64/bits/byteswap.h +diff --git a/ports/sysdeps/ia64/bits/fenv.h b/sysdeps/ia64/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/fenv.h +rename to sysdeps/ia64/bits/fenv.h +diff --git a/ports/sysdeps/ia64/bits/huge_vall.h b/sysdeps/ia64/bits/huge_vall.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/huge_vall.h +rename to sysdeps/ia64/bits/huge_vall.h +diff --git a/ports/sysdeps/ia64/bits/link.h b/sysdeps/ia64/bits/link.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/link.h +rename to sysdeps/ia64/bits/link.h +diff --git a/ports/sysdeps/ia64/bits/linkmap.h b/sysdeps/ia64/bits/linkmap.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/linkmap.h +rename to sysdeps/ia64/bits/linkmap.h +diff --git a/ports/sysdeps/ia64/bits/mathdef.h b/sysdeps/ia64/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/mathdef.h +rename to sysdeps/ia64/bits/mathdef.h +diff --git a/ports/sysdeps/ia64/bits/xtitypes.h b/sysdeps/ia64/bits/xtitypes.h +similarity index 100% +rename from ports/sysdeps/ia64/bits/xtitypes.h +rename to sysdeps/ia64/bits/xtitypes.h +diff --git a/ports/sysdeps/ia64/bzero.S b/sysdeps/ia64/bzero.S +similarity index 100% +rename from ports/sysdeps/ia64/bzero.S +rename to sysdeps/ia64/bzero.S +diff --git a/ports/sysdeps/ia64/configure b/sysdeps/ia64/configure +similarity index 100% +rename from ports/sysdeps/ia64/configure +rename to sysdeps/ia64/configure +diff --git a/ports/sysdeps/ia64/configure.in b/sysdeps/ia64/configure.in +similarity index 100% +rename from ports/sysdeps/ia64/configure.in +rename to sysdeps/ia64/configure.in +diff --git a/ports/sysdeps/ia64/crti.S b/sysdeps/ia64/crti.S +similarity index 100% +rename from ports/sysdeps/ia64/crti.S +rename to sysdeps/ia64/crti.S +diff --git a/ports/sysdeps/ia64/crtn.S b/sysdeps/ia64/crtn.S +similarity index 100% +rename from ports/sysdeps/ia64/crtn.S +rename to sysdeps/ia64/crtn.S +diff --git a/ports/sysdeps/ia64/dl-dtprocnum.h b/sysdeps/ia64/dl-dtprocnum.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-dtprocnum.h +rename to sysdeps/ia64/dl-dtprocnum.h +diff --git a/ports/sysdeps/ia64/dl-fptr.h b/sysdeps/ia64/dl-fptr.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-fptr.h +rename to sysdeps/ia64/dl-fptr.h +diff --git a/ports/sysdeps/ia64/dl-lookupcfg.h b/sysdeps/ia64/dl-lookupcfg.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-lookupcfg.h +rename to sysdeps/ia64/dl-lookupcfg.h +diff --git a/ports/sysdeps/ia64/dl-machine.h b/sysdeps/ia64/dl-machine.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-machine.h +rename to sysdeps/ia64/dl-machine.h +diff --git a/ports/sysdeps/ia64/dl-sysdep.h b/sysdeps/ia64/dl-sysdep.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-sysdep.h +rename to sysdeps/ia64/dl-sysdep.h +diff --git a/ports/sysdeps/ia64/dl-tls.h b/sysdeps/ia64/dl-tls.h +similarity index 100% +rename from ports/sysdeps/ia64/dl-tls.h +rename to sysdeps/ia64/dl-tls.h +diff --git a/ports/sysdeps/ia64/dl-trampoline.S b/sysdeps/ia64/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/ia64/dl-trampoline.S +rename to sysdeps/ia64/dl-trampoline.S +diff --git a/ports/sysdeps/ia64/entry.h b/sysdeps/ia64/entry.h +similarity index 100% +rename from ports/sysdeps/ia64/entry.h +rename to sysdeps/ia64/entry.h +diff --git a/ports/sysdeps/ia64/fpu/Makefile b/sysdeps/ia64/fpu/Makefile +similarity index 100% +rename from ports/sysdeps/ia64/fpu/Makefile +rename to sysdeps/ia64/fpu/Makefile +diff --git a/ports/sysdeps/ia64/fpu/README b/sysdeps/ia64/fpu/README +similarity index 100% +rename from ports/sysdeps/ia64/fpu/README +rename to sysdeps/ia64/fpu/README +diff --git a/ports/sysdeps/ia64/fpu/Versions b/sysdeps/ia64/fpu/Versions +similarity index 100% +rename from ports/sysdeps/ia64/fpu/Versions +rename to sysdeps/ia64/fpu/Versions +diff --git a/ports/sysdeps/ia64/fpu/bits/math-finite.h b/sysdeps/ia64/fpu/bits/math-finite.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/bits/math-finite.h +rename to sysdeps/ia64/fpu/bits/math-finite.h +diff --git a/ports/sysdeps/ia64/fpu/bits/mathinline.h b/sysdeps/ia64/fpu/bits/mathinline.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/bits/mathinline.h +rename to sysdeps/ia64/fpu/bits/mathinline.h +diff --git a/ports/sysdeps/ia64/fpu/branred.c b/sysdeps/ia64/fpu/branred.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/branred.c +rename to sysdeps/ia64/fpu/branred.c +diff --git a/ports/sysdeps/ia64/fpu/doasin.c b/sysdeps/ia64/fpu/doasin.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/doasin.c +rename to sysdeps/ia64/fpu/doasin.c +diff --git a/ports/sysdeps/ia64/fpu/dosincos.c b/sysdeps/ia64/fpu/dosincos.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/dosincos.c +rename to sysdeps/ia64/fpu/dosincos.c +diff --git a/ports/sysdeps/ia64/fpu/e_acos.S b/sysdeps/ia64/fpu/e_acos.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acos.S +rename to sysdeps/ia64/fpu/e_acos.S +diff --git a/ports/sysdeps/ia64/fpu/e_acosf.S b/sysdeps/ia64/fpu/e_acosf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acosf.S +rename to sysdeps/ia64/fpu/e_acosf.S +diff --git a/ports/sysdeps/ia64/fpu/e_acosh.S b/sysdeps/ia64/fpu/e_acosh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acosh.S +rename to sysdeps/ia64/fpu/e_acosh.S +diff --git a/ports/sysdeps/ia64/fpu/e_acoshf.S b/sysdeps/ia64/fpu/e_acoshf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acoshf.S +rename to sysdeps/ia64/fpu/e_acoshf.S +diff --git a/ports/sysdeps/ia64/fpu/e_acoshl.S b/sysdeps/ia64/fpu/e_acoshl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acoshl.S +rename to sysdeps/ia64/fpu/e_acoshl.S +diff --git a/ports/sysdeps/ia64/fpu/e_acosl.S b/sysdeps/ia64/fpu/e_acosl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_acosl.S +rename to sysdeps/ia64/fpu/e_acosl.S +diff --git a/ports/sysdeps/ia64/fpu/e_asin.S b/sysdeps/ia64/fpu/e_asin.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_asin.S +rename to sysdeps/ia64/fpu/e_asin.S +diff --git a/ports/sysdeps/ia64/fpu/e_asinf.S b/sysdeps/ia64/fpu/e_asinf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_asinf.S +rename to sysdeps/ia64/fpu/e_asinf.S +diff --git a/ports/sysdeps/ia64/fpu/e_asinl.S b/sysdeps/ia64/fpu/e_asinl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_asinl.S +rename to sysdeps/ia64/fpu/e_asinl.S +diff --git a/ports/sysdeps/ia64/fpu/e_atan2.S b/sysdeps/ia64/fpu/e_atan2.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atan2.S +rename to sysdeps/ia64/fpu/e_atan2.S +diff --git a/ports/sysdeps/ia64/fpu/e_atan2f.S b/sysdeps/ia64/fpu/e_atan2f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atan2f.S +rename to sysdeps/ia64/fpu/e_atan2f.S +diff --git a/ports/sysdeps/ia64/fpu/e_atan2l.c b/sysdeps/ia64/fpu/e_atan2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atan2l.c +rename to sysdeps/ia64/fpu/e_atan2l.c +diff --git a/ports/sysdeps/ia64/fpu/e_atanh.S b/sysdeps/ia64/fpu/e_atanh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atanh.S +rename to sysdeps/ia64/fpu/e_atanh.S +diff --git a/ports/sysdeps/ia64/fpu/e_atanhf.S b/sysdeps/ia64/fpu/e_atanhf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atanhf.S +rename to sysdeps/ia64/fpu/e_atanhf.S +diff --git a/ports/sysdeps/ia64/fpu/e_atanhl.S b/sysdeps/ia64/fpu/e_atanhl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_atanhl.S +rename to sysdeps/ia64/fpu/e_atanhl.S +diff --git a/ports/sysdeps/ia64/fpu/e_cosh.S b/sysdeps/ia64/fpu/e_cosh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_cosh.S +rename to sysdeps/ia64/fpu/e_cosh.S +diff --git a/ports/sysdeps/ia64/fpu/e_coshf.S b/sysdeps/ia64/fpu/e_coshf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_coshf.S +rename to sysdeps/ia64/fpu/e_coshf.S +diff --git a/ports/sysdeps/ia64/fpu/e_coshl.S b/sysdeps/ia64/fpu/e_coshl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_coshl.S +rename to sysdeps/ia64/fpu/e_coshl.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp.S b/sysdeps/ia64/fpu/e_exp.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp.S +rename to sysdeps/ia64/fpu/e_exp.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp10.S b/sysdeps/ia64/fpu/e_exp10.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp10.S +rename to sysdeps/ia64/fpu/e_exp10.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp10f.S b/sysdeps/ia64/fpu/e_exp10f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp10f.S +rename to sysdeps/ia64/fpu/e_exp10f.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp10l.S b/sysdeps/ia64/fpu/e_exp10l.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp10l.S +rename to sysdeps/ia64/fpu/e_exp10l.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp2.S b/sysdeps/ia64/fpu/e_exp2.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp2.S +rename to sysdeps/ia64/fpu/e_exp2.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp2f.S b/sysdeps/ia64/fpu/e_exp2f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp2f.S +rename to sysdeps/ia64/fpu/e_exp2f.S +diff --git a/ports/sysdeps/ia64/fpu/e_exp2l.S b/sysdeps/ia64/fpu/e_exp2l.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_exp2l.S +rename to sysdeps/ia64/fpu/e_exp2l.S +diff --git a/ports/sysdeps/ia64/fpu/e_expf.S b/sysdeps/ia64/fpu/e_expf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_expf.S +rename to sysdeps/ia64/fpu/e_expf.S +diff --git a/ports/sysdeps/ia64/fpu/e_expl.c b/sysdeps/ia64/fpu/e_expl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_expl.c +rename to sysdeps/ia64/fpu/e_expl.c +diff --git a/ports/sysdeps/ia64/fpu/e_fmod.S b/sysdeps/ia64/fpu/e_fmod.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_fmod.S +rename to sysdeps/ia64/fpu/e_fmod.S +diff --git a/ports/sysdeps/ia64/fpu/e_fmodf.S b/sysdeps/ia64/fpu/e_fmodf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_fmodf.S +rename to sysdeps/ia64/fpu/e_fmodf.S +diff --git a/ports/sysdeps/ia64/fpu/e_fmodl.S b/sysdeps/ia64/fpu/e_fmodl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_fmodl.S +rename to sysdeps/ia64/fpu/e_fmodl.S +diff --git a/ports/sysdeps/ia64/fpu/e_gamma_r.c b/sysdeps/ia64/fpu/e_gamma_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_gamma_r.c +rename to sysdeps/ia64/fpu/e_gamma_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_gammaf_r.c b/sysdeps/ia64/fpu/e_gammaf_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_gammaf_r.c +rename to sysdeps/ia64/fpu/e_gammaf_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_gammal_r.c b/sysdeps/ia64/fpu/e_gammal_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_gammal_r.c +rename to sysdeps/ia64/fpu/e_gammal_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_hypot.S b/sysdeps/ia64/fpu/e_hypot.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_hypot.S +rename to sysdeps/ia64/fpu/e_hypot.S +diff --git a/ports/sysdeps/ia64/fpu/e_hypotf.S b/sysdeps/ia64/fpu/e_hypotf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_hypotf.S +rename to sysdeps/ia64/fpu/e_hypotf.S +diff --git a/ports/sysdeps/ia64/fpu/e_hypotl.S b/sysdeps/ia64/fpu/e_hypotl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_hypotl.S +rename to sysdeps/ia64/fpu/e_hypotl.S +diff --git a/ports/sysdeps/ia64/fpu/e_ilogbl.S b/sysdeps/ia64/fpu/e_ilogbl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_ilogbl.S +rename to sysdeps/ia64/fpu/e_ilogbl.S +diff --git a/ports/sysdeps/ia64/fpu/e_lgamma_r.c b/sysdeps/ia64/fpu/e_lgamma_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_lgamma_r.c +rename to sysdeps/ia64/fpu/e_lgamma_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_lgammaf_r.c b/sysdeps/ia64/fpu/e_lgammaf_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_lgammaf_r.c +rename to sysdeps/ia64/fpu/e_lgammaf_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_lgammal_r.c b/sysdeps/ia64/fpu/e_lgammal_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_lgammal_r.c +rename to sysdeps/ia64/fpu/e_lgammal_r.c +diff --git a/ports/sysdeps/ia64/fpu/e_log.S b/sysdeps/ia64/fpu/e_log.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log.S +rename to sysdeps/ia64/fpu/e_log.S +diff --git a/ports/sysdeps/ia64/fpu/e_log10.c b/sysdeps/ia64/fpu/e_log10.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log10.c +rename to sysdeps/ia64/fpu/e_log10.c +diff --git a/ports/sysdeps/ia64/fpu/e_log10f.c b/sysdeps/ia64/fpu/e_log10f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log10f.c +rename to sysdeps/ia64/fpu/e_log10f.c +diff --git a/ports/sysdeps/ia64/fpu/e_log10l.c b/sysdeps/ia64/fpu/e_log10l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log10l.c +rename to sysdeps/ia64/fpu/e_log10l.c +diff --git a/ports/sysdeps/ia64/fpu/e_log2.S b/sysdeps/ia64/fpu/e_log2.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log2.S +rename to sysdeps/ia64/fpu/e_log2.S +diff --git a/ports/sysdeps/ia64/fpu/e_log2f.S b/sysdeps/ia64/fpu/e_log2f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log2f.S +rename to sysdeps/ia64/fpu/e_log2f.S +diff --git a/ports/sysdeps/ia64/fpu/e_log2l.S b/sysdeps/ia64/fpu/e_log2l.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_log2l.S +rename to sysdeps/ia64/fpu/e_log2l.S +diff --git a/ports/sysdeps/ia64/fpu/e_logf.S b/sysdeps/ia64/fpu/e_logf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_logf.S +rename to sysdeps/ia64/fpu/e_logf.S +diff --git a/ports/sysdeps/ia64/fpu/e_logl.S b/sysdeps/ia64/fpu/e_logl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_logl.S +rename to sysdeps/ia64/fpu/e_logl.S +diff --git a/ports/sysdeps/ia64/fpu/e_pow.S b/sysdeps/ia64/fpu/e_pow.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_pow.S +rename to sysdeps/ia64/fpu/e_pow.S +diff --git a/ports/sysdeps/ia64/fpu/e_powf.S b/sysdeps/ia64/fpu/e_powf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_powf.S +rename to sysdeps/ia64/fpu/e_powf.S +diff --git a/ports/sysdeps/ia64/fpu/e_powl.S b/sysdeps/ia64/fpu/e_powl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_powl.S +rename to sysdeps/ia64/fpu/e_powl.S +diff --git a/ports/sysdeps/ia64/fpu/e_rem_pio2.c b/sysdeps/ia64/fpu/e_rem_pio2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_rem_pio2.c +rename to sysdeps/ia64/fpu/e_rem_pio2.c +diff --git a/ports/sysdeps/ia64/fpu/e_rem_pio2f.c b/sysdeps/ia64/fpu/e_rem_pio2f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_rem_pio2f.c +rename to sysdeps/ia64/fpu/e_rem_pio2f.c +diff --git a/ports/sysdeps/ia64/fpu/e_rem_pio2l.c b/sysdeps/ia64/fpu/e_rem_pio2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_rem_pio2l.c +rename to sysdeps/ia64/fpu/e_rem_pio2l.c +diff --git a/ports/sysdeps/ia64/fpu/e_remainder.S b/sysdeps/ia64/fpu/e_remainder.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_remainder.S +rename to sysdeps/ia64/fpu/e_remainder.S +diff --git a/ports/sysdeps/ia64/fpu/e_remainderf.S b/sysdeps/ia64/fpu/e_remainderf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_remainderf.S +rename to sysdeps/ia64/fpu/e_remainderf.S +diff --git a/ports/sysdeps/ia64/fpu/e_remainderl.S b/sysdeps/ia64/fpu/e_remainderl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_remainderl.S +rename to sysdeps/ia64/fpu/e_remainderl.S +diff --git a/ports/sysdeps/ia64/fpu/e_scalb.S b/sysdeps/ia64/fpu/e_scalb.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_scalb.S +rename to sysdeps/ia64/fpu/e_scalb.S +diff --git a/ports/sysdeps/ia64/fpu/e_scalbf.S b/sysdeps/ia64/fpu/e_scalbf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_scalbf.S +rename to sysdeps/ia64/fpu/e_scalbf.S +diff --git a/ports/sysdeps/ia64/fpu/e_scalbl.S b/sysdeps/ia64/fpu/e_scalbl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_scalbl.S +rename to sysdeps/ia64/fpu/e_scalbl.S +diff --git a/ports/sysdeps/ia64/fpu/e_sinh.S b/sysdeps/ia64/fpu/e_sinh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sinh.S +rename to sysdeps/ia64/fpu/e_sinh.S +diff --git a/ports/sysdeps/ia64/fpu/e_sinhf.S b/sysdeps/ia64/fpu/e_sinhf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sinhf.S +rename to sysdeps/ia64/fpu/e_sinhf.S +diff --git a/ports/sysdeps/ia64/fpu/e_sinhl.S b/sysdeps/ia64/fpu/e_sinhl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sinhl.S +rename to sysdeps/ia64/fpu/e_sinhl.S +diff --git a/ports/sysdeps/ia64/fpu/e_sqrt.S b/sysdeps/ia64/fpu/e_sqrt.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sqrt.S +rename to sysdeps/ia64/fpu/e_sqrt.S +diff --git a/ports/sysdeps/ia64/fpu/e_sqrtf.S b/sysdeps/ia64/fpu/e_sqrtf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sqrtf.S +rename to sysdeps/ia64/fpu/e_sqrtf.S +diff --git a/ports/sysdeps/ia64/fpu/e_sqrtl.S b/sysdeps/ia64/fpu/e_sqrtl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/e_sqrtl.S +rename to sysdeps/ia64/fpu/e_sqrtl.S +diff --git a/ports/sysdeps/ia64/fpu/fclrexcpt.c b/sysdeps/ia64/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fclrexcpt.c +rename to sysdeps/ia64/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/ia64/fpu/fedisblxcpt.c b/sysdeps/ia64/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fedisblxcpt.c +rename to sysdeps/ia64/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/ia64/fpu/feenablxcpt.c b/sysdeps/ia64/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/feenablxcpt.c +rename to sysdeps/ia64/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/ia64/fpu/fegetenv.c b/sysdeps/ia64/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fegetenv.c +rename to sysdeps/ia64/fpu/fegetenv.c +diff --git a/ports/sysdeps/ia64/fpu/fegetexcept.c b/sysdeps/ia64/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fegetexcept.c +rename to sysdeps/ia64/fpu/fegetexcept.c +diff --git a/ports/sysdeps/ia64/fpu/fegetround.c b/sysdeps/ia64/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fegetround.c +rename to sysdeps/ia64/fpu/fegetround.c +diff --git a/ports/sysdeps/ia64/fpu/feholdexcpt.c b/sysdeps/ia64/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/feholdexcpt.c +rename to sysdeps/ia64/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/ia64/fpu/fesetenv.c b/sysdeps/ia64/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fesetenv.c +rename to sysdeps/ia64/fpu/fesetenv.c +diff --git a/ports/sysdeps/ia64/fpu/fesetround.c b/sysdeps/ia64/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fesetround.c +rename to sysdeps/ia64/fpu/fesetround.c +diff --git a/ports/sysdeps/ia64/fpu/feupdateenv.c b/sysdeps/ia64/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/feupdateenv.c +rename to sysdeps/ia64/fpu/feupdateenv.c +diff --git a/ports/sysdeps/ia64/fpu/fgetexcptflg.c b/sysdeps/ia64/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fgetexcptflg.c +rename to sysdeps/ia64/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/ia64/fpu/fraiseexcpt.c b/sysdeps/ia64/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fraiseexcpt.c +rename to sysdeps/ia64/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/ia64/fpu/fsetexcptflg.c b/sysdeps/ia64/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/fsetexcptflg.c +rename to sysdeps/ia64/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/ia64/fpu/ftestexcept.c b/sysdeps/ia64/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/ftestexcept.c +rename to sysdeps/ia64/fpu/ftestexcept.c +diff --git a/ports/sysdeps/ia64/fpu/gen_import_file_list b/sysdeps/ia64/fpu/gen_import_file_list +similarity index 100% +rename from ports/sysdeps/ia64/fpu/gen_import_file_list +rename to sysdeps/ia64/fpu/gen_import_file_list +diff --git a/ports/sysdeps/ia64/fpu/get-rounding-mode.h b/sysdeps/ia64/fpu/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/get-rounding-mode.h +rename to sysdeps/ia64/fpu/get-rounding-mode.h +diff --git a/ports/sysdeps/ia64/fpu/halfulp.c b/sysdeps/ia64/fpu/halfulp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/halfulp.c +rename to sysdeps/ia64/fpu/halfulp.c +diff --git a/ports/sysdeps/ia64/fpu/import_check b/sysdeps/ia64/fpu/import_check +similarity index 100% +rename from ports/sysdeps/ia64/fpu/import_check +rename to sysdeps/ia64/fpu/import_check +diff --git a/ports/sysdeps/ia64/fpu/import_diffs b/sysdeps/ia64/fpu/import_diffs +similarity index 100% +rename from ports/sysdeps/ia64/fpu/import_diffs +rename to sysdeps/ia64/fpu/import_diffs +diff --git a/ports/sysdeps/ia64/fpu/import_file.awk b/sysdeps/ia64/fpu/import_file.awk +similarity index 100% +rename from ports/sysdeps/ia64/fpu/import_file.awk +rename to sysdeps/ia64/fpu/import_file.awk +diff --git a/ports/sysdeps/ia64/fpu/import_intel_libm b/sysdeps/ia64/fpu/import_intel_libm +similarity index 100% +rename from ports/sysdeps/ia64/fpu/import_intel_libm +rename to sysdeps/ia64/fpu/import_intel_libm +diff --git a/ports/sysdeps/ia64/fpu/k_rem_pio2.c b/sysdeps/ia64/fpu/k_rem_pio2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/k_rem_pio2.c +rename to sysdeps/ia64/fpu/k_rem_pio2.c +diff --git a/ports/sysdeps/ia64/fpu/k_rem_pio2f.c b/sysdeps/ia64/fpu/k_rem_pio2f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/k_rem_pio2f.c +rename to sysdeps/ia64/fpu/k_rem_pio2f.c +diff --git a/ports/sysdeps/ia64/fpu/k_rem_pio2l.c b/sysdeps/ia64/fpu/k_rem_pio2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/k_rem_pio2l.c +rename to sysdeps/ia64/fpu/k_rem_pio2l.c +diff --git a/ports/sysdeps/ia64/fpu/libc_libm_error.c b/sysdeps/ia64/fpu/libc_libm_error.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libc_libm_error.c +rename to sysdeps/ia64/fpu/libc_libm_error.c +diff --git a/ports/sysdeps/ia64/fpu/libm-symbols.h b/sysdeps/ia64/fpu/libm-symbols.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm-symbols.h +rename to sysdeps/ia64/fpu/libm-symbols.h +diff --git a/ports/sysdeps/ia64/fpu/libm-test-ulps b/sysdeps/ia64/fpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm-test-ulps +rename to sysdeps/ia64/fpu/libm-test-ulps +diff --git a/ports/sysdeps/ia64/fpu/libm_cpu_defs.h b/sysdeps/ia64/fpu/libm_cpu_defs.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_cpu_defs.h +rename to sysdeps/ia64/fpu/libm_cpu_defs.h +diff --git a/ports/sysdeps/ia64/fpu/libm_error.c b/sysdeps/ia64/fpu/libm_error.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_error.c +rename to sysdeps/ia64/fpu/libm_error.c +diff --git a/ports/sysdeps/ia64/fpu/libm_error_codes.h b/sysdeps/ia64/fpu/libm_error_codes.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_error_codes.h +rename to sysdeps/ia64/fpu/libm_error_codes.h +diff --git a/ports/sysdeps/ia64/fpu/libm_frexp.S b/sysdeps/ia64/fpu/libm_frexp.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexp.S +rename to sysdeps/ia64/fpu/libm_frexp.S +diff --git a/ports/sysdeps/ia64/fpu/libm_frexp4.S b/sysdeps/ia64/fpu/libm_frexp4.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexp4.S +rename to sysdeps/ia64/fpu/libm_frexp4.S +diff --git a/ports/sysdeps/ia64/fpu/libm_frexp4f.S b/sysdeps/ia64/fpu/libm_frexp4f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexp4f.S +rename to sysdeps/ia64/fpu/libm_frexp4f.S +diff --git a/ports/sysdeps/ia64/fpu/libm_frexp4l.S b/sysdeps/ia64/fpu/libm_frexp4l.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexp4l.S +rename to sysdeps/ia64/fpu/libm_frexp4l.S +diff --git a/ports/sysdeps/ia64/fpu/libm_frexpf.S b/sysdeps/ia64/fpu/libm_frexpf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexpf.S +rename to sysdeps/ia64/fpu/libm_frexpf.S +diff --git a/ports/sysdeps/ia64/fpu/libm_frexpl.S b/sysdeps/ia64/fpu/libm_frexpl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_frexpl.S +rename to sysdeps/ia64/fpu/libm_frexpl.S +diff --git a/ports/sysdeps/ia64/fpu/libm_lgamma.S b/sysdeps/ia64/fpu/libm_lgamma.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_lgamma.S +rename to sysdeps/ia64/fpu/libm_lgamma.S +diff --git a/ports/sysdeps/ia64/fpu/libm_lgammaf.S b/sysdeps/ia64/fpu/libm_lgammaf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_lgammaf.S +rename to sysdeps/ia64/fpu/libm_lgammaf.S +diff --git a/ports/sysdeps/ia64/fpu/libm_lgammal.S b/sysdeps/ia64/fpu/libm_lgammal.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_lgammal.S +rename to sysdeps/ia64/fpu/libm_lgammal.S +diff --git a/ports/sysdeps/ia64/fpu/libm_reduce.S b/sysdeps/ia64/fpu/libm_reduce.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_reduce.S +rename to sysdeps/ia64/fpu/libm_reduce.S +diff --git a/ports/sysdeps/ia64/fpu/libm_scalblnf.S b/sysdeps/ia64/fpu/libm_scalblnf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_scalblnf.S +rename to sysdeps/ia64/fpu/libm_scalblnf.S +diff --git a/ports/sysdeps/ia64/fpu/libm_sincos.S b/sysdeps/ia64/fpu/libm_sincos.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_sincos.S +rename to sysdeps/ia64/fpu/libm_sincos.S +diff --git a/ports/sysdeps/ia64/fpu/libm_sincos_large.S b/sysdeps/ia64/fpu/libm_sincos_large.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_sincos_large.S +rename to sysdeps/ia64/fpu/libm_sincos_large.S +diff --git a/ports/sysdeps/ia64/fpu/libm_sincosf.S b/sysdeps/ia64/fpu/libm_sincosf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_sincosf.S +rename to sysdeps/ia64/fpu/libm_sincosf.S +diff --git a/ports/sysdeps/ia64/fpu/libm_sincosl.S b/sysdeps/ia64/fpu/libm_sincosl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_sincosl.S +rename to sysdeps/ia64/fpu/libm_sincosl.S +diff --git a/ports/sysdeps/ia64/fpu/libm_support.h b/sysdeps/ia64/fpu/libm_support.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_support.h +rename to sysdeps/ia64/fpu/libm_support.h +diff --git a/ports/sysdeps/ia64/fpu/libm_tan.S b/sysdeps/ia64/fpu/libm_tan.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/libm_tan.S +rename to sysdeps/ia64/fpu/libm_tan.S +diff --git a/ports/sysdeps/ia64/fpu/math_ldbl.h b/sysdeps/ia64/fpu/math_ldbl.h +similarity index 100% +rename from ports/sysdeps/ia64/fpu/math_ldbl.h +rename to sysdeps/ia64/fpu/math_ldbl.h +diff --git a/ports/sysdeps/ia64/fpu/mpa.c b/sysdeps/ia64/fpu/mpa.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mpa.c +rename to sysdeps/ia64/fpu/mpa.c +diff --git a/ports/sysdeps/ia64/fpu/mpatan.c b/sysdeps/ia64/fpu/mpatan.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mpatan.c +rename to sysdeps/ia64/fpu/mpatan.c +diff --git a/ports/sysdeps/ia64/fpu/mpatan2.c b/sysdeps/ia64/fpu/mpatan2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mpatan2.c +rename to sysdeps/ia64/fpu/mpatan2.c +diff --git a/ports/sysdeps/ia64/fpu/mpexp.c b/sysdeps/ia64/fpu/mpexp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mpexp.c +rename to sysdeps/ia64/fpu/mpexp.c +diff --git a/ports/sysdeps/ia64/fpu/mplog.c b/sysdeps/ia64/fpu/mplog.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mplog.c +rename to sysdeps/ia64/fpu/mplog.c +diff --git a/ports/sysdeps/ia64/fpu/mpsqrt.c b/sysdeps/ia64/fpu/mpsqrt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mpsqrt.c +rename to sysdeps/ia64/fpu/mpsqrt.c +diff --git a/ports/sysdeps/ia64/fpu/mptan.c b/sysdeps/ia64/fpu/mptan.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/mptan.c +rename to sysdeps/ia64/fpu/mptan.c +diff --git a/ports/sysdeps/ia64/fpu/printf_fphex.c b/sysdeps/ia64/fpu/printf_fphex.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/printf_fphex.c +rename to sysdeps/ia64/fpu/printf_fphex.c +diff --git a/ports/sysdeps/ia64/fpu/s_asinh.S b/sysdeps/ia64/fpu/s_asinh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_asinh.S +rename to sysdeps/ia64/fpu/s_asinh.S +diff --git a/ports/sysdeps/ia64/fpu/s_asinhf.S b/sysdeps/ia64/fpu/s_asinhf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_asinhf.S +rename to sysdeps/ia64/fpu/s_asinhf.S +diff --git a/ports/sysdeps/ia64/fpu/s_asinhl.S b/sysdeps/ia64/fpu/s_asinhl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_asinhl.S +rename to sysdeps/ia64/fpu/s_asinhl.S +diff --git a/ports/sysdeps/ia64/fpu/s_atan.S b/sysdeps/ia64/fpu/s_atan.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_atan.S +rename to sysdeps/ia64/fpu/s_atan.S +diff --git a/ports/sysdeps/ia64/fpu/s_atanf.S b/sysdeps/ia64/fpu/s_atanf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_atanf.S +rename to sysdeps/ia64/fpu/s_atanf.S +diff --git a/ports/sysdeps/ia64/fpu/s_atanl.S b/sysdeps/ia64/fpu/s_atanl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_atanl.S +rename to sysdeps/ia64/fpu/s_atanl.S +diff --git a/ports/sysdeps/ia64/fpu/s_cbrt.S b/sysdeps/ia64/fpu/s_cbrt.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cbrt.S +rename to sysdeps/ia64/fpu/s_cbrt.S +diff --git a/ports/sysdeps/ia64/fpu/s_cbrtf.S b/sysdeps/ia64/fpu/s_cbrtf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cbrtf.S +rename to sysdeps/ia64/fpu/s_cbrtf.S +diff --git a/ports/sysdeps/ia64/fpu/s_cbrtl.S b/sysdeps/ia64/fpu/s_cbrtl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cbrtl.S +rename to sysdeps/ia64/fpu/s_cbrtl.S +diff --git a/ports/sysdeps/ia64/fpu/s_ceil.S b/sysdeps/ia64/fpu/s_ceil.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ceil.S +rename to sysdeps/ia64/fpu/s_ceil.S +diff --git a/ports/sysdeps/ia64/fpu/s_ceilf.S b/sysdeps/ia64/fpu/s_ceilf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ceilf.S +rename to sysdeps/ia64/fpu/s_ceilf.S +diff --git a/ports/sysdeps/ia64/fpu/s_ceill.S b/sysdeps/ia64/fpu/s_ceill.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ceill.S +rename to sysdeps/ia64/fpu/s_ceill.S +diff --git a/ports/sysdeps/ia64/fpu/s_copysign.S b/sysdeps/ia64/fpu/s_copysign.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_copysign.S +rename to sysdeps/ia64/fpu/s_copysign.S +diff --git a/ports/sysdeps/ia64/fpu/s_copysignf.S b/sysdeps/ia64/fpu/s_copysignf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_copysignf.S +rename to sysdeps/ia64/fpu/s_copysignf.S +diff --git a/ports/sysdeps/ia64/fpu/s_copysignl.S b/sysdeps/ia64/fpu/s_copysignl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_copysignl.S +rename to sysdeps/ia64/fpu/s_copysignl.S +diff --git a/ports/sysdeps/ia64/fpu/s_cos.S b/sysdeps/ia64/fpu/s_cos.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cos.S +rename to sysdeps/ia64/fpu/s_cos.S +diff --git a/ports/sysdeps/ia64/fpu/s_cosf.S b/sysdeps/ia64/fpu/s_cosf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cosf.S +rename to sysdeps/ia64/fpu/s_cosf.S +diff --git a/ports/sysdeps/ia64/fpu/s_cosl.S b/sysdeps/ia64/fpu/s_cosl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_cosl.S +rename to sysdeps/ia64/fpu/s_cosl.S +diff --git a/ports/sysdeps/ia64/fpu/s_erf.S b/sysdeps/ia64/fpu/s_erf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erf.S +rename to sysdeps/ia64/fpu/s_erf.S +diff --git a/ports/sysdeps/ia64/fpu/s_erfc.S b/sysdeps/ia64/fpu/s_erfc.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erfc.S +rename to sysdeps/ia64/fpu/s_erfc.S +diff --git a/ports/sysdeps/ia64/fpu/s_erfcf.S b/sysdeps/ia64/fpu/s_erfcf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erfcf.S +rename to sysdeps/ia64/fpu/s_erfcf.S +diff --git a/ports/sysdeps/ia64/fpu/s_erfcl.S b/sysdeps/ia64/fpu/s_erfcl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erfcl.S +rename to sysdeps/ia64/fpu/s_erfcl.S +diff --git a/ports/sysdeps/ia64/fpu/s_erff.S b/sysdeps/ia64/fpu/s_erff.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erff.S +rename to sysdeps/ia64/fpu/s_erff.S +diff --git a/ports/sysdeps/ia64/fpu/s_erfl.S b/sysdeps/ia64/fpu/s_erfl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_erfl.S +rename to sysdeps/ia64/fpu/s_erfl.S +diff --git a/ports/sysdeps/ia64/fpu/s_expm1.S b/sysdeps/ia64/fpu/s_expm1.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_expm1.S +rename to sysdeps/ia64/fpu/s_expm1.S +diff --git a/ports/sysdeps/ia64/fpu/s_expm1f.S b/sysdeps/ia64/fpu/s_expm1f.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_expm1f.S +rename to sysdeps/ia64/fpu/s_expm1f.S +diff --git a/ports/sysdeps/ia64/fpu/s_expm1l.S b/sysdeps/ia64/fpu/s_expm1l.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_expm1l.S +rename to sysdeps/ia64/fpu/s_expm1l.S +diff --git a/ports/sysdeps/ia64/fpu/s_fabs.S b/sysdeps/ia64/fpu/s_fabs.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fabs.S +rename to sysdeps/ia64/fpu/s_fabs.S +diff --git a/ports/sysdeps/ia64/fpu/s_fabsf.S b/sysdeps/ia64/fpu/s_fabsf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fabsf.S +rename to sysdeps/ia64/fpu/s_fabsf.S +diff --git a/ports/sysdeps/ia64/fpu/s_fabsl.S b/sysdeps/ia64/fpu/s_fabsl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fabsl.S +rename to sysdeps/ia64/fpu/s_fabsl.S +diff --git a/ports/sysdeps/ia64/fpu/s_fdim.S b/sysdeps/ia64/fpu/s_fdim.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fdim.S +rename to sysdeps/ia64/fpu/s_fdim.S +diff --git a/ports/sysdeps/ia64/fpu/s_fdimf.S b/sysdeps/ia64/fpu/s_fdimf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fdimf.S +rename to sysdeps/ia64/fpu/s_fdimf.S +diff --git a/ports/sysdeps/ia64/fpu/s_fdiml.S b/sysdeps/ia64/fpu/s_fdiml.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fdiml.S +rename to sysdeps/ia64/fpu/s_fdiml.S +diff --git a/ports/sysdeps/ia64/fpu/s_finite.S b/sysdeps/ia64/fpu/s_finite.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_finite.S +rename to sysdeps/ia64/fpu/s_finite.S +diff --git a/ports/sysdeps/ia64/fpu/s_finitef.S b/sysdeps/ia64/fpu/s_finitef.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_finitef.S +rename to sysdeps/ia64/fpu/s_finitef.S +diff --git a/ports/sysdeps/ia64/fpu/s_finitel.S b/sysdeps/ia64/fpu/s_finitel.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_finitel.S +rename to sysdeps/ia64/fpu/s_finitel.S +diff --git a/ports/sysdeps/ia64/fpu/s_floor.S b/sysdeps/ia64/fpu/s_floor.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_floor.S +rename to sysdeps/ia64/fpu/s_floor.S +diff --git a/ports/sysdeps/ia64/fpu/s_floorf.S b/sysdeps/ia64/fpu/s_floorf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_floorf.S +rename to sysdeps/ia64/fpu/s_floorf.S +diff --git a/ports/sysdeps/ia64/fpu/s_floorl.S b/sysdeps/ia64/fpu/s_floorl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_floorl.S +rename to sysdeps/ia64/fpu/s_floorl.S +diff --git a/ports/sysdeps/ia64/fpu/s_fma.S b/sysdeps/ia64/fpu/s_fma.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fma.S +rename to sysdeps/ia64/fpu/s_fma.S +diff --git a/ports/sysdeps/ia64/fpu/s_fmaf.S b/sysdeps/ia64/fpu/s_fmaf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fmaf.S +rename to sysdeps/ia64/fpu/s_fmaf.S +diff --git a/ports/sysdeps/ia64/fpu/s_fmal.S b/sysdeps/ia64/fpu/s_fmal.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fmal.S +rename to sysdeps/ia64/fpu/s_fmal.S +diff --git a/ports/sysdeps/ia64/fpu/s_fmax.S b/sysdeps/ia64/fpu/s_fmax.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fmax.S +rename to sysdeps/ia64/fpu/s_fmax.S +diff --git a/ports/sysdeps/ia64/fpu/s_fmaxf.S b/sysdeps/ia64/fpu/s_fmaxf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fmaxf.S +rename to sysdeps/ia64/fpu/s_fmaxf.S +diff --git a/ports/sysdeps/ia64/fpu/s_fmaxl.S b/sysdeps/ia64/fpu/s_fmaxl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fmaxl.S +rename to sysdeps/ia64/fpu/s_fmaxl.S +diff --git a/ports/sysdeps/ia64/fpu/s_fpclassify.S b/sysdeps/ia64/fpu/s_fpclassify.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fpclassify.S +rename to sysdeps/ia64/fpu/s_fpclassify.S +diff --git a/ports/sysdeps/ia64/fpu/s_fpclassifyf.S b/sysdeps/ia64/fpu/s_fpclassifyf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fpclassifyf.S +rename to sysdeps/ia64/fpu/s_fpclassifyf.S +diff --git a/ports/sysdeps/ia64/fpu/s_fpclassifyl.S b/sysdeps/ia64/fpu/s_fpclassifyl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_fpclassifyl.S +rename to sysdeps/ia64/fpu/s_fpclassifyl.S +diff --git a/ports/sysdeps/ia64/fpu/s_frexp.c b/sysdeps/ia64/fpu/s_frexp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_frexp.c +rename to sysdeps/ia64/fpu/s_frexp.c +diff --git a/ports/sysdeps/ia64/fpu/s_frexpf.c b/sysdeps/ia64/fpu/s_frexpf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_frexpf.c +rename to sysdeps/ia64/fpu/s_frexpf.c +diff --git a/ports/sysdeps/ia64/fpu/s_frexpl.c b/sysdeps/ia64/fpu/s_frexpl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_frexpl.c +rename to sysdeps/ia64/fpu/s_frexpl.c +diff --git a/ports/sysdeps/ia64/fpu/s_ilogb.S b/sysdeps/ia64/fpu/s_ilogb.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ilogb.S +rename to sysdeps/ia64/fpu/s_ilogb.S +diff --git a/ports/sysdeps/ia64/fpu/s_ilogbf.S b/sysdeps/ia64/fpu/s_ilogbf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ilogbf.S +rename to sysdeps/ia64/fpu/s_ilogbf.S +diff --git a/ports/sysdeps/ia64/fpu/s_isinf.S b/sysdeps/ia64/fpu/s_isinf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isinf.S +rename to sysdeps/ia64/fpu/s_isinf.S +diff --git a/ports/sysdeps/ia64/fpu/s_isinff.S b/sysdeps/ia64/fpu/s_isinff.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isinff.S +rename to sysdeps/ia64/fpu/s_isinff.S +diff --git a/ports/sysdeps/ia64/fpu/s_isinfl.S b/sysdeps/ia64/fpu/s_isinfl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isinfl.S +rename to sysdeps/ia64/fpu/s_isinfl.S +diff --git a/ports/sysdeps/ia64/fpu/s_isnan.S b/sysdeps/ia64/fpu/s_isnan.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isnan.S +rename to sysdeps/ia64/fpu/s_isnan.S +diff --git a/ports/sysdeps/ia64/fpu/s_isnanf.S b/sysdeps/ia64/fpu/s_isnanf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isnanf.S +rename to sysdeps/ia64/fpu/s_isnanf.S +diff --git a/ports/sysdeps/ia64/fpu/s_isnanl.S b/sysdeps/ia64/fpu/s_isnanl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_isnanl.S +rename to sysdeps/ia64/fpu/s_isnanl.S +diff --git a/ports/sysdeps/ia64/fpu/s_ldexp.c b/sysdeps/ia64/fpu/s_ldexp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ldexp.c +rename to sysdeps/ia64/fpu/s_ldexp.c +diff --git a/ports/sysdeps/ia64/fpu/s_ldexpf.c b/sysdeps/ia64/fpu/s_ldexpf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ldexpf.c +rename to sysdeps/ia64/fpu/s_ldexpf.c +diff --git a/ports/sysdeps/ia64/fpu/s_ldexpl.c b/sysdeps/ia64/fpu/s_ldexpl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_ldexpl.c +rename to sysdeps/ia64/fpu/s_ldexpl.c +diff --git a/ports/sysdeps/ia64/fpu/s_libm_ldexp.S b/sysdeps/ia64/fpu/s_libm_ldexp.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_ldexp.S +rename to sysdeps/ia64/fpu/s_libm_ldexp.S +diff --git a/ports/sysdeps/ia64/fpu/s_libm_ldexpf.S b/sysdeps/ia64/fpu/s_libm_ldexpf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_ldexpf.S +rename to sysdeps/ia64/fpu/s_libm_ldexpf.S +diff --git a/ports/sysdeps/ia64/fpu/s_libm_ldexpl.S b/sysdeps/ia64/fpu/s_libm_ldexpl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_ldexpl.S +rename to sysdeps/ia64/fpu/s_libm_ldexpl.S +diff --git a/ports/sysdeps/ia64/fpu/s_libm_scalbn.S b/sysdeps/ia64/fpu/s_libm_scalbn.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_scalbn.S +rename to sysdeps/ia64/fpu/s_libm_scalbn.S +diff --git a/ports/sysdeps/ia64/fpu/s_libm_scalbnf.S b/sysdeps/ia64/fpu/s_libm_scalbnf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_scalbnf.S +rename to sysdeps/ia64/fpu/s_libm_scalbnf.S +diff --git a/ports/sysdeps/ia64/fpu/s_libm_scalbnl.S b/sysdeps/ia64/fpu/s_libm_scalbnl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_libm_scalbnl.S +rename to sysdeps/ia64/fpu/s_libm_scalbnl.S +diff --git a/ports/sysdeps/ia64/fpu/s_log1p.S b/sysdeps/ia64/fpu/s_log1p.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_log1p.S +rename to sysdeps/ia64/fpu/s_log1p.S +diff --git a/ports/sysdeps/ia64/fpu/s_log1pf.S b/sysdeps/ia64/fpu/s_log1pf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_log1pf.S +rename to sysdeps/ia64/fpu/s_log1pf.S +diff --git a/ports/sysdeps/ia64/fpu/s_log1pl.S b/sysdeps/ia64/fpu/s_log1pl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_log1pl.S +rename to sysdeps/ia64/fpu/s_log1pl.S +diff --git a/ports/sysdeps/ia64/fpu/s_logb.S b/sysdeps/ia64/fpu/s_logb.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_logb.S +rename to sysdeps/ia64/fpu/s_logb.S +diff --git a/ports/sysdeps/ia64/fpu/s_logbf.S b/sysdeps/ia64/fpu/s_logbf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_logbf.S +rename to sysdeps/ia64/fpu/s_logbf.S +diff --git a/ports/sysdeps/ia64/fpu/s_logbl.S b/sysdeps/ia64/fpu/s_logbl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_logbl.S +rename to sysdeps/ia64/fpu/s_logbl.S +diff --git a/ports/sysdeps/ia64/fpu/s_matherrf.c b/sysdeps/ia64/fpu/s_matherrf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_matherrf.c +rename to sysdeps/ia64/fpu/s_matherrf.c +diff --git a/ports/sysdeps/ia64/fpu/s_matherrl.c b/sysdeps/ia64/fpu/s_matherrl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_matherrl.c +rename to sysdeps/ia64/fpu/s_matherrl.c +diff --git a/ports/sysdeps/ia64/fpu/s_modf.S b/sysdeps/ia64/fpu/s_modf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_modf.S +rename to sysdeps/ia64/fpu/s_modf.S +diff --git a/ports/sysdeps/ia64/fpu/s_modff.S b/sysdeps/ia64/fpu/s_modff.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_modff.S +rename to sysdeps/ia64/fpu/s_modff.S +diff --git a/ports/sysdeps/ia64/fpu/s_modfl.S b/sysdeps/ia64/fpu/s_modfl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_modfl.S +rename to sysdeps/ia64/fpu/s_modfl.S +diff --git a/ports/sysdeps/ia64/fpu/s_nearbyint.S b/sysdeps/ia64/fpu/s_nearbyint.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nearbyint.S +rename to sysdeps/ia64/fpu/s_nearbyint.S +diff --git a/ports/sysdeps/ia64/fpu/s_nearbyintf.S b/sysdeps/ia64/fpu/s_nearbyintf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nearbyintf.S +rename to sysdeps/ia64/fpu/s_nearbyintf.S +diff --git a/ports/sysdeps/ia64/fpu/s_nearbyintl.S b/sysdeps/ia64/fpu/s_nearbyintl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nearbyintl.S +rename to sysdeps/ia64/fpu/s_nearbyintl.S +diff --git a/ports/sysdeps/ia64/fpu/s_nextafter.S b/sysdeps/ia64/fpu/s_nextafter.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nextafter.S +rename to sysdeps/ia64/fpu/s_nextafter.S +diff --git a/ports/sysdeps/ia64/fpu/s_nextafterf.S b/sysdeps/ia64/fpu/s_nextafterf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nextafterf.S +rename to sysdeps/ia64/fpu/s_nextafterf.S +diff --git a/ports/sysdeps/ia64/fpu/s_nextafterl.S b/sysdeps/ia64/fpu/s_nextafterl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nextafterl.S +rename to sysdeps/ia64/fpu/s_nextafterl.S +diff --git a/ports/sysdeps/ia64/fpu/s_nexttoward.S b/sysdeps/ia64/fpu/s_nexttoward.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nexttoward.S +rename to sysdeps/ia64/fpu/s_nexttoward.S +diff --git a/ports/sysdeps/ia64/fpu/s_nexttowardf.S b/sysdeps/ia64/fpu/s_nexttowardf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nexttowardf.S +rename to sysdeps/ia64/fpu/s_nexttowardf.S +diff --git a/ports/sysdeps/ia64/fpu/s_nexttowardl.S b/sysdeps/ia64/fpu/s_nexttowardl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_nexttowardl.S +rename to sysdeps/ia64/fpu/s_nexttowardl.S +diff --git a/ports/sysdeps/ia64/fpu/s_rint.S b/sysdeps/ia64/fpu/s_rint.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_rint.S +rename to sysdeps/ia64/fpu/s_rint.S +diff --git a/ports/sysdeps/ia64/fpu/s_rintf.S b/sysdeps/ia64/fpu/s_rintf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_rintf.S +rename to sysdeps/ia64/fpu/s_rintf.S +diff --git a/ports/sysdeps/ia64/fpu/s_rintl.S b/sysdeps/ia64/fpu/s_rintl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_rintl.S +rename to sysdeps/ia64/fpu/s_rintl.S +diff --git a/ports/sysdeps/ia64/fpu/s_round.S b/sysdeps/ia64/fpu/s_round.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_round.S +rename to sysdeps/ia64/fpu/s_round.S +diff --git a/ports/sysdeps/ia64/fpu/s_roundf.S b/sysdeps/ia64/fpu/s_roundf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_roundf.S +rename to sysdeps/ia64/fpu/s_roundf.S +diff --git a/ports/sysdeps/ia64/fpu/s_roundl.S b/sysdeps/ia64/fpu/s_roundl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_roundl.S +rename to sysdeps/ia64/fpu/s_roundl.S +diff --git a/ports/sysdeps/ia64/fpu/s_scalblnf.c b/sysdeps/ia64/fpu/s_scalblnf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_scalblnf.c +rename to sysdeps/ia64/fpu/s_scalblnf.c +diff --git a/ports/sysdeps/ia64/fpu/s_scalbn.c b/sysdeps/ia64/fpu/s_scalbn.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_scalbn.c +rename to sysdeps/ia64/fpu/s_scalbn.c +diff --git a/ports/sysdeps/ia64/fpu/s_scalbnf.c b/sysdeps/ia64/fpu/s_scalbnf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_scalbnf.c +rename to sysdeps/ia64/fpu/s_scalbnf.c +diff --git a/ports/sysdeps/ia64/fpu/s_scalbnl.c b/sysdeps/ia64/fpu/s_scalbnl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_scalbnl.c +rename to sysdeps/ia64/fpu/s_scalbnl.c +diff --git a/ports/sysdeps/ia64/fpu/s_signbit.S b/sysdeps/ia64/fpu/s_signbit.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_signbit.S +rename to sysdeps/ia64/fpu/s_signbit.S +diff --git a/ports/sysdeps/ia64/fpu/s_signbitf.S b/sysdeps/ia64/fpu/s_signbitf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_signbitf.S +rename to sysdeps/ia64/fpu/s_signbitf.S +diff --git a/ports/sysdeps/ia64/fpu/s_signbitl.S b/sysdeps/ia64/fpu/s_signbitl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_signbitl.S +rename to sysdeps/ia64/fpu/s_signbitl.S +diff --git a/ports/sysdeps/ia64/fpu/s_significand.S b/sysdeps/ia64/fpu/s_significand.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_significand.S +rename to sysdeps/ia64/fpu/s_significand.S +diff --git a/ports/sysdeps/ia64/fpu/s_significandf.S b/sysdeps/ia64/fpu/s_significandf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_significandf.S +rename to sysdeps/ia64/fpu/s_significandf.S +diff --git a/ports/sysdeps/ia64/fpu/s_significandl.S b/sysdeps/ia64/fpu/s_significandl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_significandl.S +rename to sysdeps/ia64/fpu/s_significandl.S +diff --git a/ports/sysdeps/ia64/fpu/s_sin.c b/sysdeps/ia64/fpu/s_sin.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sin.c +rename to sysdeps/ia64/fpu/s_sin.c +diff --git a/ports/sysdeps/ia64/fpu/s_sincos.c b/sysdeps/ia64/fpu/s_sincos.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sincos.c +rename to sysdeps/ia64/fpu/s_sincos.c +diff --git a/ports/sysdeps/ia64/fpu/s_sincosf.c b/sysdeps/ia64/fpu/s_sincosf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sincosf.c +rename to sysdeps/ia64/fpu/s_sincosf.c +diff --git a/ports/sysdeps/ia64/fpu/s_sincosl.c b/sysdeps/ia64/fpu/s_sincosl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sincosl.c +rename to sysdeps/ia64/fpu/s_sincosl.c +diff --git a/ports/sysdeps/ia64/fpu/s_sinf.c b/sysdeps/ia64/fpu/s_sinf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sinf.c +rename to sysdeps/ia64/fpu/s_sinf.c +diff --git a/ports/sysdeps/ia64/fpu/s_sinl.c b/sysdeps/ia64/fpu/s_sinl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_sinl.c +rename to sysdeps/ia64/fpu/s_sinl.c +diff --git a/ports/sysdeps/ia64/fpu/s_tan.S b/sysdeps/ia64/fpu/s_tan.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tan.S +rename to sysdeps/ia64/fpu/s_tan.S +diff --git a/ports/sysdeps/ia64/fpu/s_tanf.S b/sysdeps/ia64/fpu/s_tanf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tanf.S +rename to sysdeps/ia64/fpu/s_tanf.S +diff --git a/ports/sysdeps/ia64/fpu/s_tanh.S b/sysdeps/ia64/fpu/s_tanh.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tanh.S +rename to sysdeps/ia64/fpu/s_tanh.S +diff --git a/ports/sysdeps/ia64/fpu/s_tanhf.S b/sysdeps/ia64/fpu/s_tanhf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tanhf.S +rename to sysdeps/ia64/fpu/s_tanhf.S +diff --git a/ports/sysdeps/ia64/fpu/s_tanhl.S b/sysdeps/ia64/fpu/s_tanhl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tanhl.S +rename to sysdeps/ia64/fpu/s_tanhl.S +diff --git a/ports/sysdeps/ia64/fpu/s_tanl.S b/sysdeps/ia64/fpu/s_tanl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_tanl.S +rename to sysdeps/ia64/fpu/s_tanl.S +diff --git a/ports/sysdeps/ia64/fpu/s_trunc.S b/sysdeps/ia64/fpu/s_trunc.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_trunc.S +rename to sysdeps/ia64/fpu/s_trunc.S +diff --git a/ports/sysdeps/ia64/fpu/s_truncf.S b/sysdeps/ia64/fpu/s_truncf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_truncf.S +rename to sysdeps/ia64/fpu/s_truncf.S +diff --git a/ports/sysdeps/ia64/fpu/s_truncl.S b/sysdeps/ia64/fpu/s_truncl.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/s_truncl.S +rename to sysdeps/ia64/fpu/s_truncl.S +diff --git a/ports/sysdeps/ia64/fpu/sincos32.c b/sysdeps/ia64/fpu/sincos32.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/sincos32.c +rename to sysdeps/ia64/fpu/sincos32.c +diff --git a/ports/sysdeps/ia64/fpu/slowexp.c b/sysdeps/ia64/fpu/slowexp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/slowexp.c +rename to sysdeps/ia64/fpu/slowexp.c +diff --git a/ports/sysdeps/ia64/fpu/slowpow.c b/sysdeps/ia64/fpu/slowpow.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/slowpow.c +rename to sysdeps/ia64/fpu/slowpow.c +diff --git a/ports/sysdeps/ia64/fpu/t_exp.c b/sysdeps/ia64/fpu/t_exp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/t_exp.c +rename to sysdeps/ia64/fpu/t_exp.c +diff --git a/ports/sysdeps/ia64/fpu/w_acos.c b/sysdeps/ia64/fpu/w_acos.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acos.c +rename to sysdeps/ia64/fpu/w_acos.c +diff --git a/ports/sysdeps/ia64/fpu/w_acosf.c b/sysdeps/ia64/fpu/w_acosf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acosf.c +rename to sysdeps/ia64/fpu/w_acosf.c +diff --git a/ports/sysdeps/ia64/fpu/w_acosh.c b/sysdeps/ia64/fpu/w_acosh.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acosh.c +rename to sysdeps/ia64/fpu/w_acosh.c +diff --git a/ports/sysdeps/ia64/fpu/w_acoshf.c b/sysdeps/ia64/fpu/w_acoshf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acoshf.c +rename to sysdeps/ia64/fpu/w_acoshf.c +diff --git a/ports/sysdeps/ia64/fpu/w_acoshl.c b/sysdeps/ia64/fpu/w_acoshl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acoshl.c +rename to sysdeps/ia64/fpu/w_acoshl.c +diff --git a/ports/sysdeps/ia64/fpu/w_acosl.c b/sysdeps/ia64/fpu/w_acosl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_acosl.c +rename to sysdeps/ia64/fpu/w_acosl.c +diff --git a/ports/sysdeps/ia64/fpu/w_asin.c b/sysdeps/ia64/fpu/w_asin.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_asin.c +rename to sysdeps/ia64/fpu/w_asin.c +diff --git a/ports/sysdeps/ia64/fpu/w_asinf.c b/sysdeps/ia64/fpu/w_asinf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_asinf.c +rename to sysdeps/ia64/fpu/w_asinf.c +diff --git a/ports/sysdeps/ia64/fpu/w_asinl.c b/sysdeps/ia64/fpu/w_asinl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_asinl.c +rename to sysdeps/ia64/fpu/w_asinl.c +diff --git a/ports/sysdeps/ia64/fpu/w_atan2.c b/sysdeps/ia64/fpu/w_atan2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atan2.c +rename to sysdeps/ia64/fpu/w_atan2.c +diff --git a/ports/sysdeps/ia64/fpu/w_atan2f.c b/sysdeps/ia64/fpu/w_atan2f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atan2f.c +rename to sysdeps/ia64/fpu/w_atan2f.c +diff --git a/ports/sysdeps/ia64/fpu/w_atan2l.c b/sysdeps/ia64/fpu/w_atan2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atan2l.c +rename to sysdeps/ia64/fpu/w_atan2l.c +diff --git a/ports/sysdeps/ia64/fpu/w_atanh.c b/sysdeps/ia64/fpu/w_atanh.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atanh.c +rename to sysdeps/ia64/fpu/w_atanh.c +diff --git a/ports/sysdeps/ia64/fpu/w_atanhf.c b/sysdeps/ia64/fpu/w_atanhf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atanhf.c +rename to sysdeps/ia64/fpu/w_atanhf.c +diff --git a/ports/sysdeps/ia64/fpu/w_atanhl.c b/sysdeps/ia64/fpu/w_atanhl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_atanhl.c +rename to sysdeps/ia64/fpu/w_atanhl.c +diff --git a/ports/sysdeps/ia64/fpu/w_cosh.c b/sysdeps/ia64/fpu/w_cosh.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_cosh.c +rename to sysdeps/ia64/fpu/w_cosh.c +diff --git a/ports/sysdeps/ia64/fpu/w_coshf.c b/sysdeps/ia64/fpu/w_coshf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_coshf.c +rename to sysdeps/ia64/fpu/w_coshf.c +diff --git a/ports/sysdeps/ia64/fpu/w_coshl.c b/sysdeps/ia64/fpu/w_coshl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_coshl.c +rename to sysdeps/ia64/fpu/w_coshl.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp.c b/sysdeps/ia64/fpu/w_exp.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp.c +rename to sysdeps/ia64/fpu/w_exp.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp10.c b/sysdeps/ia64/fpu/w_exp10.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp10.c +rename to sysdeps/ia64/fpu/w_exp10.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp10f.c b/sysdeps/ia64/fpu/w_exp10f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp10f.c +rename to sysdeps/ia64/fpu/w_exp10f.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp10l.c b/sysdeps/ia64/fpu/w_exp10l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp10l.c +rename to sysdeps/ia64/fpu/w_exp10l.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp2.c b/sysdeps/ia64/fpu/w_exp2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp2.c +rename to sysdeps/ia64/fpu/w_exp2.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp2f.c b/sysdeps/ia64/fpu/w_exp2f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp2f.c +rename to sysdeps/ia64/fpu/w_exp2f.c +diff --git a/ports/sysdeps/ia64/fpu/w_exp2l.c b/sysdeps/ia64/fpu/w_exp2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_exp2l.c +rename to sysdeps/ia64/fpu/w_exp2l.c +diff --git a/ports/sysdeps/ia64/fpu/w_expf.c b/sysdeps/ia64/fpu/w_expf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_expf.c +rename to sysdeps/ia64/fpu/w_expf.c +diff --git a/ports/sysdeps/ia64/fpu/w_expl.c b/sysdeps/ia64/fpu/w_expl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_expl.c +rename to sysdeps/ia64/fpu/w_expl.c +diff --git a/ports/sysdeps/ia64/fpu/w_fmod.c b/sysdeps/ia64/fpu/w_fmod.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_fmod.c +rename to sysdeps/ia64/fpu/w_fmod.c +diff --git a/ports/sysdeps/ia64/fpu/w_fmodf.c b/sysdeps/ia64/fpu/w_fmodf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_fmodf.c +rename to sysdeps/ia64/fpu/w_fmodf.c +diff --git a/ports/sysdeps/ia64/fpu/w_fmodl.c b/sysdeps/ia64/fpu/w_fmodl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_fmodl.c +rename to sysdeps/ia64/fpu/w_fmodl.c +diff --git a/ports/sysdeps/ia64/fpu/w_hypot.c b/sysdeps/ia64/fpu/w_hypot.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_hypot.c +rename to sysdeps/ia64/fpu/w_hypot.c +diff --git a/ports/sysdeps/ia64/fpu/w_hypotf.c b/sysdeps/ia64/fpu/w_hypotf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_hypotf.c +rename to sysdeps/ia64/fpu/w_hypotf.c +diff --git a/ports/sysdeps/ia64/fpu/w_hypotl.c b/sysdeps/ia64/fpu/w_hypotl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_hypotl.c +rename to sysdeps/ia64/fpu/w_hypotl.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgamma.c b/sysdeps/ia64/fpu/w_lgamma.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgamma.c +rename to sysdeps/ia64/fpu/w_lgamma.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgamma_r.c b/sysdeps/ia64/fpu/w_lgamma_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgamma_r.c +rename to sysdeps/ia64/fpu/w_lgamma_r.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgammaf.c b/sysdeps/ia64/fpu/w_lgammaf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgammaf.c +rename to sysdeps/ia64/fpu/w_lgammaf.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgammaf_r.c b/sysdeps/ia64/fpu/w_lgammaf_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgammaf_r.c +rename to sysdeps/ia64/fpu/w_lgammaf_r.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgammal.c b/sysdeps/ia64/fpu/w_lgammal.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgammal.c +rename to sysdeps/ia64/fpu/w_lgammal.c +diff --git a/ports/sysdeps/ia64/fpu/w_lgammal_r.c b/sysdeps/ia64/fpu/w_lgammal_r.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_lgammal_r.c +rename to sysdeps/ia64/fpu/w_lgammal_r.c +diff --git a/ports/sysdeps/ia64/fpu/w_log.c b/sysdeps/ia64/fpu/w_log.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log.c +rename to sysdeps/ia64/fpu/w_log.c +diff --git a/ports/sysdeps/ia64/fpu/w_log10.c b/sysdeps/ia64/fpu/w_log10.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log10.c +rename to sysdeps/ia64/fpu/w_log10.c +diff --git a/ports/sysdeps/ia64/fpu/w_log10f.c b/sysdeps/ia64/fpu/w_log10f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log10f.c +rename to sysdeps/ia64/fpu/w_log10f.c +diff --git a/ports/sysdeps/ia64/fpu/w_log10l.c b/sysdeps/ia64/fpu/w_log10l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log10l.c +rename to sysdeps/ia64/fpu/w_log10l.c +diff --git a/ports/sysdeps/ia64/fpu/w_log2.c b/sysdeps/ia64/fpu/w_log2.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log2.c +rename to sysdeps/ia64/fpu/w_log2.c +diff --git a/ports/sysdeps/ia64/fpu/w_log2f.c b/sysdeps/ia64/fpu/w_log2f.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log2f.c +rename to sysdeps/ia64/fpu/w_log2f.c +diff --git a/ports/sysdeps/ia64/fpu/w_log2l.c b/sysdeps/ia64/fpu/w_log2l.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_log2l.c +rename to sysdeps/ia64/fpu/w_log2l.c +diff --git a/ports/sysdeps/ia64/fpu/w_logf.c b/sysdeps/ia64/fpu/w_logf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_logf.c +rename to sysdeps/ia64/fpu/w_logf.c +diff --git a/ports/sysdeps/ia64/fpu/w_logl.c b/sysdeps/ia64/fpu/w_logl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_logl.c +rename to sysdeps/ia64/fpu/w_logl.c +diff --git a/ports/sysdeps/ia64/fpu/w_pow.c b/sysdeps/ia64/fpu/w_pow.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_pow.c +rename to sysdeps/ia64/fpu/w_pow.c +diff --git a/ports/sysdeps/ia64/fpu/w_powf.c b/sysdeps/ia64/fpu/w_powf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_powf.c +rename to sysdeps/ia64/fpu/w_powf.c +diff --git a/ports/sysdeps/ia64/fpu/w_powl.c b/sysdeps/ia64/fpu/w_powl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_powl.c +rename to sysdeps/ia64/fpu/w_powl.c +diff --git a/ports/sysdeps/ia64/fpu/w_remainder.c b/sysdeps/ia64/fpu/w_remainder.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_remainder.c +rename to sysdeps/ia64/fpu/w_remainder.c +diff --git a/ports/sysdeps/ia64/fpu/w_remainderf.c b/sysdeps/ia64/fpu/w_remainderf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_remainderf.c +rename to sysdeps/ia64/fpu/w_remainderf.c +diff --git a/ports/sysdeps/ia64/fpu/w_remainderl.c b/sysdeps/ia64/fpu/w_remainderl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_remainderl.c +rename to sysdeps/ia64/fpu/w_remainderl.c +diff --git a/ports/sysdeps/ia64/fpu/w_scalb.c b/sysdeps/ia64/fpu/w_scalb.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_scalb.c +rename to sysdeps/ia64/fpu/w_scalb.c +diff --git a/ports/sysdeps/ia64/fpu/w_scalbf.c b/sysdeps/ia64/fpu/w_scalbf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_scalbf.c +rename to sysdeps/ia64/fpu/w_scalbf.c +diff --git a/ports/sysdeps/ia64/fpu/w_scalbl.c b/sysdeps/ia64/fpu/w_scalbl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_scalbl.c +rename to sysdeps/ia64/fpu/w_scalbl.c +diff --git a/ports/sysdeps/ia64/fpu/w_sinh.c b/sysdeps/ia64/fpu/w_sinh.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sinh.c +rename to sysdeps/ia64/fpu/w_sinh.c +diff --git a/ports/sysdeps/ia64/fpu/w_sinhf.c b/sysdeps/ia64/fpu/w_sinhf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sinhf.c +rename to sysdeps/ia64/fpu/w_sinhf.c +diff --git a/ports/sysdeps/ia64/fpu/w_sinhl.c b/sysdeps/ia64/fpu/w_sinhl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sinhl.c +rename to sysdeps/ia64/fpu/w_sinhl.c +diff --git a/ports/sysdeps/ia64/fpu/w_sqrt.c b/sysdeps/ia64/fpu/w_sqrt.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sqrt.c +rename to sysdeps/ia64/fpu/w_sqrt.c +diff --git a/ports/sysdeps/ia64/fpu/w_sqrtf.c b/sysdeps/ia64/fpu/w_sqrtf.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sqrtf.c +rename to sysdeps/ia64/fpu/w_sqrtf.c +diff --git a/ports/sysdeps/ia64/fpu/w_sqrtl.c b/sysdeps/ia64/fpu/w_sqrtl.c +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_sqrtl.c +rename to sysdeps/ia64/fpu/w_sqrtl.c +diff --git a/ports/sysdeps/ia64/fpu/w_tgamma.S b/sysdeps/ia64/fpu/w_tgamma.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_tgamma.S +rename to sysdeps/ia64/fpu/w_tgamma.S +diff --git a/ports/sysdeps/ia64/fpu/w_tgammaf.S b/sysdeps/ia64/fpu/w_tgammaf.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_tgammaf.S +rename to sysdeps/ia64/fpu/w_tgammaf.S +diff --git a/ports/sysdeps/ia64/fpu/w_tgammal.S b/sysdeps/ia64/fpu/w_tgammal.S +similarity index 100% +rename from ports/sysdeps/ia64/fpu/w_tgammal.S +rename to sysdeps/ia64/fpu/w_tgammal.S +diff --git a/ports/sysdeps/ia64/gccframe.h b/sysdeps/ia64/gccframe.h +similarity index 100% +rename from ports/sysdeps/ia64/gccframe.h +rename to sysdeps/ia64/gccframe.h +diff --git a/ports/sysdeps/ia64/hp-timing.h b/sysdeps/ia64/hp-timing.h +similarity index 100% +rename from ports/sysdeps/ia64/hp-timing.h +rename to sysdeps/ia64/hp-timing.h +diff --git a/ports/sysdeps/ia64/htonl.S b/sysdeps/ia64/htonl.S +similarity index 100% +rename from ports/sysdeps/ia64/htonl.S +rename to sysdeps/ia64/htonl.S +diff --git a/ports/sysdeps/ia64/htons.S b/sysdeps/ia64/htons.S +similarity index 100% +rename from ports/sysdeps/ia64/htons.S +rename to sysdeps/ia64/htons.S +diff --git a/ports/sysdeps/ia64/ia64libgcc.S b/sysdeps/ia64/ia64libgcc.S +similarity index 100% +rename from ports/sysdeps/ia64/ia64libgcc.S +rename to sysdeps/ia64/ia64libgcc.S +diff --git a/ports/sysdeps/ia64/ieee754.h b/sysdeps/ia64/ieee754.h +similarity index 100% +rename from ports/sysdeps/ia64/ieee754.h +rename to sysdeps/ia64/ieee754.h +diff --git a/ports/sysdeps/ia64/jmpbuf-unwind.h b/sysdeps/ia64/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/ia64/jmpbuf-unwind.h +rename to sysdeps/ia64/jmpbuf-unwind.h +diff --git a/ports/sysdeps/ia64/ldbl2mpn.c b/sysdeps/ia64/ldbl2mpn.c +similarity index 100% +rename from ports/sysdeps/ia64/ldbl2mpn.c +rename to sysdeps/ia64/ldbl2mpn.c +diff --git a/ports/sysdeps/ia64/ldsodefs.h b/sysdeps/ia64/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/ia64/ldsodefs.h +rename to sysdeps/ia64/ldsodefs.h +diff --git a/ports/sysdeps/ia64/libc-tls.c b/sysdeps/ia64/libc-tls.c +similarity index 100% +rename from ports/sysdeps/ia64/libc-tls.c +rename to sysdeps/ia64/libc-tls.c +diff --git a/ports/sysdeps/ia64/machine-gmon.h b/sysdeps/ia64/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/ia64/machine-gmon.h +rename to sysdeps/ia64/machine-gmon.h +diff --git a/ports/sysdeps/ia64/memccpy.S b/sysdeps/ia64/memccpy.S +similarity index 100% +rename from ports/sysdeps/ia64/memccpy.S +rename to sysdeps/ia64/memccpy.S +diff --git a/ports/sysdeps/ia64/memchr.S b/sysdeps/ia64/memchr.S +similarity index 100% +rename from ports/sysdeps/ia64/memchr.S +rename to sysdeps/ia64/memchr.S +diff --git a/ports/sysdeps/ia64/memcmp.S b/sysdeps/ia64/memcmp.S +similarity index 100% +rename from ports/sysdeps/ia64/memcmp.S +rename to sysdeps/ia64/memcmp.S +diff --git a/ports/sysdeps/ia64/memcpy.S b/sysdeps/ia64/memcpy.S +similarity index 100% +rename from ports/sysdeps/ia64/memcpy.S +rename to sysdeps/ia64/memcpy.S +diff --git a/ports/sysdeps/ia64/memmove.S b/sysdeps/ia64/memmove.S +similarity index 100% +rename from ports/sysdeps/ia64/memmove.S +rename to sysdeps/ia64/memmove.S +diff --git a/ports/sysdeps/ia64/memset.S b/sysdeps/ia64/memset.S +similarity index 100% +rename from ports/sysdeps/ia64/memset.S +rename to sysdeps/ia64/memset.S +diff --git a/ports/sysdeps/ia64/memusage.h b/sysdeps/ia64/memusage.h +similarity index 100% +rename from ports/sysdeps/ia64/memusage.h +rename to sysdeps/ia64/memusage.h +diff --git a/ports/sysdeps/ia64/nptl/Makefile b/sysdeps/ia64/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/ia64/nptl/Makefile +rename to sysdeps/ia64/nptl/Makefile +diff --git a/ports/sysdeps/ia64/nptl/pthread_spin_lock.c b/sysdeps/ia64/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/ia64/nptl/pthread_spin_lock.c +rename to sysdeps/ia64/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/ia64/nptl/pthread_spin_trylock.c b/sysdeps/ia64/nptl/pthread_spin_trylock.c +similarity index 100% +rename from ports/sysdeps/ia64/nptl/pthread_spin_trylock.c +rename to sysdeps/ia64/nptl/pthread_spin_trylock.c +diff --git a/ports/sysdeps/ia64/nptl/pthread_spin_unlock.c b/sysdeps/ia64/nptl/pthread_spin_unlock.c +similarity index 100% +rename from ports/sysdeps/ia64/nptl/pthread_spin_unlock.c +rename to sysdeps/ia64/nptl/pthread_spin_unlock.c +diff --git a/ports/sysdeps/ia64/nptl/pthreaddef.h b/sysdeps/ia64/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/ia64/nptl/pthreaddef.h +rename to sysdeps/ia64/nptl/pthreaddef.h +diff --git a/ports/sysdeps/ia64/nptl/shlib-versions b/sysdeps/ia64/nptl/shlib-versions +similarity index 100% +rename from ports/sysdeps/ia64/nptl/shlib-versions +rename to sysdeps/ia64/nptl/shlib-versions +diff --git a/ports/sysdeps/ia64/nptl/tcb-offsets.sym b/sysdeps/ia64/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/ia64/nptl/tcb-offsets.sym +rename to sysdeps/ia64/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/ia64/nptl/tls.h b/sysdeps/ia64/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/ia64/nptl/tls.h +rename to sysdeps/ia64/nptl/tls.h +diff --git a/ports/sysdeps/ia64/preconfigure b/sysdeps/ia64/preconfigure +similarity index 100% +rename from ports/sysdeps/ia64/preconfigure +rename to sysdeps/ia64/preconfigure +diff --git a/ports/sysdeps/ia64/sched_cpucount.c b/sysdeps/ia64/sched_cpucount.c +similarity index 100% +rename from ports/sysdeps/ia64/sched_cpucount.c +rename to sysdeps/ia64/sched_cpucount.c +diff --git a/ports/sysdeps/ia64/shlib-versions b/sysdeps/ia64/shlib-versions +similarity index 100% +rename from ports/sysdeps/ia64/shlib-versions +rename to sysdeps/ia64/shlib-versions +diff --git a/ports/sysdeps/ia64/softpipe.h b/sysdeps/ia64/softpipe.h +similarity index 100% +rename from ports/sysdeps/ia64/softpipe.h +rename to sysdeps/ia64/softpipe.h +diff --git a/ports/sysdeps/ia64/stackguard-macros.h b/sysdeps/ia64/stackguard-macros.h +similarity index 100% +rename from ports/sysdeps/ia64/stackguard-macros.h +rename to sysdeps/ia64/stackguard-macros.h +diff --git a/ports/sysdeps/ia64/stackinfo.h b/sysdeps/ia64/stackinfo.h +similarity index 100% +rename from ports/sysdeps/ia64/stackinfo.h +rename to sysdeps/ia64/stackinfo.h +diff --git a/ports/sysdeps/ia64/start.S b/sysdeps/ia64/start.S +similarity index 100% +rename from ports/sysdeps/ia64/start.S +rename to sysdeps/ia64/start.S +diff --git a/ports/sysdeps/ia64/strcat.c b/sysdeps/ia64/strcat.c +similarity index 100% +rename from ports/sysdeps/ia64/strcat.c +rename to sysdeps/ia64/strcat.c +diff --git a/ports/sysdeps/ia64/strchr.S b/sysdeps/ia64/strchr.S +similarity index 100% +rename from ports/sysdeps/ia64/strchr.S +rename to sysdeps/ia64/strchr.S +diff --git a/ports/sysdeps/ia64/strcmp.S b/sysdeps/ia64/strcmp.S +similarity index 100% +rename from ports/sysdeps/ia64/strcmp.S +rename to sysdeps/ia64/strcmp.S +diff --git a/ports/sysdeps/ia64/strcpy.S b/sysdeps/ia64/strcpy.S +similarity index 100% +rename from ports/sysdeps/ia64/strcpy.S +rename to sysdeps/ia64/strcpy.S +diff --git a/ports/sysdeps/ia64/strlen.S b/sysdeps/ia64/strlen.S +similarity index 100% +rename from ports/sysdeps/ia64/strlen.S +rename to sysdeps/ia64/strlen.S +diff --git a/ports/sysdeps/ia64/strncmp.S b/sysdeps/ia64/strncmp.S +similarity index 100% +rename from ports/sysdeps/ia64/strncmp.S +rename to sysdeps/ia64/strncmp.S +diff --git a/ports/sysdeps/ia64/strncpy.S b/sysdeps/ia64/strncpy.S +similarity index 100% +rename from ports/sysdeps/ia64/strncpy.S +rename to sysdeps/ia64/strncpy.S +diff --git a/ports/sysdeps/ia64/sysdep.h b/sysdeps/ia64/sysdep.h +similarity index 100% +rename from ports/sysdeps/ia64/sysdep.h +rename to sysdeps/ia64/sysdep.h +diff --git a/ports/sysdeps/ia64/tininess.h b/sysdeps/ia64/tininess.h +similarity index 100% +rename from ports/sysdeps/ia64/tininess.h +rename to sysdeps/ia64/tininess.h +diff --git a/ports/sysdeps/ia64/tls-macros.h b/sysdeps/ia64/tls-macros.h +similarity index 100% +rename from ports/sysdeps/ia64/tls-macros.h +rename to sysdeps/ia64/tls-macros.h +diff --git a/ports/sysdeps/ia64/tst-audit.h b/sysdeps/ia64/tst-audit.h +similarity index 100% +rename from ports/sysdeps/ia64/tst-audit.h +rename to sysdeps/ia64/tst-audit.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/Implies b/sysdeps/unix/sysv/linux/ia64/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/Implies +rename to sysdeps/unix/sysv/linux/ia64/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/Makefile b/sysdeps/unix/sysv/linux/ia64/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/Makefile +rename to sysdeps/unix/sysv/linux/ia64/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/Versions b/sysdeps/unix/sysv/linux/ia64/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/Versions +rename to sysdeps/unix/sysv/linux/ia64/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S b/sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S +rename to sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/__longjmp.S b/sysdeps/unix/sysv/linux/ia64/__longjmp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/__longjmp.S +rename to sysdeps/unix/sysv/linux/ia64/__longjmp.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/__start_context.S b/sysdeps/unix/sysv/linux/ia64/__start_context.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/__start_context.S +rename to sysdeps/unix/sysv/linux/ia64/__start_context.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/endian.h b/sysdeps/unix/sysv/linux/ia64/bits/endian.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/endian.h +rename to sysdeps/unix/sysv/linux/ia64/bits/endian.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h b/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/ia64/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h b/sysdeps/unix/sysv/linux/ia64/bits/ipc.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h +rename to sysdeps/unix/sysv/linux/ia64/bits/ipc.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/mman.h b/sysdeps/unix/sysv/linux/ia64/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/mman.h +rename to sysdeps/unix/sysv/linux/ia64/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h b/sysdeps/unix/sysv/linux/ia64/bits/msq.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h +rename to sysdeps/unix/sysv/linux/ia64/bits/msq.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h b/sysdeps/unix/sysv/linux/ia64/bits/sem.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h +rename to sysdeps/unix/sysv/linux/ia64/bits/sem.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/setjmp.h b/sysdeps/unix/sysv/linux/ia64/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/setjmp.h +rename to sysdeps/unix/sysv/linux/ia64/bits/setjmp.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h b/sysdeps/unix/sysv/linux/ia64/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h +rename to sysdeps/unix/sysv/linux/ia64/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h b/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h +rename to sysdeps/unix/sysv/linux/ia64/bits/sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h b/sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h +rename to sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/siginfo.h b/sysdeps/unix/sysv/linux/ia64/bits/siginfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/siginfo.h +rename to sysdeps/unix/sysv/linux/ia64/bits/siginfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/sigstack.h b/sysdeps/unix/sysv/linux/ia64/bits/sigstack.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/sigstack.h +rename to sysdeps/unix/sysv/linux/ia64/bits/sigstack.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h b/sysdeps/unix/sysv/linux/ia64/bits/stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h +rename to sysdeps/unix/sysv/linux/ia64/bits/stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/brk.S b/sysdeps/unix/sysv/linux/ia64/brk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/brk.S +rename to sysdeps/unix/sysv/linux/ia64/brk.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bsd-_setjmp.S b/sysdeps/unix/sysv/linux/ia64/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bsd-_setjmp.S +rename to sysdeps/unix/sysv/linux/ia64/bsd-_setjmp.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bsd-setjmp.S b/sysdeps/unix/sysv/linux/ia64/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/bsd-setjmp.S +rename to sysdeps/unix/sysv/linux/ia64/bsd-setjmp.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/clone.S b/sysdeps/unix/sysv/linux/ia64/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/clone.S +rename to sysdeps/unix/sysv/linux/ia64/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/clone2.S b/sysdeps/unix/sysv/linux/ia64/clone2.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/clone2.S +rename to sysdeps/unix/sysv/linux/ia64/clone2.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/configure b/sysdeps/unix/sysv/linux/ia64/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/configure +rename to sysdeps/unix/sysv/linux/ia64/configure +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/configure.in b/sysdeps/unix/sysv/linux/ia64/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/configure.in +rename to sysdeps/unix/sysv/linux/ia64/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/dl-brk.S b/sysdeps/unix/sysv/linux/ia64/dl-brk.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/dl-brk.S +rename to sysdeps/unix/sysv/linux/ia64/dl-brk.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/dl-cache.h b/sysdeps/unix/sysv/linux/ia64/dl-cache.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/dl-cache.h +rename to sysdeps/unix/sysv/linux/ia64/dl-cache.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/dl-static.c b/sysdeps/unix/sysv/linux/ia64/dl-static.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/dl-static.c +rename to sysdeps/unix/sysv/linux/ia64/dl-static.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/fork.S b/sysdeps/unix/sysv/linux/ia64/fork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/fork.S +rename to sysdeps/unix/sysv/linux/ia64/fork.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/get_clockfreq.c b/sysdeps/unix/sysv/linux/ia64/get_clockfreq.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/get_clockfreq.c +rename to sysdeps/unix/sysv/linux/ia64/get_clockfreq.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/getclktck.c b/sysdeps/unix/sysv/linux/ia64/getclktck.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/getclktck.c +rename to sysdeps/unix/sysv/linux/ia64/getclktck.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/getcontext.S b/sysdeps/unix/sysv/linux/ia64/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/getcontext.S +rename to sysdeps/unix/sysv/linux/ia64/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c b/sysdeps/unix/sysv/linux/ia64/getpagesize.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c +rename to sysdeps/unix/sysv/linux/ia64/getpagesize.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/has_cpuclock.c b/sysdeps/unix/sysv/linux/ia64/has_cpuclock.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/has_cpuclock.c +rename to sysdeps/unix/sysv/linux/ia64/has_cpuclock.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/ioperm.c b/sysdeps/unix/sysv/linux/ia64/ioperm.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/ioperm.c +rename to sysdeps/unix/sysv/linux/ia64/ioperm.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/kernel-features.h b/sysdeps/unix/sysv/linux/ia64/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/kernel-features.h +rename to sysdeps/unix/sysv/linux/ia64/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/kernel_stat.h b/sysdeps/unix/sysv/linux/ia64/kernel_stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/kernel_stat.h +rename to sysdeps/unix/sysv/linux/ia64/kernel_stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/ldconfig.h b/sysdeps/unix/sysv/linux/ia64/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/ldconfig.h +rename to sysdeps/unix/sysv/linux/ia64/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed +rename to sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/ldsodefs.h b/sysdeps/unix/sysv/linux/ia64/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/ldsodefs.h +rename to sysdeps/unix/sysv/linux/ia64/ldsodefs.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/makecontext.c b/sysdeps/unix/sysv/linux/ia64/makecontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/makecontext.c +rename to sysdeps/unix/sysv/linux/ia64/makecontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/Makefile b/sysdeps/unix/sysv/linux/ia64/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/Makefile +rename to sysdeps/unix/sysv/linux/ia64/nptl/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/Versions b/sysdeps/unix/sysv/linux/ia64/nptl/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/Versions +rename to sysdeps/unix/sysv/linux/ia64/nptl/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/__ia64_longjmp.S b/sysdeps/unix/sysv/linux/ia64/nptl/__ia64_longjmp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/__ia64_longjmp.S +rename to sysdeps/unix/sysv/linux/ia64/nptl/__ia64_longjmp.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/__sigstack_longjmp.c b/sysdeps/unix/sysv/linux/ia64/nptl/__sigstack_longjmp.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/__sigstack_longjmp.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/__sigstack_longjmp.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/local_lim.h b/sysdeps/unix/sysv/linux/ia64/nptl/bits/local_lim.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/local_lim.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/bits/local_lim.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/ia64/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/c++-types.data b/sysdeps/unix/sysv/linux/ia64/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/ia64/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/clone2.S b/sysdeps/unix/sysv/linux/ia64/nptl/clone2.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/clone2.S +rename to sysdeps/unix/sysv/linux/ia64/nptl/clone2.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/createthread.c b/sysdeps/unix/sysv/linux/ia64/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/dl-sysdep.h b/sysdeps/unix/sysv/linux/ia64/nptl/dl-sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/dl-sysdep.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/dl-sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/fork.c b/sysdeps/unix/sysv/linux/ia64/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/fork.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/ld.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libm.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/librt.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/ia64/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/ia64/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/localplt.data b/sysdeps/unix/sysv/linux/ia64/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/ia64/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/ia64/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/ia64/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/ia64/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/ia64/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/ia64/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_create.c b/sysdeps/unix/sysv/linux/ia64/nptl/timer_create.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_create.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/timer_create.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_delete.c b/sysdeps/unix/sysv/linux/ia64/nptl/timer_delete.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_delete.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/timer_delete.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_getoverr.c b/sysdeps/unix/sysv/linux/ia64/nptl/timer_getoverr.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_getoverr.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/timer_getoverr.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_gettime.c b/sysdeps/unix/sysv/linux/ia64/nptl/timer_gettime.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_gettime.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/timer_gettime.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_settime.c b/sysdeps/unix/sysv/linux/ia64/nptl/timer_settime.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/timer_settime.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/timer_settime.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/unwind-forcedunwind.c b/sysdeps/unix/sysv/linux/ia64/nptl/unwind-forcedunwind.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/unwind-forcedunwind.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/unwind-forcedunwind.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/unwind_longjmp.c b/sysdeps/unix/sysv/linux/ia64/nptl/unwind_longjmp.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/unwind_longjmp.c +rename to sysdeps/unix/sysv/linux/ia64/nptl/unwind_longjmp.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/vfork.S b/sysdeps/unix/sysv/linux/ia64/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/ia64/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/pipe.S b/sysdeps/unix/sysv/linux/ia64/pipe.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/pipe.S +rename to sysdeps/unix/sysv/linux/ia64/pipe.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/profil-counter.h b/sysdeps/unix/sysv/linux/ia64/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/profil-counter.h +rename to sysdeps/unix/sysv/linux/ia64/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/readelflib.c b/sysdeps/unix/sysv/linux/ia64/readelflib.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/readelflib.c +rename to sysdeps/unix/sysv/linux/ia64/readelflib.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/register-dump.h b/sysdeps/unix/sysv/linux/ia64/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/register-dump.h +rename to sysdeps/unix/sysv/linux/ia64/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/rt-sysdep.S b/sysdeps/unix/sysv/linux/ia64/rt-sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/rt-sysdep.S +rename to sysdeps/unix/sysv/linux/ia64/rt-sysdep.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/setcontext.S b/sysdeps/unix/sysv/linux/ia64/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/setcontext.S +rename to sysdeps/unix/sysv/linux/ia64/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/setjmp.S b/sysdeps/unix/sysv/linux/ia64/setjmp.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/setjmp.S +rename to sysdeps/unix/sysv/linux/ia64/setjmp.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigaction.c b/sysdeps/unix/sysv/linux/ia64/sigaction.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sigaction.c +rename to sysdeps/unix/sysv/linux/ia64/sigaction.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym b/sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym +rename to sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h b/sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c b/sysdeps/unix/sysv/linux/ia64/sigpending.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sigpending.c +rename to sysdeps/unix/sysv/linux/ia64/sigpending.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c b/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +rename to sysdeps/unix/sysv/linux/ia64/sigprocmask.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/swapcontext.c b/sysdeps/unix/sysv/linux/ia64/swapcontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/swapcontext.c +rename to sysdeps/unix/sysv/linux/ia64/swapcontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/io.h b/sysdeps/unix/sysv/linux/ia64/sys/io.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/io.h +rename to sysdeps/unix/sysv/linux/ia64/sys/io.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/procfs.h b/sysdeps/unix/sysv/linux/ia64/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/procfs.h +rename to sysdeps/unix/sysv/linux/ia64/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h b/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +rename to sysdeps/unix/sysv/linux/ia64/sys/ptrace.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/rse.h b/sysdeps/unix/sysv/linux/ia64/sys/rse.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/rse.h +rename to sysdeps/unix/sysv/linux/ia64/sys/rse.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/ucontext.h b/sysdeps/unix/sysv/linux/ia64/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/ia64/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sys/user.h b/sysdeps/unix/sysv/linux/ia64/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sys/user.h +rename to sysdeps/unix/sysv/linux/ia64/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/syscall.S b/sysdeps/unix/sysv/linux/ia64/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/syscall.S +rename to sysdeps/unix/sysv/linux/ia64/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/syscalls.list b/sysdeps/unix/sysv/linux/ia64/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/syscalls.list +rename to sysdeps/unix/sysv/linux/ia64/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sysconf.c b/sysdeps/unix/sysv/linux/ia64/sysconf.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sysconf.c +rename to sysdeps/unix/sysv/linux/ia64/sysconf.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sysdep.S b/sysdeps/unix/sysv/linux/ia64/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sysdep.S +rename to sysdeps/unix/sysv/linux/ia64/sysdep.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/sysdep.h b/sysdeps/unix/sysv/linux/ia64/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/sysdep.h +rename to sysdeps/unix/sysv/linux/ia64/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/system.c b/sysdeps/unix/sysv/linux/ia64/system.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/system.c +rename to sysdeps/unix/sysv/linux/ia64/system.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/ucontext_i.h b/sysdeps/unix/sysv/linux/ia64/ucontext_i.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/ucontext_i.h +rename to sysdeps/unix/sysv/linux/ia64/ucontext_i.h +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/umount.c b/sysdeps/unix/sysv/linux/ia64/umount.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/umount.c +rename to sysdeps/unix/sysv/linux/ia64/umount.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c b/sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c +rename to sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/vfork.S b/sysdeps/unix/sysv/linux/ia64/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/vfork.S +rename to sysdeps/unix/sysv/linux/ia64/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/wordexp.c b/sysdeps/unix/sysv/linux/ia64/wordexp.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/ia64/wordexp.c +rename to sysdeps/unix/sysv/linux/ia64/wordexp.c diff --git a/SOURCES/glibc-rh1505492-ports-move-m68k.patch b/SOURCES/glibc-rh1505492-ports-move-m68k.patch new file mode 100644 index 0000000..c195c46 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-m68k.patch @@ -0,0 +1,1589 @@ +Recreation of this upstream commit: + +commit 73588a7223bec40d652fd4c75f1cb4772c5d2612 +Author: Andreas Schwab +Date: Mon Feb 10 20:05:01 2014 +0100 + + Move m68k from ports to libc + +The following git commands were used: + +git mv ports/sysdeps/m68k sysdeps/ +git mv ports/sysdeps/unix/sysv/linux/m68k sysdeps/unix/sysv/linux/ + +diff --git a/ports/sysdeps/m68k/Implies b/sysdeps/m68k/Implies +similarity index 100% +rename from ports/sysdeps/m68k/Implies +rename to sysdeps/m68k/Implies +diff --git a/ports/sysdeps/m68k/Makefile b/sysdeps/m68k/Makefile +similarity index 100% +rename from ports/sysdeps/m68k/Makefile +rename to sysdeps/m68k/Makefile +diff --git a/ports/sysdeps/m68k/Versions b/sysdeps/m68k/Versions +similarity index 100% +rename from ports/sysdeps/m68k/Versions +rename to sysdeps/m68k/Versions +diff --git a/ports/sysdeps/m68k/__longjmp.c b/sysdeps/m68k/__longjmp.c +similarity index 100% +rename from ports/sysdeps/m68k/__longjmp.c +rename to sysdeps/m68k/__longjmp.c +diff --git a/ports/sysdeps/m68k/abort-instr.h b/sysdeps/m68k/abort-instr.h +similarity index 100% +rename from ports/sysdeps/m68k/abort-instr.h +rename to sysdeps/m68k/abort-instr.h +diff --git a/ports/sysdeps/m68k/asm-syntax.h b/sysdeps/m68k/asm-syntax.h +similarity index 100% +rename from ports/sysdeps/m68k/asm-syntax.h +rename to sysdeps/m68k/asm-syntax.h +diff --git a/ports/sysdeps/m68k/bits/byteswap.h b/sysdeps/m68k/bits/byteswap.h +similarity index 100% +rename from ports/sysdeps/m68k/bits/byteswap.h +rename to sysdeps/m68k/bits/byteswap.h +diff --git a/ports/sysdeps/m68k/bits/endian.h b/sysdeps/m68k/bits/endian.h +similarity index 100% +rename from ports/sysdeps/m68k/bits/endian.h +rename to sysdeps/m68k/bits/endian.h +diff --git a/ports/sysdeps/m68k/bits/link.h b/sysdeps/m68k/bits/link.h +similarity index 100% +rename from ports/sysdeps/m68k/bits/link.h +rename to sysdeps/m68k/bits/link.h +diff --git a/ports/sysdeps/m68k/bits/setjmp.h b/sysdeps/m68k/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/m68k/bits/setjmp.h +rename to sysdeps/m68k/bits/setjmp.h +diff --git a/ports/sysdeps/m68k/bsd-_setjmp.c b/sysdeps/m68k/bsd-_setjmp.c +similarity index 100% +rename from ports/sysdeps/m68k/bsd-_setjmp.c +rename to sysdeps/m68k/bsd-_setjmp.c +diff --git a/ports/sysdeps/m68k/bsd-setjmp.c b/sysdeps/m68k/bsd-setjmp.c +similarity index 100% +rename from ports/sysdeps/m68k/bsd-setjmp.c +rename to sysdeps/m68k/bsd-setjmp.c +diff --git a/ports/sysdeps/m68k/coldfire/bits/atomic.h b/sysdeps/m68k/coldfire/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/bits/atomic.h +rename to sysdeps/m68k/coldfire/bits/atomic.h +diff --git a/ports/sysdeps/m68k/coldfire/fpu/bits/mathinline.h b/sysdeps/m68k/coldfire/fpu/bits/mathinline.h +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/bits/mathinline.h +rename to sysdeps/m68k/coldfire/fpu/bits/mathinline.h +diff --git a/ports/sysdeps/m68k/coldfire/fpu/e_sqrt.c b/sysdeps/m68k/coldfire/fpu/e_sqrt.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/e_sqrt.c +rename to sysdeps/m68k/coldfire/fpu/e_sqrt.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/e_sqrtf.c b/sysdeps/m68k/coldfire/fpu/e_sqrtf.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/e_sqrtf.c +rename to sysdeps/m68k/coldfire/fpu/e_sqrtf.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c b/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/fraiseexcpt.c +rename to sysdeps/m68k/coldfire/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps b/sysdeps/m68k/coldfire/fpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps +rename to sysdeps/m68k/coldfire/fpu/libm-test-ulps +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_fabs.c b/sysdeps/m68k/coldfire/fpu/s_fabs.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_fabs.c +rename to sysdeps/m68k/coldfire/fpu/s_fabs.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_fabsf.c b/sysdeps/m68k/coldfire/fpu/s_fabsf.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_fabsf.c +rename to sysdeps/m68k/coldfire/fpu/s_fabsf.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_lrint.c b/sysdeps/m68k/coldfire/fpu/s_lrint.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_lrint.c +rename to sysdeps/m68k/coldfire/fpu/s_lrint.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_lrintf.c b/sysdeps/m68k/coldfire/fpu/s_lrintf.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_lrintf.c +rename to sysdeps/m68k/coldfire/fpu/s_lrintf.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_rint.c b/sysdeps/m68k/coldfire/fpu/s_rint.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_rint.c +rename to sysdeps/m68k/coldfire/fpu/s_rint.c +diff --git a/ports/sysdeps/m68k/coldfire/fpu/s_rintf.c b/sysdeps/m68k/coldfire/fpu/s_rintf.c +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/fpu/s_rintf.c +rename to sysdeps/m68k/coldfire/fpu/s_rintf.c +diff --git a/ports/sysdeps/m68k/coldfire/shlib-versions b/sysdeps/m68k/coldfire/shlib-versions +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/shlib-versions +rename to sysdeps/m68k/coldfire/shlib-versions +diff --git a/ports/sysdeps/m68k/coldfire/sysdep.h b/sysdeps/m68k/coldfire/sysdep.h +similarity index 100% +rename from ports/sysdeps/m68k/coldfire/sysdep.h +rename to sysdeps/m68k/coldfire/sysdep.h +diff --git a/ports/sysdeps/m68k/crti.S b/sysdeps/m68k/crti.S +similarity index 100% +rename from ports/sysdeps/m68k/crti.S +rename to sysdeps/m68k/crti.S +diff --git a/ports/sysdeps/m68k/crtn.S b/sysdeps/m68k/crtn.S +similarity index 100% +rename from ports/sysdeps/m68k/crtn.S +rename to sysdeps/m68k/crtn.S +diff --git a/ports/sysdeps/m68k/dl-machine.h b/sysdeps/m68k/dl-machine.h +similarity index 100% +rename from ports/sysdeps/m68k/dl-machine.h +rename to sysdeps/m68k/dl-machine.h +diff --git a/ports/sysdeps/m68k/dl-tls.h b/sysdeps/m68k/dl-tls.h +similarity index 100% +rename from ports/sysdeps/m68k/dl-tls.h +rename to sysdeps/m68k/dl-tls.h +diff --git a/ports/sysdeps/m68k/dl-trampoline.S b/sysdeps/m68k/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/m68k/dl-trampoline.S +rename to sysdeps/m68k/dl-trampoline.S +diff --git a/ports/sysdeps/m68k/ffs.c b/sysdeps/m68k/ffs.c +similarity index 100% +rename from ports/sysdeps/m68k/ffs.c +rename to sysdeps/m68k/ffs.c +diff --git a/ports/sysdeps/m68k/fpu/bits/fenv.h b/sysdeps/m68k/fpu/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/m68k/fpu/bits/fenv.h +rename to sysdeps/m68k/fpu/bits/fenv.h +diff --git a/ports/sysdeps/m68k/fpu/fclrexcpt.c b/sysdeps/m68k/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fclrexcpt.c +rename to sysdeps/m68k/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/m68k/fpu/fedisblxcpt.c b/sysdeps/m68k/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fedisblxcpt.c +rename to sysdeps/m68k/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/m68k/fpu/feenablxcpt.c b/sysdeps/m68k/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/feenablxcpt.c +rename to sysdeps/m68k/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/m68k/fpu/fegetenv.c b/sysdeps/m68k/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fegetenv.c +rename to sysdeps/m68k/fpu/fegetenv.c +diff --git a/ports/sysdeps/m68k/fpu/fegetexcept.c b/sysdeps/m68k/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fegetexcept.c +rename to sysdeps/m68k/fpu/fegetexcept.c +diff --git a/ports/sysdeps/m68k/fpu/fegetround.c b/sysdeps/m68k/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fegetround.c +rename to sysdeps/m68k/fpu/fegetround.c +diff --git a/ports/sysdeps/m68k/fpu/feholdexcpt.c b/sysdeps/m68k/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/feholdexcpt.c +rename to sysdeps/m68k/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/m68k/fpu/fesetenv.c b/sysdeps/m68k/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fesetenv.c +rename to sysdeps/m68k/fpu/fesetenv.c +diff --git a/ports/sysdeps/m68k/fpu/fesetround.c b/sysdeps/m68k/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fesetround.c +rename to sysdeps/m68k/fpu/fesetround.c +diff --git a/ports/sysdeps/m68k/fpu/feupdateenv.c b/sysdeps/m68k/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/feupdateenv.c +rename to sysdeps/m68k/fpu/feupdateenv.c +diff --git a/ports/sysdeps/m68k/fpu/fgetexcptflg.c b/sysdeps/m68k/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fgetexcptflg.c +rename to sysdeps/m68k/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/m68k/fpu/fsetexcptflg.c b/sysdeps/m68k/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/fsetexcptflg.c +rename to sysdeps/m68k/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/m68k/fpu/ftestexcept.c b/sysdeps/m68k/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/m68k/fpu/ftestexcept.c +rename to sysdeps/m68k/fpu/ftestexcept.c +diff --git a/ports/sysdeps/m68k/fpu_control.h b/sysdeps/m68k/fpu_control.h +similarity index 100% +rename from ports/sysdeps/m68k/fpu_control.h +rename to sysdeps/m68k/fpu_control.h +diff --git a/ports/sysdeps/m68k/gccframe.h b/sysdeps/m68k/gccframe.h +similarity index 100% +rename from ports/sysdeps/m68k/gccframe.h +rename to sysdeps/m68k/gccframe.h +diff --git a/ports/sysdeps/m68k/jmpbuf-unwind.h b/sysdeps/m68k/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/m68k/jmpbuf-unwind.h +rename to sysdeps/m68k/jmpbuf-unwind.h +diff --git a/ports/sysdeps/m68k/ldsodefs.h b/sysdeps/m68k/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/m68k/ldsodefs.h +rename to sysdeps/m68k/ldsodefs.h +diff --git a/ports/sysdeps/m68k/libc-tls.c b/sysdeps/m68k/libc-tls.c +similarity index 100% +rename from ports/sysdeps/m68k/libc-tls.c +rename to sysdeps/m68k/libc-tls.c +diff --git a/ports/sysdeps/m68k/m680x0/Implies b/sysdeps/m68k/m680x0/Implies +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/Implies +rename to sysdeps/m68k/m680x0/Implies +diff --git a/ports/sysdeps/m68k/m680x0/Makefile b/sysdeps/m68k/m680x0/Makefile +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/Makefile +rename to sysdeps/m68k/m680x0/Makefile +diff --git a/ports/sysdeps/m68k/m680x0/add_n.S b/sysdeps/m68k/m680x0/add_n.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/add_n.S +rename to sysdeps/m68k/m680x0/add_n.S +diff --git a/ports/sysdeps/m68k/m680x0/bits/huge_vall.h b/sysdeps/m68k/m680x0/bits/huge_vall.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/bits/huge_vall.h +rename to sysdeps/m68k/m680x0/bits/huge_vall.h +diff --git a/ports/sysdeps/m68k/m680x0/bits/mathdef.h b/sysdeps/m68k/m680x0/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/bits/mathdef.h +rename to sysdeps/m68k/m680x0/bits/mathdef.h +diff --git a/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h b/sysdeps/m68k/m680x0/fpu/bits/mathinline.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h +rename to sysdeps/m68k/m680x0/fpu/bits/mathinline.h +diff --git a/ports/sysdeps/m68k/m680x0/fpu/branred.c b/sysdeps/m68k/m680x0/fpu/branred.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/branred.c +rename to sysdeps/m68k/m680x0/fpu/branred.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/doasin.c b/sysdeps/m68k/m680x0/fpu/doasin.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/doasin.c +rename to sysdeps/m68k/m680x0/fpu/doasin.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/dosincos.c b/sysdeps/m68k/m680x0/fpu/dosincos.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/dosincos.c +rename to sysdeps/m68k/m680x0/fpu/dosincos.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acos.c b/sysdeps/m68k/m680x0/fpu/e_acos.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_acos.c +rename to sysdeps/m68k/m680x0/fpu/e_acos.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acosf.c b/sysdeps/m68k/m680x0/fpu/e_acosf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_acosf.c +rename to sysdeps/m68k/m680x0/fpu/e_acosf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_acosl.c b/sysdeps/m68k/m680x0/fpu/e_acosl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_acosl.c +rename to sysdeps/m68k/m680x0/fpu/e_acosl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asin.c b/sysdeps/m68k/m680x0/fpu/e_asin.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_asin.c +rename to sysdeps/m68k/m680x0/fpu/e_asin.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asinf.c b/sysdeps/m68k/m680x0/fpu/e_asinf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_asinf.c +rename to sysdeps/m68k/m680x0/fpu/e_asinf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_asinl.c b/sysdeps/m68k/m680x0/fpu/e_asinl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_asinl.c +rename to sysdeps/m68k/m680x0/fpu/e_asinl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2.c b/sysdeps/m68k/m680x0/fpu/e_atan2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atan2.c +rename to sysdeps/m68k/m680x0/fpu/e_atan2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2f.c b/sysdeps/m68k/m680x0/fpu/e_atan2f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atan2f.c +rename to sysdeps/m68k/m680x0/fpu/e_atan2f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atan2l.c b/sysdeps/m68k/m680x0/fpu/e_atan2l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atan2l.c +rename to sysdeps/m68k/m680x0/fpu/e_atan2l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanh.c b/sysdeps/m68k/m680x0/fpu/e_atanh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atanh.c +rename to sysdeps/m68k/m680x0/fpu/e_atanh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanhf.c b/sysdeps/m68k/m680x0/fpu/e_atanhf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atanhf.c +rename to sysdeps/m68k/m680x0/fpu/e_atanhf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_atanhl.c b/sysdeps/m68k/m680x0/fpu/e_atanhl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_atanhl.c +rename to sysdeps/m68k/m680x0/fpu/e_atanhl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_cosh.c b/sysdeps/m68k/m680x0/fpu/e_cosh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_cosh.c +rename to sysdeps/m68k/m680x0/fpu/e_cosh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_coshf.c b/sysdeps/m68k/m680x0/fpu/e_coshf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_coshf.c +rename to sysdeps/m68k/m680x0/fpu/e_coshf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_coshl.c b/sysdeps/m68k/m680x0/fpu/e_coshl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_coshl.c +rename to sysdeps/m68k/m680x0/fpu/e_coshl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp.c b/sysdeps/m68k/m680x0/fpu/e_exp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp.c +rename to sysdeps/m68k/m680x0/fpu/e_exp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10.c b/sysdeps/m68k/m680x0/fpu/e_exp10.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp10.c +rename to sysdeps/m68k/m680x0/fpu/e_exp10.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10f.c b/sysdeps/m68k/m680x0/fpu/e_exp10f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp10f.c +rename to sysdeps/m68k/m680x0/fpu/e_exp10f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp10l.c b/sysdeps/m68k/m680x0/fpu/e_exp10l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp10l.c +rename to sysdeps/m68k/m680x0/fpu/e_exp10l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2.c b/sysdeps/m68k/m680x0/fpu/e_exp2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp2.c +rename to sysdeps/m68k/m680x0/fpu/e_exp2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2f.c b/sysdeps/m68k/m680x0/fpu/e_exp2f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp2f.c +rename to sysdeps/m68k/m680x0/fpu/e_exp2f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_exp2l.c b/sysdeps/m68k/m680x0/fpu/e_exp2l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_exp2l.c +rename to sysdeps/m68k/m680x0/fpu/e_exp2l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_expf.c b/sysdeps/m68k/m680x0/fpu/e_expf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_expf.c +rename to sysdeps/m68k/m680x0/fpu/e_expf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_expl.c b/sysdeps/m68k/m680x0/fpu/e_expl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_expl.c +rename to sysdeps/m68k/m680x0/fpu/e_expl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmod.c b/sysdeps/m68k/m680x0/fpu/e_fmod.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_fmod.c +rename to sysdeps/m68k/m680x0/fpu/e_fmod.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmodf.c b/sysdeps/m68k/m680x0/fpu/e_fmodf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_fmodf.c +rename to sysdeps/m68k/m680x0/fpu/e_fmodf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_fmodl.c b/sysdeps/m68k/m680x0/fpu/e_fmodl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_fmodl.c +rename to sysdeps/m68k/m680x0/fpu/e_fmodl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogb.c b/sysdeps/m68k/m680x0/fpu/e_ilogb.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_ilogb.c +rename to sysdeps/m68k/m680x0/fpu/e_ilogb.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbf.c b/sysdeps/m68k/m680x0/fpu/e_ilogbf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_ilogbf.c +rename to sysdeps/m68k/m680x0/fpu/e_ilogbf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_ilogbl.c b/sysdeps/m68k/m680x0/fpu/e_ilogbl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_ilogbl.c +rename to sysdeps/m68k/m680x0/fpu/e_ilogbl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log.c b/sysdeps/m68k/m680x0/fpu/e_log.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log.c +rename to sysdeps/m68k/m680x0/fpu/e_log.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10.c b/sysdeps/m68k/m680x0/fpu/e_log10.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log10.c +rename to sysdeps/m68k/m680x0/fpu/e_log10.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10f.c b/sysdeps/m68k/m680x0/fpu/e_log10f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log10f.c +rename to sysdeps/m68k/m680x0/fpu/e_log10f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log10l.c b/sysdeps/m68k/m680x0/fpu/e_log10l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log10l.c +rename to sysdeps/m68k/m680x0/fpu/e_log10l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2.c b/sysdeps/m68k/m680x0/fpu/e_log2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log2.c +rename to sysdeps/m68k/m680x0/fpu/e_log2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2f.c b/sysdeps/m68k/m680x0/fpu/e_log2f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log2f.c +rename to sysdeps/m68k/m680x0/fpu/e_log2f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_log2l.c b/sysdeps/m68k/m680x0/fpu/e_log2l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_log2l.c +rename to sysdeps/m68k/m680x0/fpu/e_log2l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_logf.c b/sysdeps/m68k/m680x0/fpu/e_logf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_logf.c +rename to sysdeps/m68k/m680x0/fpu/e_logf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_logl.c b/sysdeps/m68k/m680x0/fpu/e_logl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_logl.c +rename to sysdeps/m68k/m680x0/fpu/e_logl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_pow.c b/sysdeps/m68k/m680x0/fpu/e_pow.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_pow.c +rename to sysdeps/m68k/m680x0/fpu/e_pow.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_powf.c b/sysdeps/m68k/m680x0/fpu/e_powf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_powf.c +rename to sysdeps/m68k/m680x0/fpu/e_powf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_powl.c b/sysdeps/m68k/m680x0/fpu/e_powl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_powl.c +rename to sysdeps/m68k/m680x0/fpu/e_powl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c b/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2.c +rename to sysdeps/m68k/m680x0/fpu/e_rem_pio2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c b/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c +rename to sysdeps/m68k/m680x0/fpu/e_rem_pio2f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c b/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c +rename to sysdeps/m68k/m680x0/fpu/e_rem_pio2l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainder.c b/sysdeps/m68k/m680x0/fpu/e_remainder.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_remainder.c +rename to sysdeps/m68k/m680x0/fpu/e_remainder.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainderf.c b/sysdeps/m68k/m680x0/fpu/e_remainderf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_remainderf.c +rename to sysdeps/m68k/m680x0/fpu/e_remainderf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_remainderl.c b/sysdeps/m68k/m680x0/fpu/e_remainderl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_remainderl.c +rename to sysdeps/m68k/m680x0/fpu/e_remainderl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalb.c b/sysdeps/m68k/m680x0/fpu/e_scalb.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_scalb.c +rename to sysdeps/m68k/m680x0/fpu/e_scalb.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalbf.c b/sysdeps/m68k/m680x0/fpu/e_scalbf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_scalbf.c +rename to sysdeps/m68k/m680x0/fpu/e_scalbf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_scalbl.c b/sysdeps/m68k/m680x0/fpu/e_scalbl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_scalbl.c +rename to sysdeps/m68k/m680x0/fpu/e_scalbl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinh.c b/sysdeps/m68k/m680x0/fpu/e_sinh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sinh.c +rename to sysdeps/m68k/m680x0/fpu/e_sinh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinhf.c b/sysdeps/m68k/m680x0/fpu/e_sinhf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sinhf.c +rename to sysdeps/m68k/m680x0/fpu/e_sinhf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sinhl.c b/sysdeps/m68k/m680x0/fpu/e_sinhl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sinhl.c +rename to sysdeps/m68k/m680x0/fpu/e_sinhl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrt.c b/sysdeps/m68k/m680x0/fpu/e_sqrt.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sqrt.c +rename to sysdeps/m68k/m680x0/fpu/e_sqrt.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtf.c b/sysdeps/m68k/m680x0/fpu/e_sqrtf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sqrtf.c +rename to sysdeps/m68k/m680x0/fpu/e_sqrtf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/e_sqrtl.c b/sysdeps/m68k/m680x0/fpu/e_sqrtl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/e_sqrtl.c +rename to sysdeps/m68k/m680x0/fpu/e_sqrtl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c b/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/fraiseexcpt.c +rename to sysdeps/m68k/m680x0/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/halfulp.c b/sysdeps/m68k/m680x0/fpu/halfulp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/halfulp.c +rename to sysdeps/m68k/m680x0/fpu/halfulp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_cosl.c b/sysdeps/m68k/m680x0/fpu/k_cosl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_cosl.c +rename to sysdeps/m68k/m680x0/fpu/k_cosl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c b/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2.c +rename to sysdeps/m68k/m680x0/fpu/k_rem_pio2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c b/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c +rename to sysdeps/m68k/m680x0/fpu/k_rem_pio2f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c b/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c +rename to sysdeps/m68k/m680x0/fpu/k_rem_pio2l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_sinl.c b/sysdeps/m68k/m680x0/fpu/k_sinl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_sinl.c +rename to sysdeps/m68k/m680x0/fpu/k_sinl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_tanf.c b/sysdeps/m68k/m680x0/fpu/k_tanf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_tanf.c +rename to sysdeps/m68k/m680x0/fpu/k_tanf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/k_tanl.c b/sysdeps/m68k/m680x0/fpu/k_tanl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/k_tanl.c +rename to sysdeps/m68k/m680x0/fpu/k_tanl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps b/sysdeps/m68k/m680x0/fpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps +rename to sysdeps/m68k/m680x0/fpu/libm-test-ulps +diff --git a/ports/sysdeps/m68k/m680x0/fpu/math_private.h b/sysdeps/m68k/m680x0/fpu/math_private.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/math_private.h +rename to sysdeps/m68k/m680x0/fpu/math_private.h +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mathimpl.h b/sysdeps/m68k/m680x0/fpu/mathimpl.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mathimpl.h +rename to sysdeps/m68k/m680x0/fpu/mathimpl.h +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpa.c b/sysdeps/m68k/m680x0/fpu/mpa.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mpa.c +rename to sysdeps/m68k/m680x0/fpu/mpa.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpatan.c b/sysdeps/m68k/m680x0/fpu/mpatan.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mpatan.c +rename to sysdeps/m68k/m680x0/fpu/mpatan.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpatan2.c b/sysdeps/m68k/m680x0/fpu/mpatan2.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mpatan2.c +rename to sysdeps/m68k/m680x0/fpu/mpatan2.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpexp.c b/sysdeps/m68k/m680x0/fpu/mpexp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mpexp.c +rename to sysdeps/m68k/m680x0/fpu/mpexp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mplog.c b/sysdeps/m68k/m680x0/fpu/mplog.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mplog.c +rename to sysdeps/m68k/m680x0/fpu/mplog.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mpsqrt.c b/sysdeps/m68k/m680x0/fpu/mpsqrt.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mpsqrt.c +rename to sysdeps/m68k/m680x0/fpu/mpsqrt.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/mptan.c b/sysdeps/m68k/m680x0/fpu/mptan.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/mptan.c +rename to sysdeps/m68k/m680x0/fpu/mptan.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atan.c b/sysdeps/m68k/m680x0/fpu/s_atan.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_atan.c +rename to sysdeps/m68k/m680x0/fpu/s_atan.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atanf.c b/sysdeps/m68k/m680x0/fpu/s_atanf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_atanf.c +rename to sysdeps/m68k/m680x0/fpu/s_atanf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_atanl.c b/sysdeps/m68k/m680x0/fpu/s_atanl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_atanl.c +rename to sysdeps/m68k/m680x0/fpu/s_atanl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c b/sysdeps/m68k/m680x0/fpu/s_ccosh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c +rename to sysdeps/m68k/m680x0/fpu/s_ccosh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshf.c b/sysdeps/m68k/m680x0/fpu/s_ccoshf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ccoshf.c +rename to sysdeps/m68k/m680x0/fpu/s_ccoshf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ccoshl.c b/sysdeps/m68k/m680x0/fpu/s_ccoshl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ccoshl.c +rename to sysdeps/m68k/m680x0/fpu/s_ccoshl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceil.c b/sysdeps/m68k/m680x0/fpu/s_ceil.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ceil.c +rename to sysdeps/m68k/m680x0/fpu/s_ceil.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceilf.c b/sysdeps/m68k/m680x0/fpu/s_ceilf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ceilf.c +rename to sysdeps/m68k/m680x0/fpu/s_ceilf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_ceill.c b/sysdeps/m68k/m680x0/fpu/s_ceill.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_ceill.c +rename to sysdeps/m68k/m680x0/fpu/s_ceill.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexp.c b/sysdeps/m68k/m680x0/fpu/s_cexp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cexp.c +rename to sysdeps/m68k/m680x0/fpu/s_cexp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexpf.c b/sysdeps/m68k/m680x0/fpu/s_cexpf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cexpf.c +rename to sysdeps/m68k/m680x0/fpu/s_cexpf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cexpl.c b/sysdeps/m68k/m680x0/fpu/s_cexpl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cexpl.c +rename to sysdeps/m68k/m680x0/fpu/s_cexpl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cos.c b/sysdeps/m68k/m680x0/fpu/s_cos.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cos.c +rename to sysdeps/m68k/m680x0/fpu/s_cos.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c b/sysdeps/m68k/m680x0/fpu/s_cosf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cosf.c +rename to sysdeps/m68k/m680x0/fpu/s_cosf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c b/sysdeps/m68k/m680x0/fpu/s_cosl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_cosl.c +rename to sysdeps/m68k/m680x0/fpu/s_cosl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csin.c b/sysdeps/m68k/m680x0/fpu/s_csin.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csin.c +rename to sysdeps/m68k/m680x0/fpu/s_csin.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinf.c b/sysdeps/m68k/m680x0/fpu/s_csinf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csinf.c +rename to sysdeps/m68k/m680x0/fpu/s_csinf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinh.c b/sysdeps/m68k/m680x0/fpu/s_csinh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csinh.c +rename to sysdeps/m68k/m680x0/fpu/s_csinh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinhf.c b/sysdeps/m68k/m680x0/fpu/s_csinhf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csinhf.c +rename to sysdeps/m68k/m680x0/fpu/s_csinhf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinhl.c b/sysdeps/m68k/m680x0/fpu/s_csinhl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csinhl.c +rename to sysdeps/m68k/m680x0/fpu/s_csinhl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_csinl.c b/sysdeps/m68k/m680x0/fpu/s_csinl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_csinl.c +rename to sysdeps/m68k/m680x0/fpu/s_csinl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c b/sysdeps/m68k/m680x0/fpu/s_expm1.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_expm1.c +rename to sysdeps/m68k/m680x0/fpu/s_expm1.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c b/sysdeps/m68k/m680x0/fpu/s_expm1f.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c +rename to sysdeps/m68k/m680x0/fpu/s_expm1f.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c b/sysdeps/m68k/m680x0/fpu/s_expm1l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c +rename to sysdeps/m68k/m680x0/fpu/s_expm1l.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabs.c b/sysdeps/m68k/m680x0/fpu/s_fabs.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_fabs.c +rename to sysdeps/m68k/m680x0/fpu/s_fabs.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabsf.c b/sysdeps/m68k/m680x0/fpu/s_fabsf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_fabsf.c +rename to sysdeps/m68k/m680x0/fpu/s_fabsf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fabsl.c b/sysdeps/m68k/m680x0/fpu/s_fabsl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_fabsl.c +rename to sysdeps/m68k/m680x0/fpu/s_fabsl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finite.c b/sysdeps/m68k/m680x0/fpu/s_finite.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_finite.c +rename to sysdeps/m68k/m680x0/fpu/s_finite.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finitef.c b/sysdeps/m68k/m680x0/fpu/s_finitef.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_finitef.c +rename to sysdeps/m68k/m680x0/fpu/s_finitef.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_finitel.c b/sysdeps/m68k/m680x0/fpu/s_finitel.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_finitel.c +rename to sysdeps/m68k/m680x0/fpu/s_finitel.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floor.c b/sysdeps/m68k/m680x0/fpu/s_floor.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_floor.c +rename to sysdeps/m68k/m680x0/fpu/s_floor.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floorf.c b/sysdeps/m68k/m680x0/fpu/s_floorf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_floorf.c +rename to sysdeps/m68k/m680x0/fpu/s_floorf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_floorl.c b/sysdeps/m68k/m680x0/fpu/s_floorl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_floorl.c +rename to sysdeps/m68k/m680x0/fpu/s_floorl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c b/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c +rename to sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexp.c b/sysdeps/m68k/m680x0/fpu/s_frexp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_frexp.c +rename to sysdeps/m68k/m680x0/fpu/s_frexp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexpf.c b/sysdeps/m68k/m680x0/fpu/s_frexpf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_frexpf.c +rename to sysdeps/m68k/m680x0/fpu/s_frexpf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_frexpl.c b/sysdeps/m68k/m680x0/fpu/s_frexpl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_frexpl.c +rename to sysdeps/m68k/m680x0/fpu/s_frexpl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinf.c b/sysdeps/m68k/m680x0/fpu/s_isinf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isinf.c +rename to sysdeps/m68k/m680x0/fpu/s_isinf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinff.c b/sysdeps/m68k/m680x0/fpu/s_isinff.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isinff.c +rename to sysdeps/m68k/m680x0/fpu/s_isinff.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isinfl.c b/sysdeps/m68k/m680x0/fpu/s_isinfl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isinfl.c +rename to sysdeps/m68k/m680x0/fpu/s_isinfl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnan.c b/sysdeps/m68k/m680x0/fpu/s_isnan.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isnan.c +rename to sysdeps/m68k/m680x0/fpu/s_isnan.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnanf.c b/sysdeps/m68k/m680x0/fpu/s_isnanf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isnanf.c +rename to sysdeps/m68k/m680x0/fpu/s_isnanf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_isnanl.c b/sysdeps/m68k/m680x0/fpu/s_isnanl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_isnanl.c +rename to sysdeps/m68k/m680x0/fpu/s_isnanl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrint.c b/sysdeps/m68k/m680x0/fpu/s_llrint.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_llrint.c +rename to sysdeps/m68k/m680x0/fpu/s_llrint.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrintf.c b/sysdeps/m68k/m680x0/fpu/s_llrintf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_llrintf.c +rename to sysdeps/m68k/m680x0/fpu/s_llrintf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_llrintl.c b/sysdeps/m68k/m680x0/fpu/s_llrintl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_llrintl.c +rename to sysdeps/m68k/m680x0/fpu/s_llrintl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1p.c b/sysdeps/m68k/m680x0/fpu/s_log1p.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_log1p.c +rename to sysdeps/m68k/m680x0/fpu/s_log1p.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1pf.c b/sysdeps/m68k/m680x0/fpu/s_log1pf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_log1pf.c +rename to sysdeps/m68k/m680x0/fpu/s_log1pf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_log1pl.c b/sysdeps/m68k/m680x0/fpu/s_log1pl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_log1pl.c +rename to sysdeps/m68k/m680x0/fpu/s_log1pl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_logbl.c b/sysdeps/m68k/m680x0/fpu/s_logbl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_logbl.c +rename to sysdeps/m68k/m680x0/fpu/s_logbl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrint.c b/sysdeps/m68k/m680x0/fpu/s_lrint.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_lrint.c +rename to sysdeps/m68k/m680x0/fpu/s_lrint.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrintf.c b/sysdeps/m68k/m680x0/fpu/s_lrintf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_lrintf.c +rename to sysdeps/m68k/m680x0/fpu/s_lrintf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_lrintl.c b/sysdeps/m68k/m680x0/fpu/s_lrintl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_lrintl.c +rename to sysdeps/m68k/m680x0/fpu/s_lrintl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modf.c b/sysdeps/m68k/m680x0/fpu/s_modf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_modf.c +rename to sysdeps/m68k/m680x0/fpu/s_modf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modff.c b/sysdeps/m68k/m680x0/fpu/s_modff.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_modff.c +rename to sysdeps/m68k/m680x0/fpu/s_modff.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_modfl.c b/sysdeps/m68k/m680x0/fpu/s_modfl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_modfl.c +rename to sysdeps/m68k/m680x0/fpu/s_modfl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyint.c b/sysdeps/m68k/m680x0/fpu/s_nearbyint.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_nearbyint.c +rename to sysdeps/m68k/m680x0/fpu/s_nearbyint.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c b/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_nearbyintf.c +rename to sysdeps/m68k/m680x0/fpu/s_nearbyintf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c b/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_nearbyintl.c +rename to sysdeps/m68k/m680x0/fpu/s_nearbyintl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c b/sysdeps/m68k/m680x0/fpu/s_nextafterl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c +rename to sysdeps/m68k/m680x0/fpu/s_nextafterl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquo.c b/sysdeps/m68k/m680x0/fpu/s_remquo.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_remquo.c +rename to sysdeps/m68k/m680x0/fpu/s_remquo.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquof.c b/sysdeps/m68k/m680x0/fpu/s_remquof.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_remquof.c +rename to sysdeps/m68k/m680x0/fpu/s_remquof.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_remquol.c b/sysdeps/m68k/m680x0/fpu/s_remquol.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_remquol.c +rename to sysdeps/m68k/m680x0/fpu/s_remquol.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rint.c b/sysdeps/m68k/m680x0/fpu/s_rint.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_rint.c +rename to sysdeps/m68k/m680x0/fpu/s_rint.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rintf.c b/sysdeps/m68k/m680x0/fpu/s_rintf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_rintf.c +rename to sysdeps/m68k/m680x0/fpu/s_rintf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_rintl.c b/sysdeps/m68k/m680x0/fpu/s_rintl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_rintl.c +rename to sysdeps/m68k/m680x0/fpu/s_rintl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbln.c b/sysdeps/m68k/m680x0/fpu/s_scalbln.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalbln.c +rename to sysdeps/m68k/m680x0/fpu/s_scalbln.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnf.c b/sysdeps/m68k/m680x0/fpu/s_scalblnf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalblnf.c +rename to sysdeps/m68k/m680x0/fpu/s_scalblnf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalblnl.c b/sysdeps/m68k/m680x0/fpu/s_scalblnl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalblnl.c +rename to sysdeps/m68k/m680x0/fpu/s_scalblnl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbn.c b/sysdeps/m68k/m680x0/fpu/s_scalbn.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalbn.c +rename to sysdeps/m68k/m680x0/fpu/s_scalbn.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnf.c b/sysdeps/m68k/m680x0/fpu/s_scalbnf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalbnf.c +rename to sysdeps/m68k/m680x0/fpu/s_scalbnf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_scalbnl.c b/sysdeps/m68k/m680x0/fpu/s_scalbnl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_scalbnl.c +rename to sysdeps/m68k/m680x0/fpu/s_scalbnl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significand.c b/sysdeps/m68k/m680x0/fpu/s_significand.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_significand.c +rename to sysdeps/m68k/m680x0/fpu/s_significand.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significandf.c b/sysdeps/m68k/m680x0/fpu/s_significandf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_significandf.c +rename to sysdeps/m68k/m680x0/fpu/s_significandf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_significandl.c b/sysdeps/m68k/m680x0/fpu/s_significandl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_significandl.c +rename to sysdeps/m68k/m680x0/fpu/s_significandl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sin.c b/sysdeps/m68k/m680x0/fpu/s_sin.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sin.c +rename to sysdeps/m68k/m680x0/fpu/s_sin.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincos.c b/sysdeps/m68k/m680x0/fpu/s_sincos.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sincos.c +rename to sysdeps/m68k/m680x0/fpu/s_sincos.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincosf.c b/sysdeps/m68k/m680x0/fpu/s_sincosf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sincosf.c +rename to sysdeps/m68k/m680x0/fpu/s_sincosf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sincosl.c b/sysdeps/m68k/m680x0/fpu/s_sincosl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sincosl.c +rename to sysdeps/m68k/m680x0/fpu/s_sincosl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c b/sysdeps/m68k/m680x0/fpu/s_sinf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sinf.c +rename to sysdeps/m68k/m680x0/fpu/s_sinf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c b/sysdeps/m68k/m680x0/fpu/s_sinl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_sinl.c +rename to sysdeps/m68k/m680x0/fpu/s_sinl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tan.c b/sysdeps/m68k/m680x0/fpu/s_tan.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tan.c +rename to sysdeps/m68k/m680x0/fpu/s_tan.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c b/sysdeps/m68k/m680x0/fpu/s_tanf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tanf.c +rename to sysdeps/m68k/m680x0/fpu/s_tanf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanh.c b/sysdeps/m68k/m680x0/fpu/s_tanh.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tanh.c +rename to sysdeps/m68k/m680x0/fpu/s_tanh.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanhf.c b/sysdeps/m68k/m680x0/fpu/s_tanhf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tanhf.c +rename to sysdeps/m68k/m680x0/fpu/s_tanhf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanhl.c b/sysdeps/m68k/m680x0/fpu/s_tanhl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tanhl.c +rename to sysdeps/m68k/m680x0/fpu/s_tanhl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c b/sysdeps/m68k/m680x0/fpu/s_tanl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_tanl.c +rename to sysdeps/m68k/m680x0/fpu/s_tanl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_trunc.c b/sysdeps/m68k/m680x0/fpu/s_trunc.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_trunc.c +rename to sysdeps/m68k/m680x0/fpu/s_trunc.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_truncf.c b/sysdeps/m68k/m680x0/fpu/s_truncf.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_truncf.c +rename to sysdeps/m68k/m680x0/fpu/s_truncf.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_truncl.c b/sysdeps/m68k/m680x0/fpu/s_truncl.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/s_truncl.c +rename to sysdeps/m68k/m680x0/fpu/s_truncl.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/sincos32.c b/sysdeps/m68k/m680x0/fpu/sincos32.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/sincos32.c +rename to sysdeps/m68k/m680x0/fpu/sincos32.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/sincostab.c b/sysdeps/m68k/m680x0/fpu/sincostab.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/sincostab.c +rename to sysdeps/m68k/m680x0/fpu/sincostab.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/slowexp.c b/sysdeps/m68k/m680x0/fpu/slowexp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/slowexp.c +rename to sysdeps/m68k/m680x0/fpu/slowexp.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/slowpow.c b/sysdeps/m68k/m680x0/fpu/slowpow.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/slowpow.c +rename to sysdeps/m68k/m680x0/fpu/slowpow.c +diff --git a/ports/sysdeps/m68k/m680x0/fpu/t_exp.c b/sysdeps/m68k/m680x0/fpu/t_exp.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/fpu/t_exp.c +rename to sysdeps/m68k/m680x0/fpu/t_exp.c +diff --git a/ports/sysdeps/m68k/m680x0/lshift.S b/sysdeps/m68k/m680x0/lshift.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/lshift.S +rename to sysdeps/m68k/m680x0/lshift.S +diff --git a/ports/sysdeps/m68k/m680x0/m68020/Makefile b/sysdeps/m68k/m680x0/m68020/Makefile +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/Makefile +rename to sysdeps/m68k/m680x0/m68020/Makefile +diff --git a/ports/sysdeps/m68k/m680x0/m68020/addmul_1.S b/sysdeps/m68k/m680x0/m68020/addmul_1.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/addmul_1.S +rename to sysdeps/m68k/m680x0/m68020/addmul_1.S +diff --git a/ports/sysdeps/m68k/m680x0/m68020/bits/atomic.h b/sysdeps/m68k/m680x0/m68020/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/bits/atomic.h +rename to sysdeps/m68k/m680x0/m68020/bits/atomic.h +diff --git a/ports/sysdeps/m68k/m680x0/m68020/bits/string.h b/sysdeps/m68k/m680x0/m68020/bits/string.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/bits/string.h +rename to sysdeps/m68k/m680x0/m68020/bits/string.h +diff --git a/ports/sysdeps/m68k/m680x0/m68020/mul_1.S b/sysdeps/m68k/m680x0/m68020/mul_1.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/mul_1.S +rename to sysdeps/m68k/m680x0/m68020/mul_1.S +diff --git a/ports/sysdeps/m68k/m680x0/m68020/submul_1.S b/sysdeps/m68k/m680x0/m68020/submul_1.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/submul_1.S +rename to sysdeps/m68k/m680x0/m68020/submul_1.S +diff --git a/ports/sysdeps/m68k/m680x0/m68020/wordcopy.S b/sysdeps/m68k/m680x0/m68020/wordcopy.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/m68020/wordcopy.S +rename to sysdeps/m68k/m680x0/m68020/wordcopy.S +diff --git a/ports/sysdeps/m68k/m680x0/printf_fphex.c b/sysdeps/m68k/m680x0/printf_fphex.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/printf_fphex.c +rename to sysdeps/m68k/m680x0/printf_fphex.c +diff --git a/ports/sysdeps/m68k/m680x0/rshift.S b/sysdeps/m68k/m680x0/rshift.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/rshift.S +rename to sysdeps/m68k/m680x0/rshift.S +diff --git a/ports/sysdeps/m68k/m680x0/strtold_l.c b/sysdeps/m68k/m680x0/strtold_l.c +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/strtold_l.c +rename to sysdeps/m68k/m680x0/strtold_l.c +diff --git a/ports/sysdeps/m68k/m680x0/sub_n.S b/sysdeps/m68k/m680x0/sub_n.S +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/sub_n.S +rename to sysdeps/m68k/m680x0/sub_n.S +diff --git a/ports/sysdeps/m68k/m680x0/sysdep.h b/sysdeps/m68k/m680x0/sysdep.h +similarity index 100% +rename from ports/sysdeps/m68k/m680x0/sysdep.h +rename to sysdeps/m68k/m680x0/sysdep.h +diff --git a/ports/sysdeps/m68k/memchr.S b/sysdeps/m68k/memchr.S +similarity index 100% +rename from ports/sysdeps/m68k/memchr.S +rename to sysdeps/m68k/memchr.S +diff --git a/ports/sysdeps/m68k/memcopy.h b/sysdeps/m68k/memcopy.h +similarity index 100% +rename from ports/sysdeps/m68k/memcopy.h +rename to sysdeps/m68k/memcopy.h +diff --git a/ports/sysdeps/m68k/memusage.h b/sysdeps/m68k/memusage.h +similarity index 100% +rename from ports/sysdeps/m68k/memusage.h +rename to sysdeps/m68k/memusage.h +diff --git a/ports/sysdeps/m68k/nptl/Makefile b/sysdeps/m68k/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/m68k/nptl/Makefile +rename to sysdeps/m68k/nptl/Makefile +diff --git a/ports/sysdeps/m68k/nptl/pthread_spin_lock.c b/sysdeps/m68k/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/m68k/nptl/pthread_spin_lock.c +rename to sysdeps/m68k/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/m68k/nptl/pthreaddef.h b/sysdeps/m68k/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/m68k/nptl/pthreaddef.h +rename to sysdeps/m68k/nptl/pthreaddef.h +diff --git a/ports/sysdeps/m68k/nptl/tcb-offsets.sym b/sysdeps/m68k/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/m68k/nptl/tcb-offsets.sym +rename to sysdeps/m68k/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/m68k/nptl/tls.h b/sysdeps/m68k/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/m68k/nptl/tls.h +rename to sysdeps/m68k/nptl/tls.h +diff --git a/ports/sysdeps/m68k/preconfigure b/sysdeps/m68k/preconfigure +similarity index 100% +rename from ports/sysdeps/m68k/preconfigure +rename to sysdeps/m68k/preconfigure +diff --git a/ports/sysdeps/m68k/rawmemchr.S b/sysdeps/m68k/rawmemchr.S +similarity index 100% +rename from ports/sysdeps/m68k/rawmemchr.S +rename to sysdeps/m68k/rawmemchr.S +diff --git a/ports/sysdeps/m68k/setjmp.c b/sysdeps/m68k/setjmp.c +similarity index 100% +rename from ports/sysdeps/m68k/setjmp.c +rename to sysdeps/m68k/setjmp.c +diff --git a/ports/sysdeps/m68k/shlib-versions b/sysdeps/m68k/shlib-versions +similarity index 100% +rename from ports/sysdeps/m68k/shlib-versions +rename to sysdeps/m68k/shlib-versions +diff --git a/ports/sysdeps/m68k/sotruss-lib.c b/sysdeps/m68k/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/m68k/sotruss-lib.c +rename to sysdeps/m68k/sotruss-lib.c +diff --git a/ports/sysdeps/m68k/stackinfo.h b/sysdeps/m68k/stackinfo.h +similarity index 100% +rename from ports/sysdeps/m68k/stackinfo.h +rename to sysdeps/m68k/stackinfo.h +diff --git a/ports/sysdeps/m68k/start.S b/sysdeps/m68k/start.S +similarity index 100% +rename from ports/sysdeps/m68k/start.S +rename to sysdeps/m68k/start.S +diff --git a/ports/sysdeps/m68k/strchr.S b/sysdeps/m68k/strchr.S +similarity index 100% +rename from ports/sysdeps/m68k/strchr.S +rename to sysdeps/m68k/strchr.S +diff --git a/ports/sysdeps/m68k/strchrnul.S b/sysdeps/m68k/strchrnul.S +similarity index 100% +rename from ports/sysdeps/m68k/strchrnul.S +rename to sysdeps/m68k/strchrnul.S +diff --git a/ports/sysdeps/m68k/sys/ucontext.h b/sysdeps/m68k/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/m68k/sys/ucontext.h +rename to sysdeps/m68k/sys/ucontext.h +diff --git a/ports/sysdeps/m68k/sysdep.h b/sysdeps/m68k/sysdep.h +similarity index 100% +rename from ports/sysdeps/m68k/sysdep.h +rename to sysdeps/m68k/sysdep.h +diff --git a/ports/sysdeps/m68k/tls-macros.h b/sysdeps/m68k/tls-macros.h +similarity index 100% +rename from ports/sysdeps/m68k/tls-macros.h +rename to sysdeps/m68k/tls-macros.h +diff --git a/ports/sysdeps/m68k/tst-audit.h b/sysdeps/m68k/tst-audit.h +similarity index 100% +rename from ports/sysdeps/m68k/tst-audit.h +rename to sysdeps/m68k/tst-audit.h +diff --git a/ports/sysdeps/m68k/wcpcpy.c b/sysdeps/m68k/wcpcpy.c +similarity index 100% +rename from ports/sysdeps/m68k/wcpcpy.c +rename to sysdeps/m68k/wcpcpy.c +diff --git a/ports/sysdeps/m68k/wcpcpy_chk.c b/sysdeps/m68k/wcpcpy_chk.c +similarity index 100% +rename from ports/sysdeps/m68k/wcpcpy_chk.c +rename to sysdeps/m68k/wcpcpy_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/Makefile b/sysdeps/unix/sysv/linux/m68k/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/Makefile +rename to sysdeps/unix/sysv/linux/m68k/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/Versions b/sysdeps/unix/sysv/linux/m68k/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/Versions +rename to sysdeps/unix/sysv/linux/m68k/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c b/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c +rename to sysdeps/unix/sysv/linux/m68k/____longjmp_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/alphasort64.c b/sysdeps/unix/sysv/linux/m68k/alphasort64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/alphasort64.c +rename to sysdeps/unix/sysv/linux/m68k/alphasort64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/a.out.h b/sysdeps/unix/sysv/linux/m68k/bits/a.out.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/a.out.h +rename to sysdeps/unix/sysv/linux/m68k/bits/a.out.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h b/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/m68k/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h b/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h +rename to sysdeps/unix/sysv/linux/m68k/bits/m68k-vdso.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/mman.h b/sysdeps/unix/sysv/linux/m68k/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/mman.h +rename to sysdeps/unix/sysv/linux/m68k/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/poll.h b/sysdeps/unix/sysv/linux/m68k/bits/poll.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/poll.h +rename to sysdeps/unix/sysv/linux/m68k/bits/poll.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h b/sysdeps/unix/sysv/linux/m68k/bits/stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h +rename to sysdeps/unix/sysv/linux/m68k/bits/stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/brk.c b/sysdeps/unix/sysv/linux/m68k/brk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/brk.c +rename to sysdeps/unix/sysv/linux/m68k/brk.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/clone.S b/sysdeps/unix/sysv/linux/m68k/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/clone.S +rename to sysdeps/unix/sysv/linux/m68k/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/bits/atomic.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h +rename to sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure b/sysdeps/unix/sysv/linux/m68k/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/configure +rename to sysdeps/unix/sysv/linux/m68k/configure +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure.in b/sysdeps/unix/sysv/linux/m68k/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/configure.in +rename to sysdeps/unix/sysv/linux/m68k/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/dl-librecon.h b/sysdeps/unix/sysv/linux/m68k/dl-librecon.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/dl-librecon.h +rename to sysdeps/unix/sysv/linux/m68k/dl-librecon.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fchown.c b/sysdeps/unix/sysv/linux/m68k/fchown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/fchown.c +rename to sysdeps/unix/sysv/linux/m68k/fchown.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fchownat.c b/sysdeps/unix/sysv/linux/m68k/fchownat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/fchownat.c +rename to sysdeps/unix/sysv/linux/m68k/fchownat.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fcntl.c b/sysdeps/unix/sysv/linux/m68k/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/fcntl.c +rename to sysdeps/unix/sysv/linux/m68k/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fxstat.c b/sysdeps/unix/sysv/linux/m68k/fxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/fxstat.c +rename to sysdeps/unix/sysv/linux/m68k/fxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/fxstatat.c b/sysdeps/unix/sysv/linux/m68k/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/fxstatat.c +rename to sysdeps/unix/sysv/linux/m68k/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getdents64.c b/sysdeps/unix/sysv/linux/m68k/getdents64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getdents64.c +rename to sysdeps/unix/sysv/linux/m68k/getdents64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getegid.c b/sysdeps/unix/sysv/linux/m68k/getegid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getegid.c +rename to sysdeps/unix/sysv/linux/m68k/getegid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/geteuid.c b/sysdeps/unix/sysv/linux/m68k/geteuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/geteuid.c +rename to sysdeps/unix/sysv/linux/m68k/geteuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getgid.c b/sysdeps/unix/sysv/linux/m68k/getgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getgid.c +rename to sysdeps/unix/sysv/linux/m68k/getgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getgroups.c b/sysdeps/unix/sysv/linux/m68k/getgroups.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getgroups.c +rename to sysdeps/unix/sysv/linux/m68k/getgroups.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getmsg.c b/sysdeps/unix/sysv/linux/m68k/getmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getmsg.c +rename to sysdeps/unix/sysv/linux/m68k/getmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c b/sysdeps/unix/sysv/linux/m68k/getpagesize.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c +rename to sysdeps/unix/sysv/linux/m68k/getpagesize.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getresgid.c b/sysdeps/unix/sysv/linux/m68k/getresgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getresgid.c +rename to sysdeps/unix/sysv/linux/m68k/getresgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getresuid.c b/sysdeps/unix/sysv/linux/m68k/getresuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getresuid.c +rename to sysdeps/unix/sysv/linux/m68k/getresuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getrlimit64.c b/sysdeps/unix/sysv/linux/m68k/getrlimit64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getrlimit64.c +rename to sysdeps/unix/sysv/linux/m68k/getrlimit64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getsysstats.c b/sysdeps/unix/sysv/linux/m68k/getsysstats.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getsysstats.c +rename to sysdeps/unix/sysv/linux/m68k/getsysstats.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getuid.c b/sysdeps/unix/sysv/linux/m68k/getuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/getuid.c +rename to sysdeps/unix/sysv/linux/m68k/getuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/glob64.c b/sysdeps/unix/sysv/linux/m68k/glob64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/glob64.c +rename to sysdeps/unix/sysv/linux/m68k/glob64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/init-first.c b/sysdeps/unix/sysv/linux/m68k/init-first.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/init-first.c +rename to sysdeps/unix/sysv/linux/m68k/init-first.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h b/sysdeps/unix/sysv/linux/m68k/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h +rename to sysdeps/unix/sysv/linux/m68k/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lchown.c b/sysdeps/unix/sysv/linux/m68k/lchown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/lchown.c +rename to sysdeps/unix/sysv/linux/m68k/lchown.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/ldconfig.h b/sysdeps/unix/sysv/linux/m68k/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/ldconfig.h +rename to sysdeps/unix/sysv/linux/m68k/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c b/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c +rename to sysdeps/unix/sysv/linux/m68k/libc-m68k-vdso.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lockf64.c b/sysdeps/unix/sysv/linux/m68k/lockf64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/lockf64.c +rename to sysdeps/unix/sysv/linux/m68k/lockf64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/lxstat.c b/sysdeps/unix/sysv/linux/m68k/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/lxstat.c +rename to sysdeps/unix/sysv/linux/m68k/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile b/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/Makefile +rename to sysdeps/unix/sysv/linux/m68k/m680x0/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S +rename to sysdeps/unix/sysv/linux/m68k/m680x0/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S +rename to sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S +rename to sysdeps/unix/sysv/linux/m68k/m680x0/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S +rename to sysdeps/unix/sysv/linux/m68k/m680x0/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list b/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list +rename to sysdeps/unix/sysv/linux/m68k/m680x0/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h b/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h +rename to sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym b/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym +rename to sysdeps/unix/sysv/linux/m68k/m680x0/ucontext_i.sym +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S b/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m68k-helpers.S +rename to sysdeps/unix/sysv/linux/m68k/m68k-helpers.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c b/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/m68k-vdso.c +rename to sysdeps/unix/sysv/linux/m68k/m68k-vdso.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mmap.S b/sysdeps/unix/sysv/linux/m68k/mmap.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/mmap.S +rename to sysdeps/unix/sysv/linux/m68k/mmap.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mremap.S b/sysdeps/unix/sysv/linux/m68k/mremap.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/mremap.S +rename to sysdeps/unix/sysv/linux/m68k/mremap.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/msgctl.c b/sysdeps/unix/sysv/linux/m68k/msgctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/msgctl.c +rename to sysdeps/unix/sysv/linux/m68k/msgctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/m68k/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data b/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/m68k/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/clone.S b/sysdeps/unix/sysv/linux/m68k/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/clone.S +rename to sysdeps/unix/sysv/linux/m68k/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c b/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/m68k/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/fork.c b/sysdeps/unix/sysv/linux/m68k/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/fork.c +rename to sysdeps/unix/sysv/linux/m68k/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data b/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/m68k/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/m68k/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/m68k/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S b/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/m68k/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c b/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c +rename to sysdeps/unix/sysv/linux/m68k/oldgetrlimit64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/putmsg.c b/sysdeps/unix/sysv/linux/m68k/putmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/putmsg.c +rename to sysdeps/unix/sysv/linux/m68k/putmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/readdir64.c b/sysdeps/unix/sysv/linux/m68k/readdir64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/readdir64.c +rename to sysdeps/unix/sysv/linux/m68k/readdir64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/readdir64_r.c b/sysdeps/unix/sysv/linux/m68k/readdir64_r.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/readdir64_r.c +rename to sysdeps/unix/sysv/linux/m68k/readdir64_r.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/register-dump.h b/sysdeps/unix/sysv/linux/m68k/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/register-dump.h +rename to sysdeps/unix/sysv/linux/m68k/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/scandir64.c b/sysdeps/unix/sysv/linux/m68k/scandir64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/scandir64.c +rename to sysdeps/unix/sysv/linux/m68k/scandir64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/semctl.c b/sysdeps/unix/sysv/linux/m68k/semctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/semctl.c +rename to sysdeps/unix/sysv/linux/m68k/semctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/semtimedop.S b/sysdeps/unix/sysv/linux/m68k/semtimedop.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/semtimedop.S +rename to sysdeps/unix/sysv/linux/m68k/semtimedop.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setegid.c b/sysdeps/unix/sysv/linux/m68k/setegid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setegid.c +rename to sysdeps/unix/sysv/linux/m68k/setegid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/seteuid.c b/sysdeps/unix/sysv/linux/m68k/seteuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/seteuid.c +rename to sysdeps/unix/sysv/linux/m68k/seteuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setfsgid.c b/sysdeps/unix/sysv/linux/m68k/setfsgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setfsgid.c +rename to sysdeps/unix/sysv/linux/m68k/setfsgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setfsuid.c b/sysdeps/unix/sysv/linux/m68k/setfsuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setfsuid.c +rename to sysdeps/unix/sysv/linux/m68k/setfsuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setgid.c b/sysdeps/unix/sysv/linux/m68k/setgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setgid.c +rename to sysdeps/unix/sysv/linux/m68k/setgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setgroups.c b/sysdeps/unix/sysv/linux/m68k/setgroups.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setgroups.c +rename to sysdeps/unix/sysv/linux/m68k/setgroups.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setregid.c b/sysdeps/unix/sysv/linux/m68k/setregid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setregid.c +rename to sysdeps/unix/sysv/linux/m68k/setregid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setresgid.c b/sysdeps/unix/sysv/linux/m68k/setresgid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setresgid.c +rename to sysdeps/unix/sysv/linux/m68k/setresgid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setresuid.c b/sysdeps/unix/sysv/linux/m68k/setresuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setresuid.c +rename to sysdeps/unix/sysv/linux/m68k/setresuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setreuid.c b/sysdeps/unix/sysv/linux/m68k/setreuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setreuid.c +rename to sysdeps/unix/sysv/linux/m68k/setreuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setrlimit.c b/sysdeps/unix/sysv/linux/m68k/setrlimit.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setrlimit.c +rename to sysdeps/unix/sysv/linux/m68k/setrlimit.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/setuid.c b/sysdeps/unix/sysv/linux/m68k/setuid.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/setuid.c +rename to sysdeps/unix/sysv/linux/m68k/setuid.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/shmctl.c b/sysdeps/unix/sysv/linux/m68k/shmctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/shmctl.c +rename to sysdeps/unix/sysv/linux/m68k/shmctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h b/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/socket.S b/sysdeps/unix/sysv/linux/m68k/socket.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/socket.S +rename to sysdeps/unix/sysv/linux/m68k/socket.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/procfs.h b/sysdeps/unix/sysv/linux/m68k/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sys/procfs.h +rename to sysdeps/unix/sysv/linux/m68k/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/reg.h b/sysdeps/unix/sysv/linux/m68k/sys/reg.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sys/reg.h +rename to sysdeps/unix/sysv/linux/m68k/sys/reg.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h b/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/m68k/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sys/user.h b/sysdeps/unix/sysv/linux/m68k/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sys/user.h +rename to sysdeps/unix/sysv/linux/m68k/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/syscall.S b/sysdeps/unix/sysv/linux/m68k/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/syscall.S +rename to sysdeps/unix/sysv/linux/m68k/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/syscalls.list b/sysdeps/unix/sysv/linux/m68k/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/syscalls.list +rename to sysdeps/unix/sysv/linux/m68k/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.S b/sysdeps/unix/sysv/linux/m68k/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sysdep.S +rename to sysdeps/unix/sysv/linux/m68k/sysdep.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/sysdep.h b/sysdeps/unix/sysv/linux/m68k/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/sysdep.h +rename to sysdeps/unix/sysv/linux/m68k/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/versionsort64.c b/sysdeps/unix/sysv/linux/m68k/versionsort64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/versionsort64.c +rename to sysdeps/unix/sysv/linux/m68k/versionsort64.c +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/vfork.S b/sysdeps/unix/sysv/linux/m68k/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/vfork.S +rename to sysdeps/unix/sysv/linux/m68k/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/xstat.c b/sysdeps/unix/sysv/linux/m68k/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/m68k/xstat.c +rename to sysdeps/unix/sysv/linux/m68k/xstat.c diff --git a/SOURCES/glibc-rh1505492-ports-move-mips.patch b/SOURCES/glibc-rh1505492-ports-move-mips.patch new file mode 100644 index 0000000..c1643c6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-mips.patch @@ -0,0 +1,1331 @@ +Recreation of this upstream commit, using the indicated comments: + +commit 2ad7600be76ada35c6e9f0baa75bc96252785268 +Author: Joseph Myers +Date: Mon Feb 10 23:30:21 2014 +0000 + + Move mips from ports to libc. + + I've moved the MIPS port from ports to the main sysdeps hierarchy. + Beyond the README update, the move of the files was simply + + git mv ports/sysdeps/mips sysdeps/mips + git mv ports/sysdeps/unix/mips sysdeps/unix/mips + git mv ports/sysdeps/unix/sysv/linux/mips sysdeps/unix/sysv/linux/mips + +diff --git a/ports/sysdeps/mips/Implies b/sysdeps/mips/Implies +similarity index 100% +rename from ports/sysdeps/mips/Implies +rename to sysdeps/mips/Implies +diff --git a/ports/sysdeps/mips/Makefile b/sysdeps/mips/Makefile +similarity index 100% +rename from ports/sysdeps/mips/Makefile +rename to sysdeps/mips/Makefile +diff --git a/ports/sysdeps/mips/__longjmp.c b/sysdeps/mips/__longjmp.c +similarity index 100% +rename from ports/sysdeps/mips/__longjmp.c +rename to sysdeps/mips/__longjmp.c +diff --git a/ports/sysdeps/mips/abort-instr.h b/sysdeps/mips/abort-instr.h +similarity index 100% +rename from ports/sysdeps/mips/abort-instr.h +rename to sysdeps/mips/abort-instr.h +diff --git a/ports/sysdeps/mips/add_n.S b/sysdeps/mips/add_n.S +similarity index 100% +rename from ports/sysdeps/mips/add_n.S +rename to sysdeps/mips/add_n.S +diff --git a/ports/sysdeps/mips/addmul_1.S b/sysdeps/mips/addmul_1.S +similarity index 100% +rename from ports/sysdeps/mips/addmul_1.S +rename to sysdeps/mips/addmul_1.S +diff --git a/ports/sysdeps/mips/backtrace.c b/sysdeps/mips/backtrace.c +similarity index 100% +rename from ports/sysdeps/mips/backtrace.c +rename to sysdeps/mips/backtrace.c +diff --git a/ports/sysdeps/mips/bits/atomic.h b/sysdeps/mips/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/mips/bits/atomic.h +rename to sysdeps/mips/bits/atomic.h +diff --git a/ports/sysdeps/mips/bits/dlfcn.h b/sysdeps/mips/bits/dlfcn.h +similarity index 100% +rename from ports/sysdeps/mips/bits/dlfcn.h +rename to sysdeps/mips/bits/dlfcn.h +diff --git a/ports/sysdeps/mips/bits/endian.h b/sysdeps/mips/bits/endian.h +similarity index 100% +rename from ports/sysdeps/mips/bits/endian.h +rename to sysdeps/mips/bits/endian.h +diff --git a/ports/sysdeps/mips/bits/fenv.h b/sysdeps/mips/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/mips/bits/fenv.h +rename to sysdeps/mips/bits/fenv.h +diff --git a/ports/sysdeps/mips/bits/ipctypes.h b/sysdeps/mips/bits/ipctypes.h +similarity index 100% +rename from ports/sysdeps/mips/bits/ipctypes.h +rename to sysdeps/mips/bits/ipctypes.h +diff --git a/ports/sysdeps/mips/bits/link.h b/sysdeps/mips/bits/link.h +similarity index 100% +rename from ports/sysdeps/mips/bits/link.h +rename to sysdeps/mips/bits/link.h +diff --git a/ports/sysdeps/mips/bits/linkmap.h b/sysdeps/mips/bits/linkmap.h +similarity index 100% +rename from ports/sysdeps/mips/bits/linkmap.h +rename to sysdeps/mips/bits/linkmap.h +diff --git a/ports/sysdeps/mips/bits/mathdef.h b/sysdeps/mips/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/mips/bits/mathdef.h +rename to sysdeps/mips/bits/mathdef.h +diff --git a/ports/sysdeps/mips/bits/nan.h b/sysdeps/mips/bits/nan.h +similarity index 100% +rename from ports/sysdeps/mips/bits/nan.h +rename to sysdeps/mips/bits/nan.h +diff --git a/ports/sysdeps/mips/bits/setjmp.h b/sysdeps/mips/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/mips/bits/setjmp.h +rename to sysdeps/mips/bits/setjmp.h +diff --git a/ports/sysdeps/mips/bits/wordsize.h b/sysdeps/mips/bits/wordsize.h +similarity index 100% +rename from ports/sysdeps/mips/bits/wordsize.h +rename to sysdeps/mips/bits/wordsize.h +diff --git a/ports/sysdeps/mips/bsd-_setjmp.S b/sysdeps/mips/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/bsd-_setjmp.S +rename to sysdeps/mips/bsd-_setjmp.S +diff --git a/ports/sysdeps/mips/bsd-setjmp.S b/sysdeps/mips/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/bsd-setjmp.S +rename to sysdeps/mips/bsd-setjmp.S +diff --git a/ports/sysdeps/mips/configure b/sysdeps/mips/configure +similarity index 100% +rename from ports/sysdeps/mips/configure +rename to sysdeps/mips/configure +diff --git a/ports/sysdeps/mips/configure.in b/sysdeps/mips/configure.in +similarity index 100% +rename from ports/sysdeps/mips/configure.in +rename to sysdeps/mips/configure.in +diff --git a/ports/sysdeps/mips/dl-dtprocnum.h b/sysdeps/mips/dl-dtprocnum.h +similarity index 100% +rename from ports/sysdeps/mips/dl-dtprocnum.h +rename to sysdeps/mips/dl-dtprocnum.h +diff --git a/ports/sysdeps/mips/dl-lookup.c b/sysdeps/mips/dl-lookup.c +similarity index 100% +rename from ports/sysdeps/mips/dl-lookup.c +rename to sysdeps/mips/dl-lookup.c +diff --git a/ports/sysdeps/mips/dl-machine.h b/sysdeps/mips/dl-machine.h +similarity index 100% +rename from ports/sysdeps/mips/dl-machine.h +rename to sysdeps/mips/dl-machine.h +diff --git a/ports/sysdeps/mips/dl-procinfo.c b/sysdeps/mips/dl-procinfo.c +similarity index 100% +rename from ports/sysdeps/mips/dl-procinfo.c +rename to sysdeps/mips/dl-procinfo.c +diff --git a/ports/sysdeps/mips/dl-procinfo.h b/sysdeps/mips/dl-procinfo.h +similarity index 100% +rename from ports/sysdeps/mips/dl-procinfo.h +rename to sysdeps/mips/dl-procinfo.h +diff --git a/ports/sysdeps/mips/dl-tls.h b/sysdeps/mips/dl-tls.h +similarity index 100% +rename from ports/sysdeps/mips/dl-tls.h +rename to sysdeps/mips/dl-tls.h +diff --git a/ports/sysdeps/mips/dl-trampoline.c b/sysdeps/mips/dl-trampoline.c +similarity index 100% +rename from ports/sysdeps/mips/dl-trampoline.c +rename to sysdeps/mips/dl-trampoline.c +diff --git a/ports/sysdeps/mips/fpregdef.h b/sysdeps/mips/fpregdef.h +similarity index 100% +rename from ports/sysdeps/mips/fpregdef.h +rename to sysdeps/mips/fpregdef.h +diff --git a/ports/sysdeps/mips/fpu/e_sqrt.c b/sysdeps/mips/fpu/e_sqrt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/e_sqrt.c +rename to sysdeps/mips/fpu/e_sqrt.c +diff --git a/ports/sysdeps/mips/fpu/e_sqrtf.c b/sysdeps/mips/fpu/e_sqrtf.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/e_sqrtf.c +rename to sysdeps/mips/fpu/e_sqrtf.c +diff --git a/ports/sysdeps/mips/fpu/fclrexcpt.c b/sysdeps/mips/fpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fclrexcpt.c +rename to sysdeps/mips/fpu/fclrexcpt.c +diff --git a/ports/sysdeps/mips/fpu/fedisblxcpt.c b/sysdeps/mips/fpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fedisblxcpt.c +rename to sysdeps/mips/fpu/fedisblxcpt.c +diff --git a/ports/sysdeps/mips/fpu/feenablxcpt.c b/sysdeps/mips/fpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/feenablxcpt.c +rename to sysdeps/mips/fpu/feenablxcpt.c +diff --git a/ports/sysdeps/mips/fpu/fegetenv.c b/sysdeps/mips/fpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fegetenv.c +rename to sysdeps/mips/fpu/fegetenv.c +diff --git a/ports/sysdeps/mips/fpu/fegetexcept.c b/sysdeps/mips/fpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fegetexcept.c +rename to sysdeps/mips/fpu/fegetexcept.c +diff --git a/ports/sysdeps/mips/fpu/fegetround.c b/sysdeps/mips/fpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fegetround.c +rename to sysdeps/mips/fpu/fegetround.c +diff --git a/ports/sysdeps/mips/fpu/feholdexcpt.c b/sysdeps/mips/fpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/feholdexcpt.c +rename to sysdeps/mips/fpu/feholdexcpt.c +diff --git a/ports/sysdeps/mips/fpu/fenv_libc.h b/sysdeps/mips/fpu/fenv_libc.h +similarity index 100% +rename from ports/sysdeps/mips/fpu/fenv_libc.h +rename to sysdeps/mips/fpu/fenv_libc.h +diff --git a/ports/sysdeps/mips/fpu/fesetenv.c b/sysdeps/mips/fpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fesetenv.c +rename to sysdeps/mips/fpu/fesetenv.c +diff --git a/ports/sysdeps/mips/fpu/fesetround.c b/sysdeps/mips/fpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fesetround.c +rename to sysdeps/mips/fpu/fesetround.c +diff --git a/ports/sysdeps/mips/fpu/feupdateenv.c b/sysdeps/mips/fpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/feupdateenv.c +rename to sysdeps/mips/fpu/feupdateenv.c +diff --git a/ports/sysdeps/mips/fpu/fgetexcptflg.c b/sysdeps/mips/fpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fgetexcptflg.c +rename to sysdeps/mips/fpu/fgetexcptflg.c +diff --git a/ports/sysdeps/mips/fpu/fraiseexcpt.c b/sysdeps/mips/fpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fraiseexcpt.c +rename to sysdeps/mips/fpu/fraiseexcpt.c +diff --git a/ports/sysdeps/mips/fpu/fsetexcptflg.c b/sysdeps/mips/fpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/fsetexcptflg.c +rename to sysdeps/mips/fpu/fsetexcptflg.c +diff --git a/ports/sysdeps/mips/fpu/ftestexcept.c b/sysdeps/mips/fpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/mips/fpu/ftestexcept.c +rename to sysdeps/mips/fpu/ftestexcept.c +diff --git a/ports/sysdeps/mips/fpu_control.h b/sysdeps/mips/fpu_control.h +similarity index 100% +rename from ports/sysdeps/mips/fpu_control.h +rename to sysdeps/mips/fpu_control.h +diff --git a/ports/sysdeps/mips/gccframe.h b/sysdeps/mips/gccframe.h +similarity index 100% +rename from ports/sysdeps/mips/gccframe.h +rename to sysdeps/mips/gccframe.h +diff --git a/ports/sysdeps/mips/ieee754/ieee754.h b/sysdeps/mips/ieee754/ieee754.h +similarity index 100% +rename from ports/sysdeps/mips/ieee754/ieee754.h +rename to sysdeps/mips/ieee754/ieee754.h +diff --git a/ports/sysdeps/mips/jmpbuf-unwind.h b/sysdeps/mips/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/mips/jmpbuf-unwind.h +rename to sysdeps/mips/jmpbuf-unwind.h +diff --git a/ports/sysdeps/mips/ldsodefs.h b/sysdeps/mips/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/mips/ldsodefs.h +rename to sysdeps/mips/ldsodefs.h +diff --git a/ports/sysdeps/mips/libc-tls.c b/sysdeps/mips/libc-tls.c +similarity index 100% +rename from ports/sysdeps/mips/libc-tls.c +rename to sysdeps/mips/libc-tls.c +diff --git a/ports/sysdeps/mips/lshift.S b/sysdeps/mips/lshift.S +similarity index 100% +rename from ports/sysdeps/mips/lshift.S +rename to sysdeps/mips/lshift.S +diff --git a/ports/sysdeps/mips/machine-gmon.h b/sysdeps/mips/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/mips/machine-gmon.h +rename to sysdeps/mips/machine-gmon.h +diff --git a/ports/sysdeps/mips/memcpy.S b/sysdeps/mips/memcpy.S +similarity index 100% +rename from ports/sysdeps/mips/memcpy.S +rename to sysdeps/mips/memcpy.S +diff --git a/ports/sysdeps/mips/memmove.c b/sysdeps/mips/memmove.c +similarity index 100% +rename from ports/sysdeps/mips/memmove.c +rename to sysdeps/mips/memmove.c +diff --git a/ports/sysdeps/mips/memset.S b/sysdeps/mips/memset.S +similarity index 100% +rename from ports/sysdeps/mips/memset.S +rename to sysdeps/mips/memset.S +diff --git a/ports/sysdeps/mips/memusage.h b/sysdeps/mips/memusage.h +similarity index 100% +rename from ports/sysdeps/mips/memusage.h +rename to sysdeps/mips/memusage.h +diff --git a/ports/sysdeps/mips/mips32/Implies b/sysdeps/mips/mips32/Implies +similarity index 100% +rename from ports/sysdeps/mips/mips32/Implies +rename to sysdeps/mips/mips32/Implies +diff --git a/ports/sysdeps/mips/mips32/Makefile b/sysdeps/mips/mips32/Makefile +similarity index 100% +rename from ports/sysdeps/mips/mips32/Makefile +rename to sysdeps/mips/mips32/Makefile +diff --git a/ports/sysdeps/mips/mips32/crti.S b/sysdeps/mips/mips32/crti.S +similarity index 100% +rename from ports/sysdeps/mips/mips32/crti.S +rename to sysdeps/mips/mips32/crti.S +diff --git a/ports/sysdeps/mips/mips32/crtn.S b/sysdeps/mips/mips32/crtn.S +similarity index 100% +rename from ports/sysdeps/mips/mips32/crtn.S +rename to sysdeps/mips/mips32/crtn.S +diff --git a/ports/sysdeps/mips/mips32/libm-test-ulps b/sysdeps/mips/mips32/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/mips/mips32/libm-test-ulps +rename to sysdeps/mips/mips32/libm-test-ulps +diff --git a/ports/sysdeps/mips/mips64/Implies b/sysdeps/mips/mips64/Implies +similarity index 100% +rename from ports/sysdeps/mips/mips64/Implies +rename to sysdeps/mips/mips64/Implies +diff --git a/ports/sysdeps/mips/mips64/Versions b/sysdeps/mips/mips64/Versions +similarity index 100% +rename from ports/sysdeps/mips/mips64/Versions +rename to sysdeps/mips/mips64/Versions +diff --git a/ports/sysdeps/mips/mips64/__longjmp.c b/sysdeps/mips/mips64/__longjmp.c +similarity index 100% +rename from ports/sysdeps/mips/mips64/__longjmp.c +rename to sysdeps/mips/mips64/__longjmp.c +diff --git a/ports/sysdeps/mips/mips64/add_n.S b/sysdeps/mips/mips64/add_n.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/add_n.S +rename to sysdeps/mips/mips64/add_n.S +diff --git a/ports/sysdeps/mips/mips64/addmul_1.S b/sysdeps/mips/mips64/addmul_1.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/addmul_1.S +rename to sysdeps/mips/mips64/addmul_1.S +diff --git a/ports/sysdeps/mips/mips64/bsd-_setjmp.S b/sysdeps/mips/mips64/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/bsd-_setjmp.S +rename to sysdeps/mips/mips64/bsd-_setjmp.S +diff --git a/ports/sysdeps/mips/mips64/bsd-setjmp.S b/sysdeps/mips/mips64/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/bsd-setjmp.S +rename to sysdeps/mips/mips64/bsd-setjmp.S +diff --git a/ports/sysdeps/mips/mips64/gmp-mparam.h b/sysdeps/mips/mips64/gmp-mparam.h +similarity index 100% +rename from ports/sysdeps/mips/mips64/gmp-mparam.h +rename to sysdeps/mips/mips64/gmp-mparam.h +diff --git a/ports/sysdeps/mips/mips64/libm-test-ulps b/sysdeps/mips/mips64/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/mips/mips64/libm-test-ulps +rename to sysdeps/mips/mips64/libm-test-ulps +diff --git a/ports/sysdeps/mips/mips64/lshift.S b/sysdeps/mips/mips64/lshift.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/lshift.S +rename to sysdeps/mips/mips64/lshift.S +diff --git a/ports/sysdeps/mips/mips64/memset.S b/sysdeps/mips/mips64/memset.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/memset.S +rename to sysdeps/mips/mips64/memset.S +diff --git a/ports/sysdeps/mips/mips64/mul_1.S b/sysdeps/mips/mips64/mul_1.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/mul_1.S +rename to sysdeps/mips/mips64/mul_1.S +diff --git a/ports/sysdeps/mips/mips64/n32/Implies b/sysdeps/mips/mips64/n32/Implies +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/Implies +rename to sysdeps/mips/mips64/n32/Implies +diff --git a/ports/sysdeps/mips/mips64/n32/Makefile b/sysdeps/mips/mips64/n32/Makefile +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/Makefile +rename to sysdeps/mips/mips64/n32/Makefile +diff --git a/ports/sysdeps/mips/mips64/n32/_itoa.h b/sysdeps/mips/mips64/n32/_itoa.h +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/_itoa.h +rename to sysdeps/mips/mips64/n32/_itoa.h +diff --git a/ports/sysdeps/mips/mips64/n32/crti.S b/sysdeps/mips/mips64/n32/crti.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/crti.S +rename to sysdeps/mips/mips64/n32/crti.S +diff --git a/ports/sysdeps/mips/mips64/n32/crtn.S b/sysdeps/mips/mips64/n32/crtn.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/crtn.S +rename to sysdeps/mips/mips64/n32/crtn.S +diff --git a/ports/sysdeps/mips/mips64/n32/s_fma.c b/sysdeps/mips/mips64/n32/s_fma.c +similarity index 100% +rename from ports/sysdeps/mips/mips64/n32/s_fma.c +rename to sysdeps/mips/mips64/n32/s_fma.c +diff --git a/ports/sysdeps/mips/mips64/n64/Implies b/sysdeps/mips/mips64/n64/Implies +similarity index 100% +rename from ports/sysdeps/mips/mips64/n64/Implies +rename to sysdeps/mips/mips64/n64/Implies +diff --git a/ports/sysdeps/mips/mips64/n64/Makefile b/sysdeps/mips/mips64/n64/Makefile +similarity index 100% +rename from ports/sysdeps/mips/mips64/n64/Makefile +rename to sysdeps/mips/mips64/n64/Makefile +diff --git a/ports/sysdeps/mips/mips64/n64/crti.S b/sysdeps/mips/mips64/n64/crti.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/n64/crti.S +rename to sysdeps/mips/mips64/n64/crti.S +diff --git a/ports/sysdeps/mips/mips64/n64/crtn.S b/sysdeps/mips/mips64/n64/crtn.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/n64/crtn.S +rename to sysdeps/mips/mips64/n64/crtn.S +diff --git a/ports/sysdeps/mips/mips64/n64/s_fma.c b/sysdeps/mips/mips64/n64/s_fma.c +similarity index 100% +rename from ports/sysdeps/mips/mips64/n64/s_fma.c +rename to sysdeps/mips/mips64/n64/s_fma.c +diff --git a/ports/sysdeps/mips/mips64/rshift.S b/sysdeps/mips/mips64/rshift.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/rshift.S +rename to sysdeps/mips/mips64/rshift.S +diff --git a/ports/sysdeps/mips/mips64/setjmp.S b/sysdeps/mips/mips64/setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/setjmp.S +rename to sysdeps/mips/mips64/setjmp.S +diff --git a/ports/sysdeps/mips/mips64/setjmp_aux.c b/sysdeps/mips/mips64/setjmp_aux.c +similarity index 100% +rename from ports/sysdeps/mips/mips64/setjmp_aux.c +rename to sysdeps/mips/mips64/setjmp_aux.c +diff --git a/ports/sysdeps/mips/mips64/soft-fp/Makefile b/sysdeps/mips/mips64/soft-fp/Makefile +similarity index 100% +rename from ports/sysdeps/mips/mips64/soft-fp/Makefile +rename to sysdeps/mips/mips64/soft-fp/Makefile +diff --git a/ports/sysdeps/mips/mips64/soft-fp/e_sqrtl.c b/sysdeps/mips/mips64/soft-fp/e_sqrtl.c +similarity index 100% +rename from ports/sysdeps/mips/mips64/soft-fp/e_sqrtl.c +rename to sysdeps/mips/mips64/soft-fp/e_sqrtl.c +diff --git a/ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h b/sysdeps/mips/mips64/soft-fp/sfp-machine.h +similarity index 100% +rename from ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h +rename to sysdeps/mips/mips64/soft-fp/sfp-machine.h +diff --git a/ports/sysdeps/mips/mips64/sub_n.S b/sysdeps/mips/mips64/sub_n.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/sub_n.S +rename to sysdeps/mips/mips64/sub_n.S +diff --git a/ports/sysdeps/mips/mips64/submul_1.S b/sysdeps/mips/mips64/submul_1.S +similarity index 100% +rename from ports/sysdeps/mips/mips64/submul_1.S +rename to sysdeps/mips/mips64/submul_1.S +diff --git a/ports/sysdeps/mips/mul_1.S b/sysdeps/mips/mul_1.S +similarity index 100% +rename from ports/sysdeps/mips/mul_1.S +rename to sysdeps/mips/mul_1.S +diff --git a/ports/sysdeps/mips/nptl/Makefile b/sysdeps/mips/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/mips/nptl/Makefile +rename to sysdeps/mips/nptl/Makefile +diff --git a/ports/sysdeps/mips/nptl/nptl-sysdep.S b/sysdeps/mips/nptl/nptl-sysdep.S +similarity index 100% +rename from ports/sysdeps/mips/nptl/nptl-sysdep.S +rename to sysdeps/mips/nptl/nptl-sysdep.S +diff --git a/ports/sysdeps/mips/nptl/pthread_spin_lock.c b/sysdeps/mips/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/mips/nptl/pthread_spin_lock.c +rename to sysdeps/mips/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/mips/nptl/pthreaddef.h b/sysdeps/mips/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/mips/nptl/pthreaddef.h +rename to sysdeps/mips/nptl/pthreaddef.h +diff --git a/ports/sysdeps/mips/nptl/shlib-versions b/sysdeps/mips/nptl/shlib-versions +similarity index 100% +rename from ports/sysdeps/mips/nptl/shlib-versions +rename to sysdeps/mips/nptl/shlib-versions +diff --git a/ports/sysdeps/mips/nptl/tcb-offsets.sym b/sysdeps/mips/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/mips/nptl/tcb-offsets.sym +rename to sysdeps/mips/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/mips/nptl/tls.h b/sysdeps/mips/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/mips/nptl/tls.h +rename to sysdeps/mips/nptl/tls.h +diff --git a/ports/sysdeps/mips/preconfigure b/sysdeps/mips/preconfigure +similarity index 100% +rename from ports/sysdeps/mips/preconfigure +rename to sysdeps/mips/preconfigure +diff --git a/ports/sysdeps/mips/regdef.h b/sysdeps/mips/regdef.h +similarity index 100% +rename from ports/sysdeps/mips/regdef.h +rename to sysdeps/mips/regdef.h +diff --git a/ports/sysdeps/mips/rshift.S b/sysdeps/mips/rshift.S +similarity index 100% +rename from ports/sysdeps/mips/rshift.S +rename to sysdeps/mips/rshift.S +diff --git a/ports/sysdeps/mips/setjmp.S b/sysdeps/mips/setjmp.S +similarity index 100% +rename from ports/sysdeps/mips/setjmp.S +rename to sysdeps/mips/setjmp.S +diff --git a/ports/sysdeps/mips/setjmp_aux.c b/sysdeps/mips/setjmp_aux.c +similarity index 100% +rename from ports/sysdeps/mips/setjmp_aux.c +rename to sysdeps/mips/setjmp_aux.c +diff --git a/ports/sysdeps/mips/sgidefs.h b/sysdeps/mips/sgidefs.h +similarity index 100% +rename from ports/sysdeps/mips/sgidefs.h +rename to sysdeps/mips/sgidefs.h +diff --git a/ports/sysdeps/mips/shlib-versions b/sysdeps/mips/shlib-versions +similarity index 100% +rename from ports/sysdeps/mips/shlib-versions +rename to sysdeps/mips/shlib-versions +diff --git a/ports/sysdeps/mips/soft-fp/sfp-machine.h b/sysdeps/mips/soft-fp/sfp-machine.h +similarity index 100% +rename from ports/sysdeps/mips/soft-fp/sfp-machine.h +rename to sysdeps/mips/soft-fp/sfp-machine.h +diff --git a/ports/sysdeps/mips/sotruss-lib.c b/sysdeps/mips/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/mips/sotruss-lib.c +rename to sysdeps/mips/sotruss-lib.c +diff --git a/ports/sysdeps/mips/stackinfo.h b/sysdeps/mips/stackinfo.h +similarity index 100% +rename from ports/sysdeps/mips/stackinfo.h +rename to sysdeps/mips/stackinfo.h +diff --git a/ports/sysdeps/mips/start.S b/sysdeps/mips/start.S +similarity index 100% +rename from ports/sysdeps/mips/start.S +rename to sysdeps/mips/start.S +diff --git a/ports/sysdeps/mips/sub_n.S b/sysdeps/mips/sub_n.S +similarity index 100% +rename from ports/sysdeps/mips/sub_n.S +rename to sysdeps/mips/sub_n.S +diff --git a/ports/sysdeps/mips/submul_1.S b/sysdeps/mips/submul_1.S +similarity index 100% +rename from ports/sysdeps/mips/submul_1.S +rename to sysdeps/mips/submul_1.S +diff --git a/ports/sysdeps/mips/sys/asm.h b/sysdeps/mips/sys/asm.h +similarity index 100% +rename from ports/sysdeps/mips/sys/asm.h +rename to sysdeps/mips/sys/asm.h +diff --git a/ports/sysdeps/mips/sys/fpregdef.h b/sysdeps/mips/sys/fpregdef.h +similarity index 100% +rename from ports/sysdeps/mips/sys/fpregdef.h +rename to sysdeps/mips/sys/fpregdef.h +diff --git a/ports/sysdeps/mips/sys/regdef.h b/sysdeps/mips/sys/regdef.h +similarity index 100% +rename from ports/sysdeps/mips/sys/regdef.h +rename to sysdeps/mips/sys/regdef.h +diff --git a/ports/sysdeps/mips/sys/tas.h b/sysdeps/mips/sys/tas.h +similarity index 100% +rename from ports/sysdeps/mips/sys/tas.h +rename to sysdeps/mips/sys/tas.h +diff --git a/ports/sysdeps/mips/sys/ucontext.h b/sysdeps/mips/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/mips/sys/ucontext.h +rename to sysdeps/mips/sys/ucontext.h +diff --git a/ports/sysdeps/mips/tininess.h b/sysdeps/mips/tininess.h +similarity index 100% +rename from ports/sysdeps/mips/tininess.h +rename to sysdeps/mips/tininess.h +diff --git a/ports/sysdeps/mips/tls-macros.h b/sysdeps/mips/tls-macros.h +similarity index 100% +rename from ports/sysdeps/mips/tls-macros.h +rename to sysdeps/mips/tls-macros.h +diff --git a/ports/sysdeps/mips/tst-audit.h b/sysdeps/mips/tst-audit.h +similarity index 100% +rename from ports/sysdeps/mips/tst-audit.h +rename to sysdeps/mips/tst-audit.h +diff --git a/ports/sysdeps/unix/mips/entry.h b/sysdeps/unix/mips/entry.h +similarity index 100% +rename from ports/sysdeps/unix/mips/entry.h +rename to sysdeps/unix/mips/entry.h +diff --git a/ports/sysdeps/unix/mips/mips32/sysdep.h b/sysdeps/unix/mips/mips32/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/mips/mips32/sysdep.h +rename to sysdeps/unix/mips/mips32/sysdep.h +diff --git a/ports/sysdeps/unix/mips/mips64/n32/sysdep.h b/sysdeps/unix/mips/mips64/n32/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/mips/mips64/n32/sysdep.h +rename to sysdeps/unix/mips/mips64/n32/sysdep.h +diff --git a/ports/sysdeps/unix/mips/mips64/n64/sysdep.h b/sysdeps/unix/mips/mips64/n64/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/mips/mips64/n64/sysdep.h +rename to sysdeps/unix/mips/mips64/n64/sysdep.h +diff --git a/ports/sysdeps/unix/mips/pipe.S b/sysdeps/unix/mips/pipe.S +similarity index 100% +rename from ports/sysdeps/unix/mips/pipe.S +rename to sysdeps/unix/mips/pipe.S +diff --git a/ports/sysdeps/unix/mips/rt-sysdep.S b/sysdeps/unix/mips/rt-sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/mips/rt-sysdep.S +rename to sysdeps/unix/mips/rt-sysdep.S +diff --git a/ports/sysdeps/unix/mips/sysdep.S b/sysdeps/unix/mips/sysdep.S +similarity index 100% +rename from ports/sysdeps/unix/mips/sysdep.S +rename to sysdeps/unix/mips/sysdep.S +diff --git a/ports/sysdeps/unix/mips/sysdep.h b/sysdeps/unix/mips/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/mips/sysdep.h +rename to sysdeps/unix/mips/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/Makefile b/sysdeps/unix/sysv/linux/mips/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/Makefile +rename to sysdeps/unix/sysv/linux/mips/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/mips/Versions b/sysdeps/unix/sysv/linux/mips/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/Versions +rename to sysdeps/unix/sysv/linux/mips/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c b/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/____longjmp_chk.c +rename to sysdeps/unix/sysv/linux/mips/____longjmp_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/_test_and_set.c b/sysdeps/unix/sysv/linux/mips/_test_and_set.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/_test_and_set.c +rename to sysdeps/unix/sysv/linux/mips/_test_and_set.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/endian.h b/sysdeps/unix/sysv/linux/mips/bits/endian.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/endian.h +rename to sysdeps/unix/sysv/linux/mips/bits/endian.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/epoll.h b/sysdeps/unix/sysv/linux/mips/bits/epoll.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/epoll.h +rename to sysdeps/unix/sysv/linux/mips/bits/epoll.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/errno.h b/sysdeps/unix/sysv/linux/mips/bits/errno.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/errno.h +rename to sysdeps/unix/sysv/linux/mips/bits/errno.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/eventfd.h b/sysdeps/unix/sysv/linux/mips/bits/eventfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/eventfd.h +rename to sysdeps/unix/sysv/linux/mips/bits/eventfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h b/sysdeps/unix/sysv/linux/mips/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/mips/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/inotify.h b/sysdeps/unix/sysv/linux/mips/bits/inotify.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/inotify.h +rename to sysdeps/unix/sysv/linux/mips/bits/inotify.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h b/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h +rename to sysdeps/unix/sysv/linux/mips/bits/ioctl-types.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h b/sysdeps/unix/sysv/linux/mips/bits/ipc.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h +rename to sysdeps/unix/sysv/linux/mips/bits/ipc.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/mman.h b/sysdeps/unix/sysv/linux/mips/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/mman.h +rename to sysdeps/unix/sysv/linux/mips/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/msq.h b/sysdeps/unix/sysv/linux/mips/bits/msq.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/msq.h +rename to sysdeps/unix/sysv/linux/mips/bits/msq.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/poll.h b/sysdeps/unix/sysv/linux/mips/bits/poll.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/poll.h +rename to sysdeps/unix/sysv/linux/mips/bits/poll.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h b/sysdeps/unix/sysv/linux/mips/bits/resource.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/resource.h +rename to sysdeps/unix/sysv/linux/mips/bits/resource.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/sem.h b/sysdeps/unix/sysv/linux/mips/bits/sem.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/sem.h +rename to sysdeps/unix/sysv/linux/mips/bits/sem.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h b/sysdeps/unix/sysv/linux/mips/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/shm.h +rename to sysdeps/unix/sysv/linux/mips/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/sigaction.h b/sysdeps/unix/sysv/linux/mips/bits/sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/sigaction.h +rename to sysdeps/unix/sysv/linux/mips/bits/sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h b/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/sigcontext.h +rename to sysdeps/unix/sysv/linux/mips/bits/sigcontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/siginfo.h b/sysdeps/unix/sysv/linux/mips/bits/siginfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/siginfo.h +rename to sysdeps/unix/sysv/linux/mips/bits/siginfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/signalfd.h b/sysdeps/unix/sysv/linux/mips/bits/signalfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/signalfd.h +rename to sysdeps/unix/sysv/linux/mips/bits/signalfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/signum.h b/sysdeps/unix/sysv/linux/mips/bits/signum.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/signum.h +rename to sysdeps/unix/sysv/linux/mips/bits/signum.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/sigstack.h b/sysdeps/unix/sysv/linux/mips/bits/sigstack.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/sigstack.h +rename to sysdeps/unix/sysv/linux/mips/bits/sigstack.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/socket_type.h b/sysdeps/unix/sysv/linux/mips/bits/socket_type.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/socket_type.h +rename to sysdeps/unix/sysv/linux/mips/bits/socket_type.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/stat.h b/sysdeps/unix/sysv/linux/mips/bits/stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/stat.h +rename to sysdeps/unix/sysv/linux/mips/bits/stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/statfs.h b/sysdeps/unix/sysv/linux/mips/bits/statfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/statfs.h +rename to sysdeps/unix/sysv/linux/mips/bits/statfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/termios.h b/sysdeps/unix/sysv/linux/mips/bits/termios.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/termios.h +rename to sysdeps/unix/sysv/linux/mips/bits/termios.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/timerfd.h b/sysdeps/unix/sysv/linux/mips/bits/timerfd.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/bits/timerfd.h +rename to sysdeps/unix/sysv/linux/mips/bits/timerfd.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/brk.c b/sysdeps/unix/sysv/linux/mips/brk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/brk.c +rename to sysdeps/unix/sysv/linux/mips/brk.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/clone.S b/sysdeps/unix/sysv/linux/mips/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/clone.S +rename to sysdeps/unix/sysv/linux/mips/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/configure b/sysdeps/unix/sysv/linux/mips/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/configure +rename to sysdeps/unix/sysv/linux/mips/configure +diff --git a/ports/sysdeps/unix/sysv/linux/mips/configure.in b/sysdeps/unix/sysv/linux/mips/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/configure.in +rename to sysdeps/unix/sysv/linux/mips/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/mips/dl-cache.h b/sysdeps/unix/sysv/linux/mips/dl-cache.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/dl-cache.h +rename to sysdeps/unix/sysv/linux/mips/dl-cache.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/dl-static.c b/sysdeps/unix/sysv/linux/mips/dl-static.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/dl-static.c +rename to sysdeps/unix/sysv/linux/mips/dl-static.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/getcontext.S b/sysdeps/unix/sysv/linux/mips/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/getcontext.S +rename to sysdeps/unix/sysv/linux/mips/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/getmsg.c b/sysdeps/unix/sysv/linux/mips/getmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/getmsg.c +rename to sysdeps/unix/sysv/linux/mips/getmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/getsysstats.c b/sysdeps/unix/sysv/linux/mips/getsysstats.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/getsysstats.c +rename to sysdeps/unix/sysv/linux/mips/getsysstats.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/ipc_priv.h b/sysdeps/unix/sysv/linux/mips/ipc_priv.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/ipc_priv.h +rename to sysdeps/unix/sysv/linux/mips/ipc_priv.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/kernel-features.h b/sysdeps/unix/sysv/linux/mips/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/kernel-features.h +rename to sysdeps/unix/sysv/linux/mips/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h b/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h +rename to sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h b/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/kernel_sigaction.h +rename to sysdeps/unix/sysv/linux/mips/kernel_sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/kernel_stat.h b/sysdeps/unix/sysv/linux/mips/kernel_stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/kernel_stat.h +rename to sysdeps/unix/sysv/linux/mips/kernel_stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/kernel_termios.h b/sysdeps/unix/sysv/linux/mips/kernel_termios.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/kernel_termios.h +rename to sysdeps/unix/sysv/linux/mips/kernel_termios.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/ldsodefs.h b/sysdeps/unix/sysv/linux/mips/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/ldsodefs.h +rename to sysdeps/unix/sysv/linux/mips/ldsodefs.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/libc-abis b/sysdeps/unix/sysv/linux/mips/libc-abis +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/libc-abis +rename to sysdeps/unix/sysv/linux/mips/libc-abis +diff --git a/ports/sysdeps/unix/sysv/linux/mips/makecontext.S b/sysdeps/unix/sysv/linux/mips/makecontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/makecontext.S +rename to sysdeps/unix/sysv/linux/mips/makecontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/accept4.c b/sysdeps/unix/sysv/linux/mips/mips32/accept4.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/accept4.c +rename to sysdeps/unix/sysv/linux/mips/mips32/accept4.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c b/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/fcntl.c +rename to sysdeps/unix/sysv/linux/mips/mips32/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c b/sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c +rename to sysdeps/unix/sysv/linux/mips/mips32/ftruncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c b/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c +rename to sysdeps/unix/sysv/linux/mips/mips32/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/internal_accept4.S b/sysdeps/unix/sysv/linux/mips/mips32/internal_accept4.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/internal_accept4.S +rename to sysdeps/unix/sysv/linux/mips/mips32/internal_accept4.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/internal_recvmmsg.S b/sysdeps/unix/sysv/linux/mips/mips32/internal_recvmmsg.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/internal_recvmmsg.S +rename to sysdeps/unix/sysv/linux/mips/mips32/internal_recvmmsg.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/internal_sendmmsg.S b/sysdeps/unix/sysv/linux/mips/mips32/internal_sendmmsg.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/internal_sendmmsg.S +rename to sysdeps/unix/sysv/linux/mips/mips32/internal_sendmmsg.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c b/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/lockf64.c +rename to sysdeps/unix/sysv/linux/mips/mips32/lockf64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/c++-types.data b/sysdeps/unix/sysv/linux/mips/mips32/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/ld.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcidn.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcidn.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcidn.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libcidn.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_compat.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_compat.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_compat.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_compat.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_db.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_db.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_dns.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_dns.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_dns.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_dns.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_files.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_files.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_files.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_files.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_hesiod.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_hesiod.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_hesiod.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_hesiod.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nis.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nis.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nis.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nis.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nisplus.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nisplus.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nisplus.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libnss_nisplus.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/mips/mips32/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c b/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c +rename to sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c b/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c +rename to sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/readahead.c b/sysdeps/unix/sysv/linux/mips/mips32/readahead.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/readahead.c +rename to sysdeps/unix/sysv/linux/mips/mips32/readahead.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/recvmmsg.c b/sysdeps/unix/sysv/linux/mips/mips32/recvmmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/recvmmsg.c +rename to sysdeps/unix/sysv/linux/mips/mips32/recvmmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/sendmmsg.c b/sysdeps/unix/sysv/linux/mips/mips32/sendmmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/sendmmsg.c +rename to sysdeps/unix/sysv/linux/mips/mips32/sendmmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c b/sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c +rename to sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list b/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/syscalls.list +rename to sysdeps/unix/sysv/linux/mips/mips32/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h b/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h +rename to sysdeps/unix/sysv/linux/mips/mips32/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c b/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips32/truncate64.c +rename to sysdeps/unix/sysv/linux/mips/mips32/truncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/Makefile b/sysdeps/unix/sysv/linux/mips/mips64/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/Makefile +rename to sysdeps/unix/sysv/linux/mips/mips64/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure b/sysdeps/unix/sysv/linux/mips/mips64/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/configure +rename to sysdeps/unix/sysv/linux/mips/mips64/configure +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure.in b/sysdeps/unix/sysv/linux/mips/mips64/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/configure.in +rename to sysdeps/unix/sysv/linux/mips/mips64/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c b/sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/ftruncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c b/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/fxstat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c b/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h b/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h +rename to sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed b/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed +rename to sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/llseek.c b/sysdeps/unix/sysv/linux/mips/mips64/llseek.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/llseek.c +rename to sysdeps/unix/sysv/linux/mips/mips64/llseek.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c b/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/mmap64.c b/sysdeps/unix/sysv/linux/mips/mips64/mmap64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/mmap64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/mmap64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c b/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/msgctl.c +rename to sysdeps/unix/sysv/linux/mips/mips64/msgctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/lockf64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/c++-types.data b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/ld.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c b/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list b/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h b/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h +rename to sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/fstatfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/ftw.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/ftw64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S b/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/c++-types.data b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/ld.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/sendfile64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c b/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/statfs64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list b/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h b/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h +rename to sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/mips/mips64/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/mips/mips64/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/recv.c b/sysdeps/unix/sysv/linux/mips/mips64/recv.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/recv.c +rename to sysdeps/unix/sysv/linux/mips/mips64/recv.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c b/sysdeps/unix/sysv/linux/mips/mips64/semctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c +rename to sysdeps/unix/sysv/linux/mips/mips64/semctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/send.c b/sysdeps/unix/sysv/linux/mips/mips64/send.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/send.c +rename to sysdeps/unix/sysv/linux/mips/mips64/send.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c b/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/shmctl.c +rename to sysdeps/unix/sysv/linux/mips/mips64/shmctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/syscall.S b/sysdeps/unix/sysv/linux/mips/mips64/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/syscall.S +rename to sysdeps/unix/sysv/linux/mips/mips64/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/syscalls.list b/sysdeps/unix/sysv/linux/mips/mips64/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/syscalls.list +rename to sysdeps/unix/sysv/linux/mips/mips64/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/truncate64.c b/sysdeps/unix/sysv/linux/mips/mips64/truncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/truncate64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/truncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/umount.c b/sysdeps/unix/sysv/linux/mips/mips64/umount.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/umount.c +rename to sysdeps/unix/sysv/linux/mips/mips64/umount.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c b/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +rename to sysdeps/unix/sysv/linux/mips/mips64/xstat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h b/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h +rename to sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/mips/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/mips/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/clone.S b/sysdeps/unix/sysv/linux/mips/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/clone.S +rename to sysdeps/unix/sysv/linux/mips/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/createthread.c b/sysdeps/unix/sysv/linux/mips/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/mips/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/fork.c b/sysdeps/unix/sysv/linux/mips/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/fork.c +rename to sysdeps/unix/sysv/linux/mips/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/mips/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/mips/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/mips/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/mips/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/vfork.S b/sysdeps/unix/sysv/linux/mips/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/mips/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pipe.S b/sysdeps/unix/sysv/linux/mips/pipe.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/pipe.S +rename to sysdeps/unix/sysv/linux/mips/pipe.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pread.c b/sysdeps/unix/sysv/linux/mips/pread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/pread.c +rename to sysdeps/unix/sysv/linux/mips/pread.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pread64.c b/sysdeps/unix/sysv/linux/mips/pread64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/pread64.c +rename to sysdeps/unix/sysv/linux/mips/pread64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/profil-counter.h b/sysdeps/unix/sysv/linux/mips/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/profil-counter.h +rename to sysdeps/unix/sysv/linux/mips/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/putmsg.c b/sysdeps/unix/sysv/linux/mips/putmsg.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/putmsg.c +rename to sysdeps/unix/sysv/linux/mips/putmsg.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pwrite.c b/sysdeps/unix/sysv/linux/mips/pwrite.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/pwrite.c +rename to sysdeps/unix/sysv/linux/mips/pwrite.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/pwrite64.c b/sysdeps/unix/sysv/linux/mips/pwrite64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/pwrite64.c +rename to sysdeps/unix/sysv/linux/mips/pwrite64.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/readelflib.c b/sysdeps/unix/sysv/linux/mips/readelflib.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/readelflib.c +rename to sysdeps/unix/sysv/linux/mips/readelflib.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/register-dump.h b/sysdeps/unix/sysv/linux/mips/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/register-dump.h +rename to sysdeps/unix/sysv/linux/mips/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/setcontext.S b/sysdeps/unix/sysv/linux/mips/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/setcontext.S +rename to sysdeps/unix/sysv/linux/mips/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sigaction.c b/sysdeps/unix/sysv/linux/mips/sigaction.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sigaction.c +rename to sysdeps/unix/sysv/linux/mips/sigaction.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h b/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/mips/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/swapcontext.S b/sysdeps/unix/sysv/linux/mips/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/swapcontext.S +rename to sysdeps/unix/sysv/linux/mips/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sys/cachectl.h b/sysdeps/unix/sysv/linux/mips/sys/cachectl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sys/cachectl.h +rename to sysdeps/unix/sysv/linux/mips/sys/cachectl.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sys/procfs.h b/sysdeps/unix/sysv/linux/mips/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sys/procfs.h +rename to sysdeps/unix/sysv/linux/mips/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sys/sysmips.h b/sysdeps/unix/sysv/linux/mips/sys/sysmips.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sys/sysmips.h +rename to sysdeps/unix/sysv/linux/mips/sys/sysmips.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sys/ucontext.h b/sysdeps/unix/sysv/linux/mips/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/mips/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/sys/user.h b/sysdeps/unix/sysv/linux/mips/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/sys/user.h +rename to sysdeps/unix/sysv/linux/mips/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/mips/syscalls.list b/sysdeps/unix/sysv/linux/mips/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/syscalls.list +rename to sysdeps/unix/sysv/linux/mips/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/mips/ucontext_i.sym b/sysdeps/unix/sysv/linux/mips/ucontext_i.sym +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/ucontext_i.sym +rename to sysdeps/unix/sysv/linux/mips/ucontext_i.sym +diff --git a/ports/sysdeps/unix/sysv/linux/mips/ustat.c b/sysdeps/unix/sysv/linux/mips/ustat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/ustat.c +rename to sysdeps/unix/sysv/linux/mips/ustat.c +diff --git a/ports/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/vfork.S +rename to sysdeps/unix/sysv/linux/mips/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/mips/xstatconv.c b/sysdeps/unix/sysv/linux/mips/xstatconv.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/mips/xstatconv.c +rename to sysdeps/unix/sysv/linux/mips/xstatconv.c diff --git a/SOURCES/glibc-rh1505492-ports-move-powerpc.patch b/SOURCES/glibc-rh1505492-ports-move-powerpc.patch new file mode 100644 index 0000000..06c70df --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-powerpc.patch @@ -0,0 +1,290 @@ +Recreation of this upstream commit: + +commit 29d73d867e1df54d703542cf7d076c5620dc2fb7 +Author: Joseph Myers +Date: Fri Oct 4 16:02:33 2013 +0000 + + Move powerpc ports pieces to libc. + +Git commands used: + +git mv ports/sysdeps/powerpc/nofpu sysdeps/powerpc/nofpu +git mv ports/sysdeps/powerpc/soft-fp sysdeps/powerpc/soft-fp +git mv ports/sysdeps/powerpc/powerpc32/4* sysdeps/powerpc/powerpc32/ +git mv ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/* \ + sysdeps/unix/sysv/linux/powerpc/powerpc32/ +git rm ports/sysdeps/powerpc/powerpc32/Makefile + +In addition, sysdeps/powerpc/powerpc32/Makefile was updated to handle +the -mhard-float flag. + +diff --git a/ports/sysdeps/powerpc/powerpc32/Makefile b/ports/sysdeps/powerpc/powerpc32/Makefile +deleted file mode 100644 +index 3d235deeb91330f6..0000000000000000 +--- a/ports/sysdeps/powerpc/powerpc32/Makefile ++++ /dev/null +@@ -1,8 +0,0 @@ +-# Some Powerpc32 variants assume soft-fp is the default even though there is +-# an fp variant so provide -mhard-float if --with-fp is explicitly passed. +- +-ifeq ($(with-fp),yes) +-+cflags += -mhard-float +-ASFLAGS += -mhard-float +-sysdep-LDFLAGS += -mhard-float +-endif +diff --git a/ports/sysdeps/powerpc/nofpu/Makefile b/sysdeps/powerpc/nofpu/Makefile +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/Makefile +rename to sysdeps/powerpc/nofpu/Makefile +diff --git a/ports/sysdeps/powerpc/nofpu/Subdirs b/sysdeps/powerpc/nofpu/Subdirs +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/Subdirs +rename to sysdeps/powerpc/nofpu/Subdirs +diff --git a/ports/sysdeps/powerpc/nofpu/Versions b/sysdeps/powerpc/nofpu/Versions +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/Versions +rename to sysdeps/powerpc/nofpu/Versions +diff --git a/ports/sysdeps/powerpc/nofpu/fclrexcpt.c b/sysdeps/powerpc/nofpu/fclrexcpt.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fclrexcpt.c +rename to sysdeps/powerpc/nofpu/fclrexcpt.c +diff --git a/ports/sysdeps/powerpc/nofpu/fedisblxcpt.c b/sysdeps/powerpc/nofpu/fedisblxcpt.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fedisblxcpt.c +rename to sysdeps/powerpc/nofpu/fedisblxcpt.c +diff --git a/ports/sysdeps/powerpc/nofpu/feenablxcpt.c b/sysdeps/powerpc/nofpu/feenablxcpt.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/feenablxcpt.c +rename to sysdeps/powerpc/nofpu/feenablxcpt.c +diff --git a/ports/sysdeps/powerpc/nofpu/fegetenv.c b/sysdeps/powerpc/nofpu/fegetenv.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fegetenv.c +rename to sysdeps/powerpc/nofpu/fegetenv.c +diff --git a/ports/sysdeps/powerpc/nofpu/fegetexcept.c b/sysdeps/powerpc/nofpu/fegetexcept.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fegetexcept.c +rename to sysdeps/powerpc/nofpu/fegetexcept.c +diff --git a/ports/sysdeps/powerpc/nofpu/fegetround.c b/sysdeps/powerpc/nofpu/fegetround.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fegetround.c +rename to sysdeps/powerpc/nofpu/fegetround.c +diff --git a/ports/sysdeps/powerpc/nofpu/feholdexcpt.c b/sysdeps/powerpc/nofpu/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/feholdexcpt.c +rename to sysdeps/powerpc/nofpu/feholdexcpt.c +diff --git a/ports/sysdeps/powerpc/nofpu/fenv_const.c b/sysdeps/powerpc/nofpu/fenv_const.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fenv_const.c +rename to sysdeps/powerpc/nofpu/fenv_const.c +diff --git a/ports/sysdeps/powerpc/nofpu/fenv_libc.h b/sysdeps/powerpc/nofpu/fenv_libc.h +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fenv_libc.h +rename to sysdeps/powerpc/nofpu/fenv_libc.h +diff --git a/ports/sysdeps/powerpc/nofpu/fesetenv.c b/sysdeps/powerpc/nofpu/fesetenv.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fesetenv.c +rename to sysdeps/powerpc/nofpu/fesetenv.c +diff --git a/ports/sysdeps/powerpc/nofpu/fesetround.c b/sysdeps/powerpc/nofpu/fesetround.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fesetround.c +rename to sysdeps/powerpc/nofpu/fesetround.c +diff --git a/ports/sysdeps/powerpc/nofpu/feupdateenv.c b/sysdeps/powerpc/nofpu/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/feupdateenv.c +rename to sysdeps/powerpc/nofpu/feupdateenv.c +diff --git a/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c b/sysdeps/powerpc/nofpu/fgetexcptflg.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fgetexcptflg.c +rename to sysdeps/powerpc/nofpu/fgetexcptflg.c +diff --git a/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c b/sysdeps/powerpc/nofpu/fraiseexcpt.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fraiseexcpt.c +rename to sysdeps/powerpc/nofpu/fraiseexcpt.c +diff --git a/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c b/sysdeps/powerpc/nofpu/fsetexcptflg.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/fsetexcptflg.c +rename to sysdeps/powerpc/nofpu/fsetexcptflg.c +diff --git a/ports/sysdeps/powerpc/nofpu/ftestexcept.c b/sysdeps/powerpc/nofpu/ftestexcept.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/ftestexcept.c +rename to sysdeps/powerpc/nofpu/ftestexcept.c +diff --git a/ports/sysdeps/powerpc/nofpu/get-rounding-mode.h b/sysdeps/powerpc/nofpu/get-rounding-mode.h +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/get-rounding-mode.h +rename to sysdeps/powerpc/nofpu/get-rounding-mode.h +diff --git a/ports/sysdeps/powerpc/nofpu/libm-test-ulps b/sysdeps/powerpc/nofpu/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/libm-test-ulps +rename to sysdeps/powerpc/nofpu/libm-test-ulps +diff --git a/ports/sysdeps/powerpc/nofpu/shlib-versions b/sysdeps/powerpc/nofpu/shlib-versions +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/shlib-versions +rename to sysdeps/powerpc/nofpu/shlib-versions +diff --git a/ports/sysdeps/powerpc/nofpu/sim-full.c b/sysdeps/powerpc/nofpu/sim-full.c +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/sim-full.c +rename to sysdeps/powerpc/nofpu/sim-full.c +diff --git a/ports/sysdeps/powerpc/nofpu/soft-supp.h b/sysdeps/powerpc/nofpu/soft-supp.h +similarity index 100% +rename from ports/sysdeps/powerpc/nofpu/soft-supp.h +rename to sysdeps/powerpc/nofpu/soft-supp.h +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S b/sysdeps/powerpc/powerpc32/405/memcmp.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/memcmp.S +rename to sysdeps/powerpc/powerpc32/405/memcmp.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S b/sysdeps/powerpc/powerpc32/405/memcpy.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/memcpy.S +rename to sysdeps/powerpc/powerpc32/405/memcpy.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/memset.S b/sysdeps/powerpc/powerpc32/405/memset.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/memset.S +rename to sysdeps/powerpc/powerpc32/405/memset.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S b/sysdeps/powerpc/powerpc32/405/strcmp.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/strcmp.S +rename to sysdeps/powerpc/powerpc32/405/strcmp.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S b/sysdeps/powerpc/powerpc32/405/strcpy.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/strcpy.S +rename to sysdeps/powerpc/powerpc32/405/strcpy.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strlen.S b/sysdeps/powerpc/powerpc32/405/strlen.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/strlen.S +rename to sysdeps/powerpc/powerpc32/405/strlen.S +diff --git a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S b/sysdeps/powerpc/powerpc32/405/strncmp.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/405/strncmp.S +rename to sysdeps/powerpc/powerpc32/405/strncmp.S +diff --git a/ports/sysdeps/powerpc/powerpc32/440/Implies b/sysdeps/powerpc/powerpc32/440/Implies +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/440/Implies +rename to sysdeps/powerpc/powerpc32/440/Implies +diff --git a/ports/sysdeps/powerpc/powerpc32/464/Implies b/sysdeps/powerpc/powerpc32/464/Implies +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/464/Implies +rename to sysdeps/powerpc/powerpc32/464/Implies +diff --git a/ports/sysdeps/powerpc/powerpc32/476/Implies b/sysdeps/powerpc/powerpc32/476/Implies +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/476/Implies +rename to sysdeps/powerpc/powerpc32/476/Implies +diff --git a/ports/sysdeps/powerpc/powerpc32/476/memset.S b/sysdeps/powerpc/powerpc32/476/memset.S +similarity index 100% +rename from ports/sysdeps/powerpc/powerpc32/476/memset.S +rename to sysdeps/powerpc/powerpc32/476/memset.S +diff --git a/sysdeps/powerpc/powerpc32/Makefile b/sysdeps/powerpc/powerpc32/Makefile +index 64f79003af264964..0c515da52bc07d36 100644 +--- a/sysdeps/powerpc/powerpc32/Makefile ++++ b/sysdeps/powerpc/powerpc32/Makefile +@@ -5,6 +5,15 @@ ifeq ($(with-fp),no) + sysdep-LDFLAGS += -msoft-float + endif + ++# Some Powerpc32 variants assume soft-fp is the default even though there is ++# an fp variant so provide -mhard-float if --with-fp is explicitly passed. ++ ++ifeq ($(with-fp),yes) +++cflags += -mhard-float ++ASFLAGS += -mhard-float ++sysdep-LDFLAGS += -mhard-float ++endif ++ + ifeq ($(subdir),gmon) + sysdep_routines += ppc-mcount compat-ppc-mcount + static-only-routines += ppc-mcount +diff --git a/ports/sysdeps/powerpc/soft-fp/sfp-machine.h b/sysdeps/powerpc/soft-fp/sfp-machine.h +similarity index 100% +rename from ports/sysdeps/powerpc/soft-fp/sfp-machine.h +rename to sysdeps/powerpc/soft-fp/sfp-machine.h +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S +rename to sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S diff --git a/SOURCES/glibc-rh1505492-ports-move-tile.patch b/SOURCES/glibc-rh1505492-ports-move-tile.patch new file mode 100644 index 0000000..a16a95f --- /dev/null +++ b/SOURCES/glibc-rh1505492-ports-move-tile.patch @@ -0,0 +1,1102 @@ +Recreation of this upstream patch, using the indicated git commands: + +commit 4372980f5881e7d537a52e3c49588ce116088061 +Author: Chris Metcalf +Date: Mon Feb 10 10:54:47 2014 -0500 + + Move tilegx, tilepro, and linux-generic from ports to libc. + + I've moved the TILE-Gx and TILEPro ports to the main sysdeps hierarchy, + along with the linux-generic ports infrastructure. Beyond the README + update, the move was just + + git mv ports/sysdeps/tile sysdeps/tile + git mv ports/sysdeps/unix/sysv/linux/tile \ + sysdeps/unix/sysv/linux/tile + git mv ports/sysdeps/unix/sysv/linux/generic \ + sysdeps/unix/sysv/linux/generic + +diff --git a/ports/sysdeps/tile/Implies b/sysdeps/tile/Implies +similarity index 100% +rename from ports/sysdeps/tile/Implies +rename to sysdeps/tile/Implies +diff --git a/ports/sysdeps/tile/Makefile b/sysdeps/tile/Makefile +similarity index 100% +rename from ports/sysdeps/tile/Makefile +rename to sysdeps/tile/Makefile +diff --git a/ports/sysdeps/tile/Versions b/sysdeps/tile/Versions +similarity index 100% +rename from ports/sysdeps/tile/Versions +rename to sysdeps/tile/Versions +diff --git a/ports/sysdeps/tile/__longjmp.S b/sysdeps/tile/__longjmp.S +similarity index 100% +rename from ports/sysdeps/tile/__longjmp.S +rename to sysdeps/tile/__longjmp.S +diff --git a/ports/sysdeps/tile/__tls_get_addr.S b/sysdeps/tile/__tls_get_addr.S +similarity index 100% +rename from ports/sysdeps/tile/__tls_get_addr.S +rename to sysdeps/tile/__tls_get_addr.S +diff --git a/ports/sysdeps/tile/_mcount.S b/sysdeps/tile/_mcount.S +similarity index 100% +rename from ports/sysdeps/tile/_mcount.S +rename to sysdeps/tile/_mcount.S +diff --git a/ports/sysdeps/tile/abort-instr.h b/sysdeps/tile/abort-instr.h +similarity index 100% +rename from ports/sysdeps/tile/abort-instr.h +rename to sysdeps/tile/abort-instr.h +diff --git a/ports/sysdeps/tile/backtrace.c b/sysdeps/tile/backtrace.c +similarity index 100% +rename from ports/sysdeps/tile/backtrace.c +rename to sysdeps/tile/backtrace.c +diff --git a/ports/sysdeps/tile/bits/atomic.h b/sysdeps/tile/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/tile/bits/atomic.h +rename to sysdeps/tile/bits/atomic.h +diff --git a/ports/sysdeps/tile/bits/byteswap.h b/sysdeps/tile/bits/byteswap.h +similarity index 100% +rename from ports/sysdeps/tile/bits/byteswap.h +rename to sysdeps/tile/bits/byteswap.h +diff --git a/ports/sysdeps/tile/bits/endian.h b/sysdeps/tile/bits/endian.h +similarity index 100% +rename from ports/sysdeps/tile/bits/endian.h +rename to sysdeps/tile/bits/endian.h +diff --git a/ports/sysdeps/tile/bits/fenv.h b/sysdeps/tile/bits/fenv.h +similarity index 100% +rename from ports/sysdeps/tile/bits/fenv.h +rename to sysdeps/tile/bits/fenv.h +diff --git a/ports/sysdeps/tile/bits/link.h b/sysdeps/tile/bits/link.h +similarity index 100% +rename from ports/sysdeps/tile/bits/link.h +rename to sysdeps/tile/bits/link.h +diff --git a/ports/sysdeps/tile/bits/mathdef.h b/sysdeps/tile/bits/mathdef.h +similarity index 100% +rename from ports/sysdeps/tile/bits/mathdef.h +rename to sysdeps/tile/bits/mathdef.h +diff --git a/ports/sysdeps/tile/bits/mathinline.h b/sysdeps/tile/bits/mathinline.h +similarity index 100% +rename from ports/sysdeps/tile/bits/mathinline.h +rename to sysdeps/tile/bits/mathinline.h +diff --git a/ports/sysdeps/tile/bits/setjmp.h b/sysdeps/tile/bits/setjmp.h +similarity index 100% +rename from ports/sysdeps/tile/bits/setjmp.h +rename to sysdeps/tile/bits/setjmp.h +diff --git a/ports/sysdeps/tile/bsd-_setjmp.S b/sysdeps/tile/bsd-_setjmp.S +similarity index 100% +rename from ports/sysdeps/tile/bsd-_setjmp.S +rename to sysdeps/tile/bsd-_setjmp.S +diff --git a/ports/sysdeps/tile/bsd-setjmp.S b/sysdeps/tile/bsd-setjmp.S +similarity index 100% +rename from ports/sysdeps/tile/bsd-setjmp.S +rename to sysdeps/tile/bsd-setjmp.S +diff --git a/ports/sysdeps/tile/bzero.S b/sysdeps/tile/bzero.S +similarity index 100% +rename from ports/sysdeps/tile/bzero.S +rename to sysdeps/tile/bzero.S +diff --git a/ports/sysdeps/tile/crti.S b/sysdeps/tile/crti.S +similarity index 100% +rename from ports/sysdeps/tile/crti.S +rename to sysdeps/tile/crti.S +diff --git a/ports/sysdeps/tile/crtn.S b/sysdeps/tile/crtn.S +similarity index 100% +rename from ports/sysdeps/tile/crtn.S +rename to sysdeps/tile/crtn.S +diff --git a/ports/sysdeps/tile/dl-lookupcfg.h b/sysdeps/tile/dl-lookupcfg.h +similarity index 100% +rename from ports/sysdeps/tile/dl-lookupcfg.h +rename to sysdeps/tile/dl-lookupcfg.h +diff --git a/ports/sysdeps/tile/dl-machine.h b/sysdeps/tile/dl-machine.h +similarity index 100% +rename from ports/sysdeps/tile/dl-machine.h +rename to sysdeps/tile/dl-machine.h +diff --git a/ports/sysdeps/tile/dl-runtime.c b/sysdeps/tile/dl-runtime.c +similarity index 100% +rename from ports/sysdeps/tile/dl-runtime.c +rename to sysdeps/tile/dl-runtime.c +diff --git a/ports/sysdeps/tile/dl-start.S b/sysdeps/tile/dl-start.S +similarity index 100% +rename from ports/sysdeps/tile/dl-start.S +rename to sysdeps/tile/dl-start.S +diff --git a/ports/sysdeps/tile/dl-tls.c b/sysdeps/tile/dl-tls.c +similarity index 100% +rename from ports/sysdeps/tile/dl-tls.c +rename to sysdeps/tile/dl-tls.c +diff --git a/ports/sysdeps/tile/dl-tls.h b/sysdeps/tile/dl-tls.h +similarity index 100% +rename from ports/sysdeps/tile/dl-tls.h +rename to sysdeps/tile/dl-tls.h +diff --git a/ports/sysdeps/tile/dl-trampoline.S b/sysdeps/tile/dl-trampoline.S +similarity index 100% +rename from ports/sysdeps/tile/dl-trampoline.S +rename to sysdeps/tile/dl-trampoline.S +diff --git a/ports/sysdeps/tile/fegetenv.c b/sysdeps/tile/fegetenv.c +similarity index 100% +rename from ports/sysdeps/tile/fegetenv.c +rename to sysdeps/tile/fegetenv.c +diff --git a/ports/sysdeps/tile/fegetround.c b/sysdeps/tile/fegetround.c +similarity index 100% +rename from ports/sysdeps/tile/fegetround.c +rename to sysdeps/tile/fegetround.c +diff --git a/ports/sysdeps/tile/feholdexcpt.c b/sysdeps/tile/feholdexcpt.c +similarity index 100% +rename from ports/sysdeps/tile/feholdexcpt.c +rename to sysdeps/tile/feholdexcpt.c +diff --git a/ports/sysdeps/tile/fesetenv.c b/sysdeps/tile/fesetenv.c +similarity index 100% +rename from ports/sysdeps/tile/fesetenv.c +rename to sysdeps/tile/fesetenv.c +diff --git a/ports/sysdeps/tile/fesetround.c b/sysdeps/tile/fesetround.c +similarity index 100% +rename from ports/sysdeps/tile/fesetround.c +rename to sysdeps/tile/fesetround.c +diff --git a/ports/sysdeps/tile/feupdateenv.c b/sysdeps/tile/feupdateenv.c +similarity index 100% +rename from ports/sysdeps/tile/feupdateenv.c +rename to sysdeps/tile/feupdateenv.c +diff --git a/ports/sysdeps/tile/ffs.c b/sysdeps/tile/ffs.c +similarity index 100% +rename from ports/sysdeps/tile/ffs.c +rename to sysdeps/tile/ffs.c +diff --git a/ports/sysdeps/tile/ffsll.c b/sysdeps/tile/ffsll.c +similarity index 100% +rename from ports/sysdeps/tile/ffsll.c +rename to sysdeps/tile/ffsll.c +diff --git a/ports/sysdeps/tile/gccframe.h b/sysdeps/tile/gccframe.h +similarity index 100% +rename from ports/sysdeps/tile/gccframe.h +rename to sysdeps/tile/gccframe.h +diff --git a/ports/sysdeps/tile/jmpbuf-offsets.h b/sysdeps/tile/jmpbuf-offsets.h +similarity index 100% +rename from ports/sysdeps/tile/jmpbuf-offsets.h +rename to sysdeps/tile/jmpbuf-offsets.h +diff --git a/ports/sysdeps/tile/jmpbuf-unwind.h b/sysdeps/tile/jmpbuf-unwind.h +similarity index 100% +rename from ports/sysdeps/tile/jmpbuf-unwind.h +rename to sysdeps/tile/jmpbuf-unwind.h +diff --git a/ports/sysdeps/tile/ldsodefs.h b/sysdeps/tile/ldsodefs.h +similarity index 100% +rename from ports/sysdeps/tile/ldsodefs.h +rename to sysdeps/tile/ldsodefs.h +diff --git a/ports/sysdeps/tile/libm-test-ulps b/sysdeps/tile/libm-test-ulps +similarity index 100% +rename from ports/sysdeps/tile/libm-test-ulps +rename to sysdeps/tile/libm-test-ulps +diff --git a/ports/sysdeps/tile/machine-gmon.h b/sysdeps/tile/machine-gmon.h +similarity index 100% +rename from ports/sysdeps/tile/machine-gmon.h +rename to sysdeps/tile/machine-gmon.h +diff --git a/ports/sysdeps/tile/math_private.h b/sysdeps/tile/math_private.h +similarity index 100% +rename from ports/sysdeps/tile/math_private.h +rename to sysdeps/tile/math_private.h +diff --git a/ports/sysdeps/tile/memcopy.h b/sysdeps/tile/memcopy.h +similarity index 100% +rename from ports/sysdeps/tile/memcopy.h +rename to sysdeps/tile/memcopy.h +diff --git a/ports/sysdeps/tile/nptl/Makefile b/sysdeps/tile/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/tile/nptl/Makefile +rename to sysdeps/tile/nptl/Makefile +diff --git a/ports/sysdeps/tile/nptl/pthread_spin_lock.c b/sysdeps/tile/nptl/pthread_spin_lock.c +similarity index 100% +rename from ports/sysdeps/tile/nptl/pthread_spin_lock.c +rename to sysdeps/tile/nptl/pthread_spin_lock.c +diff --git a/ports/sysdeps/tile/nptl/pthread_spin_trylock.c b/sysdeps/tile/nptl/pthread_spin_trylock.c +similarity index 100% +rename from ports/sysdeps/tile/nptl/pthread_spin_trylock.c +rename to sysdeps/tile/nptl/pthread_spin_trylock.c +diff --git a/ports/sysdeps/tile/nptl/pthread_spin_unlock.c b/sysdeps/tile/nptl/pthread_spin_unlock.c +similarity index 100% +rename from ports/sysdeps/tile/nptl/pthread_spin_unlock.c +rename to sysdeps/tile/nptl/pthread_spin_unlock.c +diff --git a/ports/sysdeps/tile/nptl/pthreaddef.h b/sysdeps/tile/nptl/pthreaddef.h +similarity index 100% +rename from ports/sysdeps/tile/nptl/pthreaddef.h +rename to sysdeps/tile/nptl/pthreaddef.h +diff --git a/ports/sysdeps/tile/nptl/tcb-offsets.sym b/sysdeps/tile/nptl/tcb-offsets.sym +similarity index 100% +rename from ports/sysdeps/tile/nptl/tcb-offsets.sym +rename to sysdeps/tile/nptl/tcb-offsets.sym +diff --git a/ports/sysdeps/tile/nptl/tls.h b/sysdeps/tile/nptl/tls.h +similarity index 100% +rename from ports/sysdeps/tile/nptl/tls.h +rename to sysdeps/tile/nptl/tls.h +diff --git a/ports/sysdeps/tile/preconfigure b/sysdeps/tile/preconfigure +similarity index 100% +rename from ports/sysdeps/tile/preconfigure +rename to sysdeps/tile/preconfigure +diff --git a/ports/sysdeps/tile/s_fma.c b/sysdeps/tile/s_fma.c +similarity index 100% +rename from ports/sysdeps/tile/s_fma.c +rename to sysdeps/tile/s_fma.c +diff --git a/ports/sysdeps/tile/s_fmaf.c b/sysdeps/tile/s_fmaf.c +similarity index 100% +rename from ports/sysdeps/tile/s_fmaf.c +rename to sysdeps/tile/s_fmaf.c +diff --git a/ports/sysdeps/tile/setjmp.S b/sysdeps/tile/setjmp.S +similarity index 100% +rename from ports/sysdeps/tile/setjmp.S +rename to sysdeps/tile/setjmp.S +diff --git a/ports/sysdeps/tile/shlib-versions b/sysdeps/tile/shlib-versions +similarity index 100% +rename from ports/sysdeps/tile/shlib-versions +rename to sysdeps/tile/shlib-versions +diff --git a/ports/sysdeps/tile/sotruss-lib.c b/sysdeps/tile/sotruss-lib.c +similarity index 100% +rename from ports/sysdeps/tile/sotruss-lib.c +rename to sysdeps/tile/sotruss-lib.c +diff --git a/ports/sysdeps/tile/stackguard-macros.h b/sysdeps/tile/stackguard-macros.h +similarity index 100% +rename from ports/sysdeps/tile/stackguard-macros.h +rename to sysdeps/tile/stackguard-macros.h +diff --git a/ports/sysdeps/tile/stackinfo.h b/sysdeps/tile/stackinfo.h +similarity index 100% +rename from ports/sysdeps/tile/stackinfo.h +rename to sysdeps/tile/stackinfo.h +diff --git a/ports/sysdeps/tile/start.S b/sysdeps/tile/start.S +similarity index 100% +rename from ports/sysdeps/tile/start.S +rename to sysdeps/tile/start.S +diff --git a/ports/sysdeps/tile/sysdep.h b/sysdeps/tile/sysdep.h +similarity index 100% +rename from ports/sysdeps/tile/sysdep.h +rename to sysdeps/tile/sysdep.h +diff --git a/ports/sysdeps/tile/tilegx/Makefile b/sysdeps/tile/tilegx/Makefile +similarity index 100% +rename from ports/sysdeps/tile/tilegx/Makefile +rename to sysdeps/tile/tilegx/Makefile +diff --git a/ports/sysdeps/tile/tilegx/bits/atomic.h b/sysdeps/tile/tilegx/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/tile/tilegx/bits/atomic.h +rename to sysdeps/tile/tilegx/bits/atomic.h +diff --git a/ports/sysdeps/tile/tilegx/bits/wordsize.h b/sysdeps/tile/tilegx/bits/wordsize.h +similarity index 100% +rename from ports/sysdeps/tile/tilegx/bits/wordsize.h +rename to sysdeps/tile/tilegx/bits/wordsize.h +diff --git a/ports/sysdeps/tile/tilegx/memchr.c b/sysdeps/tile/tilegx/memchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/memchr.c +rename to sysdeps/tile/tilegx/memchr.c +diff --git a/ports/sysdeps/tile/tilegx/memcpy.c b/sysdeps/tile/tilegx/memcpy.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/memcpy.c +rename to sysdeps/tile/tilegx/memcpy.c +diff --git a/ports/sysdeps/tile/tilegx/memmove.c b/sysdeps/tile/tilegx/memmove.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/memmove.c +rename to sysdeps/tile/tilegx/memmove.c +diff --git a/ports/sysdeps/tile/tilegx/memset.c b/sysdeps/tile/tilegx/memset.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/memset.c +rename to sysdeps/tile/tilegx/memset.c +diff --git a/ports/sysdeps/tile/tilegx/memusage.h b/sysdeps/tile/tilegx/memusage.h +similarity index 100% +rename from ports/sysdeps/tile/tilegx/memusage.h +rename to sysdeps/tile/tilegx/memusage.h +diff --git a/ports/sysdeps/tile/tilegx/rawmemchr.c b/sysdeps/tile/tilegx/rawmemchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/rawmemchr.c +rename to sysdeps/tile/tilegx/rawmemchr.c +diff --git a/ports/sysdeps/tile/tilegx/strchr.c b/sysdeps/tile/tilegx/strchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/strchr.c +rename to sysdeps/tile/tilegx/strchr.c +diff --git a/ports/sysdeps/tile/tilegx/strchrnul.c b/sysdeps/tile/tilegx/strchrnul.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/strchrnul.c +rename to sysdeps/tile/tilegx/strchrnul.c +diff --git a/ports/sysdeps/tile/tilegx/string-endian.h b/sysdeps/tile/tilegx/string-endian.h +similarity index 100% +rename from ports/sysdeps/tile/tilegx/string-endian.h +rename to sysdeps/tile/tilegx/string-endian.h +diff --git a/ports/sysdeps/tile/tilegx/strlen.c b/sysdeps/tile/tilegx/strlen.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/strlen.c +rename to sysdeps/tile/tilegx/strlen.c +diff --git a/ports/sysdeps/tile/tilegx/strrchr.c b/sysdeps/tile/tilegx/strrchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilegx/strrchr.c +rename to sysdeps/tile/tilegx/strrchr.c +diff --git a/ports/sysdeps/tile/tilegx/tilegx32/Implies b/sysdeps/tile/tilegx/tilegx32/Implies +similarity index 100% +rename from ports/sysdeps/tile/tilegx/tilegx32/Implies +rename to sysdeps/tile/tilegx/tilegx32/Implies +diff --git a/ports/sysdeps/tile/tilegx/tilegx64/Implies b/sysdeps/tile/tilegx/tilegx64/Implies +similarity index 100% +rename from ports/sysdeps/tile/tilegx/tilegx64/Implies +rename to sysdeps/tile/tilegx/tilegx64/Implies +diff --git a/ports/sysdeps/tile/tilepro/Implies b/sysdeps/tile/tilepro/Implies +similarity index 100% +rename from ports/sysdeps/tile/tilepro/Implies +rename to sysdeps/tile/tilepro/Implies +diff --git a/ports/sysdeps/tile/tilepro/bits/atomic.h b/sysdeps/tile/tilepro/bits/atomic.h +similarity index 100% +rename from ports/sysdeps/tile/tilepro/bits/atomic.h +rename to sysdeps/tile/tilepro/bits/atomic.h +diff --git a/ports/sysdeps/tile/tilepro/bits/wordsize.h b/sysdeps/tile/tilepro/bits/wordsize.h +similarity index 100% +rename from ports/sysdeps/tile/tilepro/bits/wordsize.h +rename to sysdeps/tile/tilepro/bits/wordsize.h +diff --git a/ports/sysdeps/tile/tilepro/memchr.c b/sysdeps/tile/tilepro/memchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/memchr.c +rename to sysdeps/tile/tilepro/memchr.c +diff --git a/ports/sysdeps/tile/tilepro/memcpy.S b/sysdeps/tile/tilepro/memcpy.S +similarity index 100% +rename from ports/sysdeps/tile/tilepro/memcpy.S +rename to sysdeps/tile/tilepro/memcpy.S +diff --git a/ports/sysdeps/tile/tilepro/memset.c b/sysdeps/tile/tilepro/memset.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/memset.c +rename to sysdeps/tile/tilepro/memset.c +diff --git a/ports/sysdeps/tile/tilepro/memusage.h b/sysdeps/tile/tilepro/memusage.h +similarity index 100% +rename from ports/sysdeps/tile/tilepro/memusage.h +rename to sysdeps/tile/tilepro/memusage.h +diff --git a/ports/sysdeps/tile/tilepro/rawmemchr.c b/sysdeps/tile/tilepro/rawmemchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/rawmemchr.c +rename to sysdeps/tile/tilepro/rawmemchr.c +diff --git a/ports/sysdeps/tile/tilepro/strchr.c b/sysdeps/tile/tilepro/strchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/strchr.c +rename to sysdeps/tile/tilepro/strchr.c +diff --git a/ports/sysdeps/tile/tilepro/strchrnul.c b/sysdeps/tile/tilepro/strchrnul.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/strchrnul.c +rename to sysdeps/tile/tilepro/strchrnul.c +diff --git a/ports/sysdeps/tile/tilepro/strlen.c b/sysdeps/tile/tilepro/strlen.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/strlen.c +rename to sysdeps/tile/tilepro/strlen.c +diff --git a/ports/sysdeps/tile/tilepro/strrchr.c b/sysdeps/tile/tilepro/strrchr.c +similarity index 100% +rename from ports/sysdeps/tile/tilepro/strrchr.c +rename to sysdeps/tile/tilepro/strrchr.c +diff --git a/ports/sysdeps/tile/tls-macros.h b/sysdeps/tile/tls-macros.h +similarity index 100% +rename from ports/sysdeps/tile/tls-macros.h +rename to sysdeps/tile/tls-macros.h +diff --git a/ports/sysdeps/tile/tst-audit.h b/sysdeps/tile/tst-audit.h +similarity index 100% +rename from ports/sysdeps/tile/tst-audit.h +rename to sysdeps/tile/tst-audit.h +diff --git a/ports/sysdeps/tile/wordcopy.c b/sysdeps/tile/wordcopy.c +similarity index 100% +rename from ports/sysdeps/tile/wordcopy.c +rename to sysdeps/tile/wordcopy.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/Makefile b/sysdeps/unix/sysv/linux/generic/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/Makefile +rename to sysdeps/unix/sysv/linux/generic/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/generic/____longjmp_chk.c b/sysdeps/unix/sysv/linux/generic/____longjmp_chk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/____longjmp_chk.c +rename to sysdeps/unix/sysv/linux/generic/____longjmp_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/access.c b/sysdeps/unix/sysv/linux/generic/access.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/access.c +rename to sysdeps/unix/sysv/linux/generic/access.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/fcntl.h b/sysdeps/unix/sysv/linux/generic/bits/fcntl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/fcntl.h +rename to sysdeps/unix/sysv/linux/generic/bits/fcntl.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/msq.h b/sysdeps/unix/sysv/linux/generic/bits/msq.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/msq.h +rename to sysdeps/unix/sysv/linux/generic/bits/msq.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/sem.h b/sysdeps/unix/sysv/linux/generic/bits/sem.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/sem.h +rename to sysdeps/unix/sysv/linux/generic/bits/sem.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/shm.h b/sysdeps/unix/sysv/linux/generic/bits/shm.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/shm.h +rename to sysdeps/unix/sysv/linux/generic/bits/shm.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/stat.h b/sysdeps/unix/sysv/linux/generic/bits/stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/stat.h +rename to sysdeps/unix/sysv/linux/generic/bits/stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h b/sysdeps/unix/sysv/linux/generic/bits/statfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h +rename to sysdeps/unix/sysv/linux/generic/bits/statfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/typesizes.h b/sysdeps/unix/sysv/linux/generic/bits/typesizes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/bits/typesizes.h +rename to sysdeps/unix/sysv/linux/generic/bits/typesizes.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/brk.c b/sysdeps/unix/sysv/linux/generic/brk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/brk.c +rename to sysdeps/unix/sysv/linux/generic/brk.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/chmod.c b/sysdeps/unix/sysv/linux/generic/chmod.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/chmod.c +rename to sysdeps/unix/sysv/linux/generic/chmod.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/chown.c b/sysdeps/unix/sysv/linux/generic/chown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/chown.c +rename to sysdeps/unix/sysv/linux/generic/chown.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/creat.c b/sysdeps/unix/sysv/linux/generic/creat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/creat.c +rename to sysdeps/unix/sysv/linux/generic/creat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/dl-origin.c b/sysdeps/unix/sysv/linux/generic/dl-origin.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/dl-origin.c +rename to sysdeps/unix/sysv/linux/generic/dl-origin.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/dup2.c b/sysdeps/unix/sysv/linux/generic/dup2.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/dup2.c +rename to sysdeps/unix/sysv/linux/generic/dup2.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/epoll_create.c b/sysdeps/unix/sysv/linux/generic/epoll_create.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/epoll_create.c +rename to sysdeps/unix/sysv/linux/generic/epoll_create.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/epoll_wait.c b/sysdeps/unix/sysv/linux/generic/epoll_wait.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/epoll_wait.c +rename to sysdeps/unix/sysv/linux/generic/epoll_wait.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/futimesat.c b/sysdeps/unix/sysv/linux/generic/futimesat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/futimesat.c +rename to sysdeps/unix/sysv/linux/generic/futimesat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/getdents.c b/sysdeps/unix/sysv/linux/generic/getdents.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/getdents.c +rename to sysdeps/unix/sysv/linux/generic/getdents.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/getdents64.c b/sysdeps/unix/sysv/linux/generic/getdents64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/getdents64.c +rename to sysdeps/unix/sysv/linux/generic/getdents64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/inotify_init.c b/sysdeps/unix/sysv/linux/generic/inotify_init.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/inotify_init.c +rename to sysdeps/unix/sysv/linux/generic/inotify_init.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/kernel_stat.h b/sysdeps/unix/sysv/linux/generic/kernel_stat.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/kernel_stat.h +rename to sysdeps/unix/sysv/linux/generic/kernel_stat.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/lchown.c b/sysdeps/unix/sysv/linux/generic/lchown.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/lchown.c +rename to sysdeps/unix/sysv/linux/generic/lchown.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/link.c b/sysdeps/unix/sysv/linux/generic/link.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/link.c +rename to sysdeps/unix/sysv/linux/generic/link.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/lxstat.c b/sysdeps/unix/sysv/linux/generic/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/lxstat.c +rename to sysdeps/unix/sysv/linux/generic/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/mkdir.c b/sysdeps/unix/sysv/linux/generic/mkdir.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/mkdir.c +rename to sysdeps/unix/sysv/linux/generic/mkdir.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/not-cancel.h b/sysdeps/unix/sysv/linux/generic/not-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/not-cancel.h +rename to sysdeps/unix/sysv/linux/generic/not-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/nptl/not-cancel.h b/sysdeps/unix/sysv/linux/generic/nptl/not-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/nptl/not-cancel.h +rename to sysdeps/unix/sysv/linux/generic/nptl/not-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/open.c b/sysdeps/unix/sysv/linux/generic/open.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/open.c +rename to sysdeps/unix/sysv/linux/generic/open.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/open64.c b/sysdeps/unix/sysv/linux/generic/open64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/open64.c +rename to sysdeps/unix/sysv/linux/generic/open64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/pause.c b/sysdeps/unix/sysv/linux/generic/pause.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/pause.c +rename to sysdeps/unix/sysv/linux/generic/pause.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/pipe.c b/sysdeps/unix/sysv/linux/generic/pipe.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/pipe.c +rename to sysdeps/unix/sysv/linux/generic/pipe.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/poll.c b/sysdeps/unix/sysv/linux/generic/poll.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/poll.c +rename to sysdeps/unix/sysv/linux/generic/poll.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/readlink.c b/sysdeps/unix/sysv/linux/generic/readlink.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/readlink.c +rename to sysdeps/unix/sysv/linux/generic/readlink.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/readlink_chk.c b/sysdeps/unix/sysv/linux/generic/readlink_chk.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/readlink_chk.c +rename to sysdeps/unix/sysv/linux/generic/readlink_chk.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/recv.c b/sysdeps/unix/sysv/linux/generic/recv.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/recv.c +rename to sysdeps/unix/sysv/linux/generic/recv.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/rename.c b/sysdeps/unix/sysv/linux/generic/rename.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/rename.c +rename to sysdeps/unix/sysv/linux/generic/rename.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/rmdir.c b/sysdeps/unix/sysv/linux/generic/rmdir.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/rmdir.c +rename to sysdeps/unix/sysv/linux/generic/rmdir.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/select.c b/sysdeps/unix/sysv/linux/generic/select.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/select.c +rename to sysdeps/unix/sysv/linux/generic/select.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/send.c b/sysdeps/unix/sysv/linux/generic/send.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/send.c +rename to sysdeps/unix/sysv/linux/generic/send.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/symlink.c b/sysdeps/unix/sysv/linux/generic/symlink.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/symlink.c +rename to sysdeps/unix/sysv/linux/generic/symlink.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/syscalls.list b/sysdeps/unix/sysv/linux/generic/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/syscalls.list +rename to sysdeps/unix/sysv/linux/generic/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/generic/sysctl.c b/sysdeps/unix/sysv/linux/generic/sysctl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/sysctl.c +rename to sysdeps/unix/sysv/linux/generic/sysctl.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/sysdep.h b/sysdeps/unix/sysv/linux/generic/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/sysdep.h +rename to sysdeps/unix/sysv/linux/generic/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/umount.c b/sysdeps/unix/sysv/linux/generic/umount.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/umount.c +rename to sysdeps/unix/sysv/linux/generic/umount.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/unlink.c b/sysdeps/unix/sysv/linux/generic/unlink.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/unlink.c +rename to sysdeps/unix/sysv/linux/generic/unlink.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/ustat.c b/sysdeps/unix/sysv/linux/generic/ustat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/ustat.c +rename to sysdeps/unix/sysv/linux/generic/ustat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/utimes.c b/sysdeps/unix/sysv/linux/generic/utimes.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/utimes.c +rename to sysdeps/unix/sysv/linux/generic/utimes.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/Versions b/sysdeps/unix/sysv/linux/generic/wordsize-32/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/Versions +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fstatfs.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/fstatfs.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fstatfs.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/fstatfs.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h b/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/sendfile.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/sendfile.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/sendfile.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/sendfile.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/statfs.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/statfs.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/statfs.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/statfs.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list b/sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c +rename to sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/xmknod.c b/sysdeps/unix/sysv/linux/generic/xmknod.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/xmknod.c +rename to sysdeps/unix/sysv/linux/generic/xmknod.c +diff --git a/ports/sysdeps/unix/sysv/linux/generic/xstat.c b/sysdeps/unix/sysv/linux/generic/xstat.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/generic/xstat.c +rename to sysdeps/unix/sysv/linux/generic/xstat.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/Makefile b/sysdeps/unix/sysv/linux/tile/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/Makefile +rename to sysdeps/unix/sysv/linux/tile/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/tile/Versions b/sysdeps/unix/sysv/linux/tile/Versions +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/Versions +rename to sysdeps/unix/sysv/linux/tile/Versions +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/environments.h b/sysdeps/unix/sysv/linux/tile/bits/environments.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/environments.h +rename to sysdeps/unix/sysv/linux/tile/bits/environments.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h b/sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h +rename to sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/local_lim.h b/sysdeps/unix/sysv/linux/tile/bits/local_lim.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/local_lim.h +rename to sysdeps/unix/sysv/linux/tile/bits/local_lim.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/mman.h b/sysdeps/unix/sysv/linux/tile/bits/mman.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/mman.h +rename to sysdeps/unix/sysv/linux/tile/bits/mman.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/sigaction.h b/sysdeps/unix/sysv/linux/tile/bits/sigaction.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/sigaction.h +rename to sysdeps/unix/sysv/linux/tile/bits/sigaction.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h b/sysdeps/unix/sysv/linux/tile/bits/siginfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h +rename to sysdeps/unix/sysv/linux/tile/bits/siginfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/cacheflush.c b/sysdeps/unix/sysv/linux/tile/cacheflush.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/cacheflush.c +rename to sysdeps/unix/sysv/linux/tile/cacheflush.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/configure b/sysdeps/unix/sysv/linux/tile/configure +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/configure +rename to sysdeps/unix/sysv/linux/tile/configure +diff --git a/ports/sysdeps/unix/sysv/linux/tile/configure.in b/sysdeps/unix/sysv/linux/tile/configure.in +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/configure.in +rename to sysdeps/unix/sysv/linux/tile/configure.in +diff --git a/ports/sysdeps/unix/sysv/linux/tile/getcontext.S b/sysdeps/unix/sysv/linux/tile/getcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/getcontext.S +rename to sysdeps/unix/sysv/linux/tile/getcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/gettimeofday.c b/sysdeps/unix/sysv/linux/tile/gettimeofday.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/gettimeofday.c +rename to sysdeps/unix/sysv/linux/tile/gettimeofday.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/init-first.c b/sysdeps/unix/sysv/linux/tile/init-first.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/init-first.c +rename to sysdeps/unix/sysv/linux/tile/init-first.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/kernel-features.h b/sysdeps/unix/sysv/linux/tile/kernel-features.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/kernel-features.h +rename to sysdeps/unix/sysv/linux/tile/kernel-features.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/makecontext.c b/sysdeps/unix/sysv/linux/tile/makecontext.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/makecontext.c +rename to sysdeps/unix/sysv/linux/tile/makecontext.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/Makefile b/sysdeps/unix/sysv/linux/tile/nptl/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/Makefile +rename to sysdeps/unix/sysv/linux/tile/nptl/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h +rename to sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/bits/semaphore.h b/sysdeps/unix/sysv/linux/tile/nptl/bits/semaphore.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/bits/semaphore.h +rename to sysdeps/unix/sysv/linux/tile/nptl/bits/semaphore.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/clone.S b/sysdeps/unix/sysv/linux/tile/nptl/clone.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/clone.S +rename to sysdeps/unix/sysv/linux/tile/nptl/clone.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/createthread.c b/sysdeps/unix/sysv/linux/tile/nptl/createthread.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/createthread.c +rename to sysdeps/unix/sysv/linux/tile/nptl/createthread.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/fork.c b/sysdeps/unix/sysv/linux/tile/nptl/fork.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/fork.c +rename to sysdeps/unix/sysv/linux/tile/nptl/fork.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h +rename to sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/tile/nptl/pt-vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/pt-vfork.S +rename to sysdeps/unix/sysv/linux/tile/nptl/pt-vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c b/sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c +rename to sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/tile/nptl/sysdep-cancel.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/sysdep-cancel.h +rename to sysdeps/unix/sysv/linux/tile/nptl/sysdep-cancel.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/vfork.S b/sysdeps/unix/sysv/linux/tile/nptl/vfork.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/vfork.S +rename to sysdeps/unix/sysv/linux/tile/nptl/vfork.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/nptl/waitpid.S b/sysdeps/unix/sysv/linux/tile/nptl/waitpid.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/nptl/waitpid.S +rename to sysdeps/unix/sysv/linux/tile/nptl/waitpid.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/profil-counter.h b/sysdeps/unix/sysv/linux/tile/profil-counter.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/profil-counter.h +rename to sysdeps/unix/sysv/linux/tile/profil-counter.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/set_dataplane.c b/sysdeps/unix/sysv/linux/tile/set_dataplane.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/set_dataplane.c +rename to sysdeps/unix/sysv/linux/tile/set_dataplane.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/setcontext.S b/sysdeps/unix/sysv/linux/tile/setcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/setcontext.S +rename to sysdeps/unix/sysv/linux/tile/setcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sigcontextinfo.h b/sysdeps/unix/sysv/linux/tile/sigcontextinfo.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sigcontextinfo.h +rename to sysdeps/unix/sysv/linux/tile/sigcontextinfo.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/swapcontext.S b/sysdeps/unix/sysv/linux/tile/swapcontext.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/swapcontext.S +rename to sysdeps/unix/sysv/linux/tile/swapcontext.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/cachectl.h b/sysdeps/unix/sysv/linux/tile/sys/cachectl.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/cachectl.h +rename to sysdeps/unix/sysv/linux/tile/sys/cachectl.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/dataplane.h b/sysdeps/unix/sysv/linux/tile/sys/dataplane.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/dataplane.h +rename to sysdeps/unix/sysv/linux/tile/sys/dataplane.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/procfs.h b/sysdeps/unix/sysv/linux/tile/sys/procfs.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/procfs.h +rename to sysdeps/unix/sysv/linux/tile/sys/procfs.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h b/sysdeps/unix/sysv/linux/tile/sys/ptrace.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h +rename to sysdeps/unix/sysv/linux/tile/sys/ptrace.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/reg.h b/sysdeps/unix/sysv/linux/tile/sys/reg.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/reg.h +rename to sysdeps/unix/sysv/linux/tile/sys/reg.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/ucontext.h b/sysdeps/unix/sysv/linux/tile/sys/ucontext.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/ucontext.h +rename to sysdeps/unix/sysv/linux/tile/sys/ucontext.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sys/user.h b/sysdeps/unix/sysv/linux/tile/sys/user.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sys/user.h +rename to sysdeps/unix/sysv/linux/tile/sys/user.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/syscall.S b/sysdeps/unix/sysv/linux/tile/syscall.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/syscall.S +rename to sysdeps/unix/sysv/linux/tile/syscall.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sysdep.c b/sysdeps/unix/sysv/linux/tile/sysdep.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sysdep.c +rename to sysdeps/unix/sysv/linux/tile/sysdep.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/sysdep.h b/sysdeps/unix/sysv/linux/tile/sysdep.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/sysdep.h +rename to sysdeps/unix/sysv/linux/tile/sysdep.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/Makefile +rename to sysdeps/unix/sysv/linux/tile/tilegx/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S b/sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S +rename to sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h b/sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h +rename to sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h b/sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h +rename to sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c b/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c +rename to sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/c++-types.data b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/ld.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/librt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/c++-types.data b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/ld.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/librt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/Implies b/sysdeps/unix/sysv/linux/tile/tilepro/Implies +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/Implies +rename to sysdeps/unix/sysv/linux/tile/tilepro/Implies +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h b/sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h +rename to sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/c++-types.data b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/c++-types.data +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/c++-types.data +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/c++-types.data +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/ld.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/ld.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/ld.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/ld.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libBrokenLocale.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libBrokenLocale.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libBrokenLocale.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libanl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libanl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libanl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libcrypt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libcrypt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libcrypt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libdl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libdl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libdl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libnsl.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libnsl.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libnsl.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libresolv.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libresolv.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libresolv.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/librt.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/librt.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/librt.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/librt.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libthread_db.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libthread_db.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libthread_db.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libutil.abilist +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libutil.abilist +rename to sysdeps/unix/sysv/linux/tile/tilepro/nptl/libutil.abilist +diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h b/sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h +rename to sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h +diff --git a/ports/sysdeps/unix/sysv/linux/tile/ucontext_i.h b/sysdeps/unix/sysv/linux/tile/ucontext_i.h +similarity index 100% +rename from ports/sysdeps/unix/sysv/linux/tile/ucontext_i.h +rename to sysdeps/unix/sysv/linux/tile/ucontext_i.h diff --git a/SOURCES/glibc-rh1505492-powerpc-sotruss.patch b/SOURCES/glibc-rh1505492-powerpc-sotruss.patch new file mode 100644 index 0000000..6286ae5 --- /dev/null +++ b/SOURCES/glibc-rh1505492-powerpc-sotruss.patch @@ -0,0 +1,83 @@ +commit 2393fc0119fa291ff01b7b912dda2069257c8600 +Author: Adhemerval Zanella +Date: Wed Jan 15 11:05:00 2014 -0600 + + PowerPC: sotruss-lib implementation + + This patch add the missing sotruss-lib interfaces for PowerPC. + +diff --git a/sysdeps/powerpc/sotruss-lib.c b/sysdeps/powerpc/sotruss-lib.c +new file mode 100644 +index 0000000000000000..2e52053ed1a9fa4a +--- /dev/null ++++ b/sysdeps/powerpc/sotruss-lib.c +@@ -0,0 +1,69 @@ ++/* PowerPC specific sotruss-lib functions. ++ Copyright (C) 2013 Free Software Foundation, Inc. ++ ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library. If not, see ++ . */ ++ ++#define HAVE_ARCH_PLTENTER ++#define HAVE_ARCH_PLTEXIT ++ ++#include ++ ++#ifdef __powerpc64__ ++# if _CALL_ELF != 2 ++# define LA_PPC_REGS La_ppc64_regs ++# define LA_PPC_RETVAL La_ppc64_retval ++# define LA_PPC_GNU_PLTENTER la_ppc64_gnu_pltenter ++# define LA_PPC_GNU_PLTEXIT la_ppc64_gnu_pltexit ++# else ++# define LA_PPC_REGS La_ppc64v2_regs ++# define LA_PPC_RETVAL La_ppc64v2_retval ++# define LA_PPC_GNU_PLTENTER la_ppc64v2_gnu_pltenter ++# define LA_PPC_GNU_PLTEXIT la_ppc64v2_gnu_pltexit ++# endif ++# else ++# define LA_PPC_REGS La_ppc32_regs ++# define LA_PPC_RETVAL La_ppc32_retval ++# define LA_PPC_GNU_PLTENTER la_ppc32_gnu_pltenter ++# define LA_PPC_GNU_PLTEXIT la_ppc32_gnu_pltexit ++#endif ++ ++ElfW(Addr) ++LA_PPC_GNU_PLTENTER (ElfW(Sym) *sym __attribute__ ((unused)), ++ unsigned int ndx __attribute__ ((unused)), ++ uintptr_t *refcook, uintptr_t *defcook, ++ LA_PPC_REGS *regs, unsigned int *flags, ++ const char *symname, long int *framesizep) ++{ ++ print_enter (refcook, defcook, symname, ++ regs->lr_reg[0], regs->lr_reg[1], regs->lr_reg[2], *flags); ++ ++ /* No need to copy anything, we will not need the parameters in any case. */ ++ *framesizep = 0; ++ ++ return sym->st_value; ++} ++ ++unsigned int ++LA_PPC_GNU_PLTEXIT (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, ++ uintptr_t *defcook, ++ const struct LA_PPC_REGS *inregs, ++ struct LA_PPC_RETVAL *outregs, const char *symname) ++{ ++ print_exit (refcook, defcook, symname, outregs->lrv_r3); ++ ++ return 0; ++} diff --git a/SOURCES/glibc-rh1505492-prototypes-1.patch b/SOURCES/glibc-rh1505492-prototypes-1.patch new file mode 100644 index 0000000..43d6575 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-1.patch @@ -0,0 +1,54 @@ +commit c93c5dec54a64563ce85b511053bd22161085d77 +Author: Andi Kleen +Date: Fri Dec 28 21:25:07 2012 +0100 + + Convert pthread_rwlock_try(rd/wr)lock to prototypes + + 2012-12-28 Andi Kleen + + * pthread_rwlock_tryrdlock.c (__pthread_rwlock_tryrdlock): + * Convert + to prototype. + * pthread_rwlock_trywrlock.c (__pthread_rwlock_trywrlock): + Likewise. + +diff --git a/nptl/pthread_rwlock_tryrdlock.c b/nptl/pthread_rwlock_tryrdlock.c +index beaa970acfc6c0a3..1a492364154f6828 100644 +--- a/nptl/pthread_rwlock_tryrdlock.c ++++ b/nptl/pthread_rwlock_tryrdlock.c +@@ -1,4 +1,4 @@ +-/* Copyright (C) 2002, 2007 Free Software Foundation, Inc. ++/* Copyright (C) 2002-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper , 2002. + +@@ -22,8 +22,7 @@ + + + int +-__pthread_rwlock_tryrdlock (rwlock) +- pthread_rwlock_t *rwlock; ++__pthread_rwlock_tryrdlock (pthread_rwlock_t *rwlock) + { + int result = EBUSY; + +diff --git a/nptl/pthread_rwlock_trywrlock.c b/nptl/pthread_rwlock_trywrlock.c +index 92750b83a209c959..920cf366fa73e4ce 100644 +--- a/nptl/pthread_rwlock_trywrlock.c ++++ b/nptl/pthread_rwlock_trywrlock.c +@@ -1,4 +1,4 @@ +-/* Copyright (C) 2002, 2003, 2007 Free Software Foundation, Inc. ++/* Copyright (C) 2002-2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper , 2002. + +@@ -22,8 +22,7 @@ + + + int +-__pthread_rwlock_trywrlock (rwlock) +- pthread_rwlock_t *rwlock; ++__pthread_rwlock_trywrlock (pthread_rwlock_t *rwlock) + { + int result = EBUSY; + diff --git a/SOURCES/glibc-rh1505492-prototypes-10.patch b/SOURCES/glibc-rh1505492-prototypes-10.patch new file mode 100644 index 0000000..80e7b60 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-10.patch @@ -0,0 +1,777 @@ +commit 14bb4e57c094849228ad8524693ab9432c38396c +Author: Adhemerval Zanella +Date: Tue Jan 6 08:22:41 2015 -0800 + + Function declaration cleanup + + This patch changes the some function declaration from K&R style to + default ANSI C. + + * nptl/pthread_cancel.c (pthread_cancel): Use ANSI prototype. + * nptl/pthread_cond_timedwait.c (__pthread_cond_timedwait): Likewise. + * nptl/pthread_cond_wait.c (__pthread_cond_wait): Likewise. + * nptl/pthread_exit.c (__pthread_exit): Likewise. + * nptl/pthread_join.c (pthread_join): Likewise. + * nptl/pthread_timedjoin.c (pthread_timedjoin_np): Likewise. + * sysdeps/posix/waitid.c (__waitid): Likewise. + * sysdeps/unix/sysv/linux/arm/pread.c (__libc_pread): Likewise. + * sysdeps/unix/sysv/linux/arm/pread64.c (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/arm/pwrite.c (__libc_pwrite): Likewise. + * sysdeps/unix/sysv/linux/arm/pwrite64.c (__libc_pwrite64): Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c (__libc_pread): + Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c + (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c + (__libc_pwrite): Likewise. + * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c + (__libc_pwrite64): Likewsie. + * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise. + * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise. + * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise. + * sysdeps/unix/sysv/linux/msgrcv.c (__libc_msgrcv): Likewise. + * sysdeps/unix/sysv/linux/msgsnd.c (__libc_msgsnd): Likewise. + * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c (__libc_pread): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c + (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c (__libc_pwrite): + Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c + (__libc_pwrite64): Likewise. + * sysdeps/unix/sysv/linux/pread.c (__libc_pread): Likewise. + * sysdeps/unix/sysv/linux/pread64.c (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/preadv.c (PREADV): Likewise. + * sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill): Likewise. + * sysdeps/unix/sysv/linux/pwrite.c (__libc_pwrite): Likewise. + * sysdeps/unix/sysv/linux/pwrite64.c (__libc_pwrite64): Likewise. + * sysdeps/unix/sysv/linux/pwritev.c (__libc_pwritev): Likewise. + * sysdeps/unix/sysv/linux/sh/pread.c (__libc_pread): Likewise. + * sysdeps/unix/sysv/linux/sh/pread64.c (__libc_pread64): Likewise. + * sysdeps/unix/sysv/linux/sh/pwrite.c (__libc_pwrite): Likewise. + * sysdeps/unix/sysv/linux/sh/pwrite64.c (__libc_write64): Likewise. + * sysdeps/unix/sysv/linux/sigsuspend.c (__sigsuspend): Likewise. + * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Likewise. + * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise. + * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c (__libc_msgrcv): + Likewise. + +Conflicts: + sysdeps/unix/sysv/linux/pthread_kill.c + +Change applied to nptl/sysdeps/unix/sysv/linux/pthread_kill.c instead. + +diff --git a/nptl/pthread_cancel.c b/nptl/pthread_cancel.c +index cf6e48b4144f504f..75b3821862bdc8b0 100644 +--- a/nptl/pthread_cancel.c ++++ b/nptl/pthread_cancel.c +@@ -25,8 +25,7 @@ + + + int +-pthread_cancel (th) +- pthread_t th; ++pthread_cancel (pthread_t th) + { + volatile struct pthread *pd = (volatile struct pthread *) th; + +diff --git a/nptl/pthread_cond_timedwait.c b/nptl/pthread_cond_timedwait.c +index ef33b966b82b702f..c1468169fec665b9 100644 +--- a/nptl/pthread_cond_timedwait.c ++++ b/nptl/pthread_cond_timedwait.c +@@ -48,10 +48,8 @@ struct _condvar_cleanup_buffer + }; + + int +-__pthread_cond_timedwait (cond, mutex, abstime) +- pthread_cond_t *cond; +- pthread_mutex_t *mutex; +- const struct timespec *abstime; ++__pthread_cond_timedwait (pthread_cond_t *cond, pthread_mutex_t *mutex, ++ const struct timespec *abstime) + { + struct _pthread_cleanup_buffer buffer; + struct _condvar_cleanup_buffer cbuffer; +diff --git a/nptl/pthread_cond_wait.c b/nptl/pthread_cond_wait.c +index 35505d9a191879e4..3bcfb6c0ee476e70 100644 +--- a/nptl/pthread_cond_wait.c ++++ b/nptl/pthread_cond_wait.c +@@ -91,9 +91,7 @@ __condvar_cleanup (void *arg) + + + int +-__pthread_cond_wait (cond, mutex) +- pthread_cond_t *cond; +- pthread_mutex_t *mutex; ++__pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex) + { + struct _pthread_cleanup_buffer buffer; + struct _condvar_cleanup_buffer cbuffer; +diff --git a/nptl/pthread_exit.c b/nptl/pthread_exit.c +index 2d1037b5c4f2b386..7fa58cf50daba368 100644 +--- a/nptl/pthread_exit.c ++++ b/nptl/pthread_exit.c +@@ -21,8 +21,7 @@ + + + void +-__pthread_exit (value) +- void *value; ++__pthread_exit (void *value) + { + THREAD_SETMEM (THREAD_SELF, result, value); + +diff --git a/nptl/pthread_join.c b/nptl/pthread_join.c +index bf1a01dbc93235de..431cd3a40b4c2c7e 100644 +--- a/nptl/pthread_join.c ++++ b/nptl/pthread_join.c +@@ -37,9 +37,7 @@ cleanup (void *arg) + + + int +-pthread_join (threadid, thread_return) +- pthread_t threadid; +- void **thread_return; ++pthread_join (pthread_t threadid, void **thread_return) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/pthread_timedjoin.c b/nptl/pthread_timedjoin.c +index 754f5d2538eb37b0..2dae7338afb1c88d 100644 +--- a/nptl/pthread_timedjoin.c ++++ b/nptl/pthread_timedjoin.c +@@ -30,10 +30,8 @@ cleanup (void *arg) + + + int +-pthread_timedjoin_np (threadid, thread_return, abstime) +- pthread_t threadid; +- void **thread_return; +- const struct timespec *abstime; ++pthread_timedjoin_np (pthread_t threadid, void **thread_return, ++ const struct timespec *abstime) + { + struct pthread *self; + struct pthread *pd = (struct pthread *) threadid; +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_kill.c b/nptl/sysdeps/unix/sysv/linux/pthread_kill.c +index 6804bf283f6635d8..20a9635b635bde9b 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_kill.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_kill.c +@@ -25,9 +25,7 @@ + + + int +-__pthread_kill (threadid, signo) +- pthread_t threadid; +- int signo; ++__pthread_kill (pthread_t threadid, int signo) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/sysdeps/posix/waitid.c b/sysdeps/posix/waitid.c +index 69e71aca3189e37b..06542f775e1e2bee 100644 +--- a/sysdeps/posix/waitid.c ++++ b/sysdeps/posix/waitid.c +@@ -149,11 +149,7 @@ OUR_WAITID (idtype_t idtype, id_t id, siginfo_t *infop, int options) + + + int +-__waitid (idtype, id, infop, options) +- idtype_t idtype; +- id_t id; +- siginfo_t *infop; +- int options; ++__waitid (idtype_t idtype, id_t id, siginfo_t *infop, int options) + { + if (SINGLE_THREAD_P) + return do_waitid (idtype, id, infop, options); +diff --git a/sysdeps/unix/sysv/linux/arm/pread.c b/sysdeps/unix/sysv/linux/arm/pread.c +index ed7be7394307892c..545cb5e2637cbe28 100644 +--- a/sysdeps/unix/sysv/linux/arm/pread.c ++++ b/sysdeps/unix/sysv/linux/arm/pread.c +@@ -25,11 +25,7 @@ + #include + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/arm/pread64.c b/sysdeps/unix/sysv/linux/arm/pread64.c +index a3e8dfccb7446d76..41424d218d4a0cdc 100644 +--- a/sysdeps/unix/sysv/linux/arm/pread64.c ++++ b/sysdeps/unix/sysv/linux/arm/pread64.c +@@ -25,11 +25,7 @@ + #include + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/arm/pwrite.c b/sysdeps/unix/sysv/linux/arm/pwrite.c +index a102f307926c2873..1ce8beaf9ebf2924 100644 +--- a/sysdeps/unix/sysv/linux/arm/pwrite.c ++++ b/sysdeps/unix/sysv/linux/arm/pwrite.c +@@ -25,11 +25,7 @@ + #include + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/arm/pwrite64.c b/sysdeps/unix/sysv/linux/arm/pwrite64.c +index 19b15f6bd7cb2e0d..c5dbc71102b5a660 100644 +--- a/sysdeps/unix/sysv/linux/arm/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/arm/pwrite64.c +@@ -25,11 +25,7 @@ + #include + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c +index 5145755e807ad59b..a5d7979302c0a765 100644 +--- a/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c ++++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c +@@ -37,11 +37,7 @@ do_pread (int fd, void *buf, size_t count, off_t offset) + } + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + if (SINGLE_THREAD_P) + return do_pread (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c +index fd3aa1f2804337fd..eb04712a86dcb4ed 100644 +--- a/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c ++++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c +@@ -37,11 +37,7 @@ do_pread64 (int fd, void *buf, size_t count, off64_t offset) + + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + if (SINGLE_THREAD_P) + return do_pread64 (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c +index 0f226ff79abe2477..6b21bdcd81fe239d 100644 +--- a/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c ++++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c +@@ -38,11 +38,7 @@ do_pwrite (int fd, const void *buf, size_t count, off_t offset) + + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + if (SINGLE_THREAD_P) + return do_pwrite (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c +index 1afc13d24579a9f8..26ce2d5da471c019 100644 +--- a/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c +@@ -37,11 +37,7 @@ do_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + if (SINGLE_THREAD_P) + return do_pwrite64 (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/mips/pread.c b/sysdeps/unix/sysv/linux/mips/pread.c +index f24e500c10efae99..fd739d1d176c13f2 100644 +--- a/sysdeps/unix/sysv/linux/mips/pread.c ++++ b/sysdeps/unix/sysv/linux/mips/pread.c +@@ -38,11 +38,7 @@ + + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset): + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/mips/pread64.c b/sysdeps/unix/sysv/linux/mips/pread64.c +index d5172a039d7fd269..77340c5ad9469ce9 100644 +--- a/sysdeps/unix/sysv/linux/mips/pread64.c ++++ b/sysdeps/unix/sysv/linux/mips/pread64.c +@@ -37,11 +37,7 @@ + + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/mips/pwrite.c b/sysdeps/unix/sysv/linux/mips/pwrite.c +index caa69cbb4f7e3e77..fe278a31f4f26132 100644 +--- a/sysdeps/unix/sysv/linux/mips/pwrite.c ++++ b/sysdeps/unix/sysv/linux/mips/pwrite.c +@@ -38,11 +38,7 @@ + + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/mips/pwrite64.c b/sysdeps/unix/sysv/linux/mips/pwrite64.c +index d8ae27a9abf5c606..4bc03e76d1869e66 100644 +--- a/sysdeps/unix/sysv/linux/mips/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/mips/pwrite64.c +@@ -37,11 +37,7 @@ + + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/msgrcv.c b/sysdeps/unix/sysv/linux/msgrcv.c +index a3085abda24d4512..f5575ebebee3eed8 100644 +--- a/sysdeps/unix/sysv/linux/msgrcv.c ++++ b/sysdeps/unix/sysv/linux/msgrcv.c +@@ -33,12 +33,8 @@ struct ipc_kludge + + + ssize_t +-__libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) +- int msqid; +- void *msgp; +- size_t msgsz; +- long int msgtyp; +- int msgflg; ++__libc_msgrcv (int msqid, void *msgp, size_t msgsz, long int msgtyp, ++ int msgflg) + { + /* The problem here is that Linux' calling convention only allows up to + fives parameters to a system call. */ +diff --git a/sysdeps/unix/sysv/linux/msgsnd.c b/sysdeps/unix/sysv/linux/msgsnd.c +index 2883cad8aa370c6c..e9657785942aec4d 100644 +--- a/sysdeps/unix/sysv/linux/msgsnd.c ++++ b/sysdeps/unix/sysv/linux/msgsnd.c +@@ -24,11 +24,7 @@ + #include + + int +-__libc_msgsnd (msqid, msgp, msgsz, msgflg) +- int msqid; +- const void *msgp; +- size_t msgsz; +- int msgflg; ++__libc_msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg) + { + if (SINGLE_THREAD_P) + return INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz, +diff --git a/sysdeps/unix/sysv/linux/openat.c b/sysdeps/unix/sysv/linux/openat.c +index 233266d4e748152d..14f81c5048bbe62a 100644 +--- a/sysdeps/unix/sysv/linux/openat.c ++++ b/sysdeps/unix/sysv/linux/openat.c +@@ -71,11 +71,7 @@ int __have_atfcts; + + + int +-OPENAT_NOT_CANCEL (fd, file, oflag, mode) +- int fd; +- const char *file; +- int oflag; +- mode_t mode; ++OPENAT_NOT_CANCEL (int fd, const char *file, int oflag, mode_t mode) + { + + /* We have to add the O_LARGEFILE flag for openat64. */ +@@ -151,10 +147,7 @@ OPENAT_NOT_CANCEL (fd, file, oflag, mode) + the directory associated with FD. If OFLAG includes O_CREAT or + O_TMPFILE, a fourth argument is the file protection. */ + int +-__OPENAT (fd, file, oflag) +- int fd; +- const char *file; +- int oflag; ++__OPENAT (int fd, const char *file, int oflag, ...) + { + mode_t mode = 0; + if (__OPEN_NEEDS_MODE (oflag)) +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c +index 9a9d0d456e5db1c0..bf31ed83a06abb5e 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c +@@ -26,11 +26,7 @@ + #include + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c +index 1435b293b143159b..b7800fcc459f1db4 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c +@@ -26,11 +26,7 @@ + + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c +index d3a551c5a97550ca..ef0ea532e12bf868 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c +@@ -27,11 +27,7 @@ + + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c +index d89a1759d1903eba..412357d704696487 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c +@@ -26,11 +26,7 @@ + + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/pread.c b/sysdeps/unix/sysv/linux/pread.c +index 7322e42d6ed990c1..2d6a8a64c69fc967 100644 +--- a/sysdeps/unix/sysv/linux/pread.c ++++ b/sysdeps/unix/sysv/linux/pread.c +@@ -51,11 +51,7 @@ do_pread (int fd, void *buf, size_t count, off_t offset) + + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + if (SINGLE_THREAD_P) + return do_pread (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/pread64.c b/sysdeps/unix/sysv/linux/pread64.c +index 03e5f1402bf8b888..8006a1765113234c 100644 +--- a/sysdeps/unix/sysv/linux/pread64.c ++++ b/sysdeps/unix/sysv/linux/pread64.c +@@ -47,11 +47,7 @@ do_pread64 (int fd, void *buf, size_t count, off64_t offset) + + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + if (SINGLE_THREAD_P) + return do_pread64 (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/preadv.c b/sysdeps/unix/sysv/linux/preadv.c +index a189680773a0765c..fedc9b6518629410 100644 +--- a/sysdeps/unix/sysv/linux/preadv.c ++++ b/sysdeps/unix/sysv/linux/preadv.c +@@ -47,11 +47,7 @@ static ssize_t PREADV_REPLACEMENT (int, const struct iovec *, + + + ssize_t +-PREADV (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- OFF_T offset; ++PREADV (int fd, const struct iovec *vector, int count, OFF_T offset) + { + #ifdef __NR_preadv + ssize_t result; +diff --git a/sysdeps/unix/sysv/linux/pwrite.c b/sysdeps/unix/sysv/linux/pwrite.c +index e773d65f2e5602a8..ea9cde3151b80a52 100644 +--- a/sysdeps/unix/sysv/linux/pwrite.c ++++ b/sysdeps/unix/sysv/linux/pwrite.c +@@ -51,11 +51,7 @@ do_pwrite (int fd, const void *buf, size_t count, off_t offset) + + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + if (SINGLE_THREAD_P) + return do_pwrite (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/pwrite64.c b/sysdeps/unix/sysv/linux/pwrite64.c +index 558a08e735616649..ab08948ad6977844 100644 +--- a/sysdeps/unix/sysv/linux/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/pwrite64.c +@@ -47,11 +47,7 @@ do_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + if (SINGLE_THREAD_P) + return do_pwrite64 (fd, buf, count, offset); +diff --git a/sysdeps/unix/sysv/linux/pwritev.c b/sysdeps/unix/sysv/linux/pwritev.c +index cfb4491ac7d65f22..22af4518b9ee9e18 100644 +--- a/sysdeps/unix/sysv/linux/pwritev.c ++++ b/sysdeps/unix/sysv/linux/pwritev.c +@@ -47,11 +47,7 @@ static ssize_t PWRITEV_REPLACEMENT (int, const struct iovec *, + + + ssize_t +-PWRITEV (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- OFF_T offset; ++PWRITEV (int fd, const struct iovec *vector, int count, OFF_T offset) + { + #ifdef __NR_pwritev + ssize_t result; +diff --git a/sysdeps/unix/sysv/linux/sh/pread.c b/sysdeps/unix/sysv/linux/sh/pread.c +index 160c906a4d0197fd..e67c1b6d27b089d8 100644 +--- a/sysdeps/unix/sysv/linux/sh/pread.c ++++ b/sysdeps/unix/sysv/linux/sh/pread.c +@@ -35,11 +35,7 @@ + + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/sh/pread64.c b/sysdeps/unix/sysv/linux/sh/pread64.c +index bb4f13d06b72fdf1..32a08c6f992eb054 100644 +--- a/sysdeps/unix/sysv/linux/sh/pread64.c ++++ b/sysdeps/unix/sysv/linux/sh/pread64.c +@@ -34,11 +34,7 @@ + + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/sh/pwrite.c b/sysdeps/unix/sysv/linux/sh/pwrite.c +index b17bd87a5d4f74cc..1db96ffc67df623f 100644 +--- a/sysdeps/unix/sysv/linux/sh/pwrite.c ++++ b/sysdeps/unix/sysv/linux/sh/pwrite.c +@@ -35,11 +35,7 @@ + + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/sh/pwrite64.c b/sysdeps/unix/sysv/linux/sh/pwrite64.c +index d9f41ec34cf01fb4..e6e7de32046a7954 100644 +--- a/sysdeps/unix/sysv/linux/sh/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/sh/pwrite64.c +@@ -34,11 +34,7 @@ + + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/sigsuspend.c b/sysdeps/unix/sysv/linux/sigsuspend.c +index c673cf2b65cfe7ea..1cd1de88d303fd66 100644 +--- a/sysdeps/unix/sysv/linux/sigsuspend.c ++++ b/sysdeps/unix/sysv/linux/sigsuspend.c +@@ -34,8 +34,7 @@ do_sigsuspend (const sigset_t *set) + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-__sigsuspend (set) +- const sigset_t *set; ++__sigsuspend (const sigset_t *set) + { + if (SINGLE_THREAD_P) + return do_sigsuspend (set); +diff --git a/sysdeps/unix/sysv/linux/sigtimedwait.c b/sysdeps/unix/sysv/linux/sigtimedwait.c +index 1cf24d0e47330b8a..30ad3023b24e7c47 100644 +--- a/sysdeps/unix/sysv/linux/sigtimedwait.c ++++ b/sysdeps/unix/sysv/linux/sigtimedwait.c +@@ -66,10 +66,8 @@ do_sigtimedwait (const sigset_t *set, siginfo_t *info, + + /* Return any pending signal or wait for one for the given time. */ + int +-__sigtimedwait (set, info, timeout) +- const sigset_t *set; +- siginfo_t *info; +- const struct timespec *timeout; ++__sigtimedwait (const sigset_t *set, siginfo_t *info, ++ const struct timespec *timeout) + { + if (SINGLE_THREAD_P) + return do_sigtimedwait (set, info, timeout); +diff --git a/sysdeps/unix/sysv/linux/sigwait.c b/sysdeps/unix/sysv/linux/sigwait.c +index 5e7d8ca8c8a62f19..2e4b34f474720742 100644 +--- a/sysdeps/unix/sysv/linux/sigwait.c ++++ b/sysdeps/unix/sysv/linux/sigwait.c +@@ -85,9 +85,7 @@ do_sigwait (const sigset_t *set, int *sig) + } + + int +-__sigwait (set, sig) +- const sigset_t *set; +- int *sig; ++__sigwait (const sigset_t *set, int *sig) + { + if (SINGLE_THREAD_P) + return do_sigwait (set, sig); +diff --git a/sysdeps/unix/sysv/linux/sigwaitinfo.c b/sysdeps/unix/sysv/linux/sigwaitinfo.c +index 0e38dff1be6cc21a..ba3408aab15ade61 100644 +--- a/sysdeps/unix/sysv/linux/sigwaitinfo.c ++++ b/sysdeps/unix/sysv/linux/sigwaitinfo.c +@@ -67,9 +67,7 @@ do_sigwaitinfo (const sigset_t *set, siginfo_t *info) + + /* Return any pending signal or wait for one for the given time. */ + int +-__sigwaitinfo (set, info) +- const sigset_t *set; +- siginfo_t *info; ++__sigwaitinfo (const sigset_t *set, siginfo_t *info) + { + if (SINGLE_THREAD_P) + return do_sigwaitinfo (set, info); +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c b/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c +index 3684a01142f68323..d62ce29e05122763 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c +@@ -23,12 +23,8 @@ + #include + + ssize_t +-__libc_msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) +- int msqid; +- void *msgp; +- size_t msgsz; +- long int msgtyp; +- int msgflg; ++__libc_msgrcv (int msqid, void *msgp, size_t msgsz, long int msgtyp, ++ int msgflg) + { + if (SINGLE_THREAD_P) + return INLINE_SYSCALL (ipc, 6, IPCOP_msgrcv, msqid, msgsz, msgflg, diff --git a/SOURCES/glibc-rh1505492-prototypes-11.patch b/SOURCES/glibc-rh1505492-prototypes-11.patch new file mode 100644 index 0000000..a25dc1e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-11.patch @@ -0,0 +1,10109 @@ +commit 9d46370ca338054cb6ea7ebeddcf06c7ac7ad1a9 +Author: Joseph Myers +Date: Fri Oct 16 20:21:49 2015 +0000 + + Convert 703 function definitions to prototype style. + + This automatically-generated patch converts 703 function definitions + in glibc from old-style K&R to prototype-style. + + This conversion is deliberately simplistic, excluding any tricky cases + as even a patch covering only simple cases is still very large. + Currently excluded are: sysdeps files (to improve test coverage for + the initial patch); files containing assertions (to avoid line number + changes so that generated libraries can be compared); any cases where + the generated function declaration would involve lines over 79 + characters and so need to be wrapped; any cases with array parameters + or other cases where parameter declarators don't end with the + parameter name; any other cases that my script didn't parse. + + I didn't try to make the ChangeLog generation indicate when function + definitions are conditional; it just lists the functions changed + without regard to that. + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). + + * crypt/cert.c (good_bye): Convert to prototype-style function + definition. + (get8): Likewise. + (put8): Likewise. + * crypt/crypt-entry.c (crypt): Likewise. + (__fcrypt): Likewise. + * crypt/crypt_util.c (_ufc_prbits): Likewise. + (_ufc_set_bits): Likewise. + (_ufc_clearmem): Likewise. + (__init_des_r): Likewise. + (shuffle_sb): Likewise. + (shuffle_sb): Likewise. + (_ufc_setup_salt_r): Likewise. + (_ufc_mk_keytab_r): Likewise. + (_ufc_dofinalperm_r): Likewise. + (encrypt): Likewise. + (__setkey_r): Likewise. + (setkey): Likewise. + * crypt/md5.c (md5_init_ctx): Likewise. + (md5_read_ctx): Likewise. + (md5_finish_ctx): Likewise. + (md5_stream): Likewise. + (md5_buffer): Likewise. + (md5_process_bytes): Likewise. + * crypt/sha256.c (__sha256_init_ctx): Likewise. + (__sha256_finish_ctx): Likewise. + (__sha256_process_bytes): Likewise. + * crypt/sha512.c (__sha512_init_ctx): Likewise. + (__sha512_finish_ctx): Likewise. + (__sha512_process_bytes): Likewise. + * ctype/isctype.c (__isctype): Likewise. + * debug/backtrace.c (__backtrace): Likewise. + * debug/backtracesymsfd.c (__backtrace_symbols_fd): Likewise. + * debug/fgets_chk.c (__fgets_chk): Likewise. + * debug/fgets_u_chk.c (__fgets_unlocked_chk): Likewise. + * debug/memcpy_chk.c (__memcpy_chk): Likewise. + * debug/memmove_chk.c (MEMMOVE_CHK): Likewise. + * debug/mempcpy_chk.c (__mempcpy_chk): Likewise. + * debug/memset_chk.c (__memset_chk): Likewise. + * debug/strcat_chk.c (__strcat_chk): Likewise. + * debug/strncat_chk.c (__strncat_chk): Likewise. + * debug/strncpy_chk.c (__strncpy_chk): Likewise. + * debug/vsprintf_chk.c (_IO_str_chk_overflow): Likewise. + * dirent/dirfd.c (dirfd): Likewise. + * dirent/getdents.c (__getdirentries): Likewise. + * dirent/getdents64.c (getdirentries64): Likewise. + * dirent/rewinddir.c (__rewinddir): Likewise. + * dirent/seekdir.c (seekdir): Likewise. + * dirent/telldir.c (telldir): Likewise. + * elf/sln.c (makesymlinks): Likewise. + (makesymlink): Likewise. + * gmon/gmon.c (__moncontrol): Likewise. + (__monstartup): Likewise. + (write_hist): Likewise. + (write_call_graph): Likewise. + (write_bb_counts): Likewise. + * grp/setgroups.c (setgroups): Likewise. + * inet/inet_lnaof.c (inet_lnaof): Likewise. + * inet/inet_net.c (inet_network): Likewise. + * inet/inet_netof.c (inet_netof): Likewise. + * inet/rcmd.c (rresvport_af): Likewise. + (rresvport): Likewise. + * io/access.c (__access): Likewise. + * io/chdir.c (__chdir): Likewise. + * io/chmod.c (__chmod): Likewise. + * io/chown.c (__chown): Likewise. + * io/close.c (__close): Likewise. + * io/creat.c (creat): Likewise. + * io/creat64.c (creat64): Likewise. + * io/dup.c (__dup): Likewise. + * io/dup2.c (__dup2): Likewise. + * io/dup3.c (__dup3): Likewise. + * io/euidaccess.c (__euidaccess): Likewise. + * io/faccessat.c (faccessat): Likewise. + * io/fchmod.c (__fchmod): Likewise. + * io/fchmodat.c (fchmodat): Likewise. + * io/fchown.c (__fchown): Likewise. + * io/fchownat.c (fchownat): Likewise. + * io/fcntl.c (__fcntl): Likewise. + * io/flock.c (__flock): Likewise. + * io/fts.c (fts_load): Likewise. + (fts_close): Likewise. + (fts_read): Likewise. + (fts_set): Likewise. + (fts_children): Likewise. + (fts_build): Likewise. + (fts_stat): Likewise. + (fts_sort): Likewise. + (fts_alloc): Likewise. + (fts_lfree): Likewise. + (fts_palloc): Likewise. + (fts_padjust): Likewise. + (fts_maxarglen): Likewise. + (fts_safe_changedir): Likewise. + * io/getwd.c (getwd): Likewise. + * io/isatty.c (__isatty): Likewise. + * io/lchown.c (__lchown): Likewise. + * io/link.c (__link): Likewise. + * io/linkat.c (linkat): Likewise. + * io/lseek.c (__libc_lseek): Likewise. + * io/mkdir.c (__mkdir): Likewise. + * io/mkdirat.c (mkdirat): Likewise. + * io/mkfifo.c (mkfifo): Likewise. + * io/mkfifoat.c (mkfifoat): Likewise. + * io/open.c (__libc_open): Likewise. + * io/open64.c (__libc_open64): Likewise. + * io/readlink.c (__readlink): Likewise. + * io/readlinkat.c (readlinkat): Likewise. + * io/rmdir.c (__rmdir): Likewise. + * io/symlink.c (__symlink): Likewise. + * io/symlinkat.c (symlinkat): Likewise. + * io/ttyname.c (ttyname): Likewise. + * io/ttyname_r.c (__ttyname_r): Likewise. + * io/umask.c (__umask): Likewise. + * io/unlink.c (__unlink): Likewise. + * io/unlinkat.c (unlinkat): Likewise. + * io/utime.c (utime): Likewise. + * libio/clearerr.c (clearerr): Likewise. + * libio/clearerr_u.c (clearerr_unlocked): Likewise. + * libio/feof.c (_IO_feof): Likewise. + * libio/feof_u.c (feof_unlocked): Likewise. + * libio/ferror.c (_IO_ferror): Likewise. + * libio/ferror_u.c (ferror_unlocked): Likewise. + * libio/filedoalloc.c (_IO_file_doallocate): Likewise. + * libio/fileno.c (__fileno): Likewise. + * libio/fputc.c (fputc): Likewise. + * libio/fputc_u.c (fputc_unlocked): Likewise. + * libio/fputwc.c (fputwc): Likewise. + * libio/fputwc_u.c (fputwc_unlocked): Likewise. + * libio/freopen.c (freopen): Likewise. + * libio/freopen64.c (freopen64): Likewise. + * libio/fseek.c (fseek): Likewise. + * libio/fseeko.c (fseeko): Likewise. + * libio/fseeko64.c (fseeko64): Likewise. + * libio/ftello.c (__ftello): Likewise. + * libio/ftello64.c (ftello64): Likewise. + * libio/fwide.c (fwide): Likewise. + * libio/genops.c (_IO_un_link): Likewise. + (_IO_link_in): Likewise. + (_IO_least_marker): Likewise. + (_IO_switch_to_main_get_area): Likewise. + (_IO_switch_to_backup_area): Likewise. + (_IO_switch_to_get_mode): Likewise. + (_IO_free_backup_area): Likewise. + (_IO_switch_to_put_mode): Likewise. + (__overflow): Likewise. + (__underflow): Likewise. + (__uflow): Likewise. + (_IO_setb): Likewise. + (_IO_doallocbuf): Likewise. + (_IO_default_underflow): Likewise. + (_IO_default_uflow): Likewise. + (_IO_default_xsputn): Likewise. + (_IO_sgetn): Likewise. + (_IO_default_xsgetn): Likewise. + (_IO_sync): Likewise. + (_IO_default_setbuf): Likewise. + (_IO_default_seekpos): Likewise. + (_IO_default_doallocate): Likewise. + (_IO_init): Likewise. + (_IO_old_init): Likewise. + (_IO_default_sync): Likewise. + (_IO_default_finish): Likewise. + (_IO_default_seekoff): Likewise. + (_IO_sputbackc): Likewise. + (_IO_sungetc): Likewise. + (_IO_set_column): Likewise. + (_IO_set_column): Likewise. + (_IO_adjust_column): Likewise. + (_IO_get_column): Likewise. + (_IO_init_marker): Likewise. + (_IO_remove_marker): Likewise. + (_IO_marker_difference): Likewise. + (_IO_marker_delta): Likewise. + (_IO_seekmark): Likewise. + (_IO_unsave_markers): Likewise. + (_IO_nobackup_pbackfail): Likewise. + (_IO_default_pbackfail): Likewise. + (_IO_default_seek): Likewise. + (_IO_default_stat): Likewise. + (_IO_default_read): Likewise. + (_IO_default_write): Likewise. + (_IO_default_showmanyc): Likewise. + (_IO_default_imbue): Likewise. + (_IO_iter_next): Likewise. + (_IO_iter_file): Likewise. + * libio/getc.c (_IO_getc): Likewise. + * libio/getwc.c (_IO_getwc): Likewise. + * libio/iofclose.c (_IO_new_fclose): Likewise. + * libio/iofdopen.c (_IO_new_fdopen): Likewise. + * libio/iofflush.c (_IO_fflush): Likewise. + * libio/iofflush_u.c (__fflush_unlocked): Likewise. + * libio/iofgetpos.c (_IO_new_fgetpos): Likewise. + * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise. + * libio/iofgets.c (_IO_fgets): Likewise. + * libio/iofgets_u.c (__fgets_unlocked): Likewise. + * libio/iofgetws.c (fgetws): Likewise. + * libio/iofgetws_u.c (fgetws_unlocked): Likewise. + * libio/iofopen64.c (_IO_fopen64): Likewise. + * libio/iofopncook.c (_IO_cookie_read): Likewise. + (_IO_cookie_write): Likewise. + (_IO_cookie_seek): Likewise. + (_IO_cookie_close): Likewise. + (_IO_cookie_seekoff): Likewise. + (_IO_old_cookie_seek): Likewise. + * libio/iofputs.c (_IO_fputs): Likewise. + * libio/iofputs_u.c (__fputs_unlocked): Likewise. + * libio/iofputws.c (fputws): Likewise. + * libio/iofputws_u.c (fputws_unlocked): Likewise. + * libio/iofread.c (_IO_fread): Likewise. + * libio/iofread_u.c (__fread_unlocked): Likewise. + * libio/iofsetpos.c (_IO_new_fsetpos): Likewise. + * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise. + * libio/ioftell.c (_IO_ftell): Likewise. + * libio/iofwrite.c (_IO_fwrite): Likewise. + * libio/iogetdelim.c (_IO_getdelim): Likewise. + * libio/iogets.c (_IO_gets): Likewise. + * libio/iopadn.c (_IO_padn): Likewise. + * libio/iopopen.c (_IO_new_proc_open): Likewise. + (_IO_new_popen): Likewise. + (_IO_new_proc_close): Likewise. + * libio/ioputs.c (_IO_puts): Likewise. + * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise. + (_IO_seekoff): Likewise. + * libio/ioseekpos.c (_IO_seekpos_unlocked): Likewise. + (_IO_seekpos): Likewise. + * libio/iosetbuffer.c (_IO_setbuffer): Likewise. + * libio/iosetvbuf.c (_IO_setvbuf): Likewise. + * libio/ioungetc.c (_IO_ungetc): Likewise. + * libio/ioungetwc.c (ungetwc): Likewise. + * libio/iovdprintf.c (_IO_vdprintf): Likewise. + * libio/iovsscanf.c (_IO_vsscanf): Likewise. + * libio/iowpadn.c (_IO_wpadn): Likewise. + * libio/libc_fatal.c (__libc_fatal): Likewise. + * libio/memstream.c (__open_memstream): Likewise. + (_IO_mem_sync): Likewise. + (_IO_mem_finish): Likewise. + * libio/oldfileops.c (_IO_old_file_init): Likewise. + (_IO_old_file_close_it): Likewise. + (_IO_old_file_finish): Likewise. + (_IO_old_file_fopen): Likewise. + (_IO_old_file_attach): Likewise. + (_IO_old_file_setbuf): Likewise. + (_IO_old_do_write): Likewise. + (old_do_write): Likewise. + (_IO_old_file_underflow): Likewise. + (_IO_old_file_overflow): Likewise. + (_IO_old_file_sync): Likewise. + (_IO_old_file_seekoff): Likewise. + (_IO_old_file_write): Likewise. + (_IO_old_file_xsputn): Likewise. + * libio/oldiofclose.c (_IO_old_fclose): Likewise. + * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. + * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise. + * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise. + * libio/oldiofopen.c (_IO_old_fopen): Likewise. + * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise. + * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise. + * libio/oldiopopen.c (_IO_old_proc_open): Likewise. + (_IO_old_popen): Likewise. + (_IO_old_proc_close): Likewise. + * libio/oldpclose.c (__old_pclose): Likewise. + * libio/pclose.c (__new_pclose): Likewise. + * libio/peekc.c (_IO_peekc_locked): Likewise. + * libio/putc.c (_IO_putc): Likewise. + * libio/putc_u.c (putc_unlocked): Likewise. + * libio/putchar.c (putchar): Likewise. + * libio/putchar_u.c (putchar_unlocked): Likewise. + * libio/putwc.c (putwc): Likewise. + * libio/putwc_u.c (putwc_unlocked): Likewise. + * libio/putwchar.c (putwchar): Likewise. + * libio/putwchar_u.c (putwchar_unlocked): Likewise. + * libio/rewind.c (rewind): Likewise. + * libio/setbuf.c (setbuf): Likewise. + * libio/setlinebuf.c (setlinebuf): Likewise. + * libio/vasprintf.c (_IO_vasprintf): Likewise. + * libio/vscanf.c (_IO_vscanf): Likewise. + * libio/vsnprintf.c (_IO_strn_overflow): Likewise. + * libio/vswprintf.c (_IO_wstrn_overflow): Likewise. + * libio/wfiledoalloc.c (_IO_wfile_doallocate): Likewise. + * libio/wgenops.c (_IO_least_wmarker): Likewise. + (_IO_switch_to_main_wget_area): Likewise. + (_IO_switch_to_wbackup_area): Likewise. + (_IO_wsetb): Likewise. + (_IO_wdefault_pbackfail): Likewise. + (_IO_wdefault_finish): Likewise. + (_IO_wdefault_uflow): Likewise. + (__woverflow): Likewise. + (__wuflow): Likewise. + (__wunderflow): Likewise. + (_IO_wdefault_xsputn): Likewise. + (_IO_wdefault_xsgetn): Likewise. + (_IO_wdoallocbuf): Likewise. + (_IO_wdefault_doallocate): Likewise. + (_IO_switch_to_wget_mode): Likewise. + (_IO_free_wbackup_area): Likewise. + (_IO_switch_to_wput_mode): Likewise. + (_IO_sputbackwc): Likewise. + (_IO_sungetwc): Likewise. + (_IO_adjust_wcolumn): Likewise. + (_IO_init_wmarker): Likewise. + (_IO_wmarker_delta): Likewise. + (_IO_seekwmark): Likewise. + (_IO_unsave_wmarkers): Likewise. + * libio/wmemstream.c (open_wmemstream): Likewise. + (_IO_wmem_sync): Likewise. + (_IO_wmem_finish): Likewise. + * locale/nl_langinfo.c (nl_langinfo): Likewise. + * locale/nl_langinfo_l.c (__nl_langinfo_l): Likewise. + * locale/programs/simple-hash.c (init_hash): Likewise. + (delete_hash): Likewise. + (insert_entry): Likewise. + (set_entry): Likewise. + (next_prime): Likewise. + (is_prime): Likewise. + * locale/programs/xmalloc.c (fixup_null_alloc): Likewise. + (xmalloc): Likewise. + (xrealloc): Likewise. + * locale/programs/xstrdup.c (xstrdup): Likewise. + * localedata/collate-test.c (xstrcoll): Likewise. + * localedata/xfrm-test.c (xstrcmp): Likewise. + * login/getlogin_r.c (__getlogin_r): Likewise. + * login/getpt.c (__posix_openpt): Likewise. + * login/login_tty.c (login_tty): Likewise. + * login/setlogin.c (setlogin): Likewise. + * mach/msg-destroy.c (__mach_msg_destroy): Likewise. + (mach_msg_destroy_port): Likewise. + (mach_msg_destroy_memory): Likewise. + * malloc/mcheck.c (flood): Likewise. + * misc/acct.c (acct): Likewise. + * misc/brk.c (__brk): Likewise. + * misc/chflags.c (chflags): Likewise. + * misc/chroot.c (chroot): Likewise. + * misc/fchflags.c (fchflags): Likewise. + * misc/fstab.c (getfsspec): Likewise. + (getfsfile): Likewise. + * misc/fsync.c (fsync): Likewise. + * misc/ftruncate.c (__ftruncate): Likewise. + * misc/ftruncate64.c (__ftruncate64): Likewise. + * misc/getdomain.c (getdomainname): Likewise. + (getdomainname): Likewise. + * misc/gethostname.c (__gethostname): Likewise. + * misc/getpass.c (getpass): Likewise. + * misc/getttyent.c (skip): Likewise. + (value): Likewise. + * misc/gtty.c (gtty): Likewise. + * misc/hsearch.c (hsearch): Likewise. + (hcreate): Likewise. + * misc/hsearch_r.c (__hcreate_r): Likewise. + (__hdestroy_r): Likewise. + * misc/ioctl.c (__ioctl): Likewise. + * misc/mkdtemp.c (mkdtemp): Likewise. + * misc/mkostemp.c (mkostemp): Likewise. + * misc/mkostemp64.c (mkostemp64): Likewise. + * misc/mkostemps.c (mkostemps): Likewise. + * misc/mkostemps64.c (mkostemps64): Likewise. + * misc/mkstemp.c (mkstemp): Likewise. + * misc/mkstemp64.c (mkstemp64): Likewise. + * misc/mkstemps.c (mkstemps): Likewise. + * misc/mkstemps64.c (mkstemps64): Likewise. + * misc/mktemp.c (__mktemp): Likewise. + * misc/preadv.c (preadv): Likewise. + * misc/preadv64.c (preadv64): Likewise. + * misc/pwritev.c (pwritev): Likewise. + * misc/pwritev64.c (pwritev64): Likewise. + * misc/readv.c (__readv): Likewise. + * misc/revoke.c (revoke): Likewise. + * misc/setdomain.c (setdomainname): Likewise. + * misc/setegid.c (setegid): Likewise. + * misc/seteuid.c (seteuid): Likewise. + * misc/sethostid.c (sethostid): Likewise. + * misc/sethostname.c (sethostname): Likewise. + * misc/setregid.c (__setregid): Likewise. + * misc/setreuid.c (__setreuid): Likewise. + * misc/sstk.c (sstk): Likewise. + * misc/stty.c (stty): Likewise. + * misc/syscall.c (syscall): Likewise. + * misc/syslog.c (setlogmask): Likewise. + * misc/truncate.c (__truncate): Likewise. + * misc/truncate64.c (truncate64): Likewise. + * misc/ualarm.c (ualarm): Likewise. + * misc/usleep.c (usleep): Likewise. + * misc/ustat.c (ustat): Likewise. + * misc/writev.c (__writev): Likewise. + * nptl/cleanup_compat.c (_pthread_cleanup_pop): Likewise. + * nptl/old_pthread_cond_broadcast.c + (__pthread_cond_broadcast_2_0): Likewise. + * nptl/old_pthread_cond_destroy.c (__pthread_cond_destroy_2_0): + Likewise. + * nptl/old_pthread_cond_signal.c (__pthread_cond_signal_2_0): + Likewise. + * nptl/old_pthread_cond_wait.c (__pthread_cond_wait_2_0): + Likewise. + * nptl/pt-raise.c (raise): Likewise. + * nptl/pthread_barrier_destroy.c (pthread_barrier_destroy): + Likewise. + * nptl/pthread_barrier_wait.c (__pthread_barrier_wait): Likewise. + * nptl/pthread_barrierattr_destroy.c + (pthread_barrierattr_destroy): Likewise. + * nptl/pthread_barrierattr_init.c (pthread_barrierattr_init): + Likewise. + * nptl/pthread_barrierattr_setpshared.c + (pthread_barrierattr_setpshared): Likewise. + * nptl/pthread_cond_broadcast.c (__pthread_cond_broadcast): + Likewise. + * nptl/pthread_cond_destroy.c (__pthread_cond_destroy): Likewise. + * nptl/pthread_cond_init.c (__pthread_cond_init): Likewise. + * nptl/pthread_cond_signal.c (__pthread_cond_signal): Likewise. + * nptl/pthread_condattr_destroy.c (__pthread_condattr_destroy): + Likewise. + * nptl/pthread_condattr_getclock.c (pthread_condattr_getclock): + Likewise. + * nptl/pthread_condattr_getpshared.c + (pthread_condattr_getpshared): Likewise. + * nptl/pthread_condattr_init.c (__pthread_condattr_init): + Likewise. + * nptl/pthread_condattr_setpshared.c + (pthread_condattr_setpshared): Likewise. + * nptl/pthread_detach.c (pthread_detach): Likewise. + * nptl/pthread_equal.c (__pthread_equal): Likewise. + * nptl/pthread_getcpuclockid.c (pthread_getcpuclockid): Likewise. + * nptl/pthread_getspecific.c (__pthread_getspecific): Likewise. + * nptl/pthread_key_delete.c (pthread_key_delete): Likewise. + * nptl/pthread_mutex_consistent.c (pthread_mutex_consistent): + Likewise. + * nptl/pthread_mutex_destroy.c (__pthread_mutex_destroy): + Likewise. + * nptl/pthread_mutex_getprioceiling.c + (pthread_mutex_getprioceiling): Likewise. + * nptl/pthread_mutexattr_destroy.c (__pthread_mutexattr_destroy): + Likewise. + * nptl/pthread_mutexattr_getprotocol.c + (pthread_mutexattr_getprotocol): Likewise. + * nptl/pthread_mutexattr_getpshared.c + (pthread_mutexattr_getpshared): Likewise. + * nptl/pthread_mutexattr_getrobust.c + (pthread_mutexattr_getrobust): Likewise. + * nptl/pthread_mutexattr_gettype.c (pthread_mutexattr_gettype): + Likewise. + * nptl/pthread_mutexattr_init.c (__pthread_mutexattr_init): + Likewise. + * nptl/pthread_mutexattr_setprioceiling.c + (pthread_mutexattr_setprioceiling): Likewise. + * nptl/pthread_mutexattr_setprotocol.c + (pthread_mutexattr_setprotocol): Likewise. + * nptl/pthread_mutexattr_setpshared.c + (pthread_mutexattr_setpshared): Likewise. + * nptl/pthread_mutexattr_setrobust.c + (pthread_mutexattr_setrobust): Likewise. + * nptl/pthread_mutexattr_settype.c (__pthread_mutexattr_settype): + Likewise. + * nptl/pthread_rwlock_destroy.c (__pthread_rwlock_destroy): + Likewise. + * nptl/pthread_rwlockattr_destroy.c (pthread_rwlockattr_destroy): + Likewise. + * nptl/pthread_rwlockattr_getkind_np.c + (pthread_rwlockattr_getkind_np): Likewise. + * nptl/pthread_rwlockattr_getpshared.c + (pthread_rwlockattr_getpshared): Likewise. + * nptl/pthread_rwlockattr_init.c (pthread_rwlockattr_init): + Likewise. + * nptl/pthread_rwlockattr_setkind_np.c + (pthread_rwlockattr_setkind_np): Likewise. + * nptl/pthread_rwlockattr_setpshared.c + (pthread_rwlockattr_setpshared): Likewise. + * nptl/pthread_setcancelstate.c (__pthread_setcancelstate): + Likewise. + * nptl/pthread_setcanceltype.c (__pthread_setcanceltype): + Likewise. + * nptl/pthread_setconcurrency.c (pthread_setconcurrency): + Likewise. + * nptl/pthread_setschedprio.c (pthread_setschedprio): Likewise. + * nptl/pthread_setspecific.c (__pthread_setspecific): Likewise. + * nptl/pthread_spin_destroy.c (pthread_spin_destroy): Likewise. + * nptl/pthread_tryjoin.c (pthread_tryjoin_np): Likewise. + * nptl/sem_close.c (sem_close): Likewise. + * nptl/sem_destroy.c (__new_sem_destroy): Likewise. + * nptl/sem_init.c (__old_sem_init): Likewise. + * nptl/sigaction.c (__sigaction): Likewise. + * nptl/unregister-atfork.c (__unregister_atfork): Likewise. + * posix/_exit.c (_exit): Likewise. + * posix/alarm.c (alarm): Likewise. + * posix/confstr.c (confstr): Likewise. + * posix/fpathconf.c (__fpathconf): Likewise. + * posix/getgroups.c (__getgroups): Likewise. + * posix/getpgid.c (__getpgid): Likewise. + * posix/group_member.c (__group_member): Likewise. + * posix/pathconf.c (__pathconf): Likewise. + * posix/sched_getaffinity.c (sched_getaffinity): Likewise. + * posix/sched_setaffinity.c (sched_setaffinity): Likewise. + * posix/setgid.c (__setgid): Likewise. + * posix/setpgid.c (__setpgid): Likewise. + * posix/setuid.c (__setuid): Likewise. + * posix/sleep.c (__sleep): Likewise. + * posix/sysconf.c (__sysconf): Likewise. + * posix/times.c (__times): Likewise. + * posix/uname.c (__uname): Likewise. + * posix/waitid.c (__waitid): Likewise. + * pwd/getpw.c (__getpw): Likewise. + * resolv/base64.c (b64_pton): Likewise. + * resolv/gai_sigqueue.c (__gai_sigqueue): Likewise. + * resolv/gethnamaddr.c (Dprintf): Likewise. + (gethostbyname): Likewise. + (gethostbyname2): Likewise. + (gethostbyaddr): Likewise. + (_sethtent): Likewise. + (_gethtbyname): Likewise. + (_gethtbyname2): Likewise. + (_gethtbyaddr): Likewise. + (map_v4v6_address): Likewise. + (map_v4v6_hostent): Likewise. + (addrsort): Likewise. + (ht_sethostent): Likewise. + (ht_gethostbyname): Likewise. + (ht_gethostbyaddr): Likewise. + * resolv/inet_net_ntop.c (inet_net_ntop): Likewise. + (inet_net_ntop_ipv4): Likewise. + * resolv/inet_neta.c (inet_neta): Likewise. + * resolv/inet_ntop.c (inet_ntop): Likewise. + (inet_ntop4): Likewise. + (inet_ntop6): Likewise. + * resolv/inet_pton.c (__inet_pton): Likewise. + (inet_pton4): Likewise. + (inet_pton6): Likewise. + * resolv/res_debug.c (loc_aton): Likewise. + (loc_ntoa): Likewise. + * resource/getpriority.c (__getpriority): Likewise. + * resource/getrusage.c (__getrusage): Likewise. + * resource/nice.c (nice): Likewise. + * resource/setpriority.c (__setpriority): Likewise. + * resource/setrlimit64.c (setrlimit64): Likewise. + * resource/vlimit.c (vlimit): Likewise. + * resource/vtimes.c (vtimes): Likewise. + * rt/aio_error.c (aio_error): Likewise. + * rt/aio_return.c (aio_return): Likewise. + * rt/aio_sigqueue.c (__aio_sigqueue): Likewise. + * signal/kill.c (__kill): Likewise. + * signal/killpg.c (killpg): Likewise. + * signal/raise.c (raise): Likewise. + * signal/sigaction.c (__sigaction): Likewise. + * signal/sigaddset.c (sigaddset): Likewise. + * signal/sigaltstack.c (sigaltstack): Likewise. + * signal/sigandset.c (sigandset): Likewise. + * signal/sigblock.c (__sigblock): Likewise. + * signal/sigdelset.c (sigdelset): Likewise. + * signal/sigempty.c (sigemptyset): Likewise. + * signal/sigfillset.c (sigfillset): Likewise. + * signal/sighold.c (sighold): Likewise. + * signal/sigignore.c (sigignore): Likewise. + * signal/sigintr.c (siginterrupt): Likewise. + * signal/sigisempty.c (sigisemptyset): Likewise. + * signal/sigismem.c (sigismember): Likewise. + * signal/signal.c (signal): Likewise. + * signal/sigorset.c (sigorset): Likewise. + * signal/sigpause.c (__sigpause): Likewise. + * signal/sigpending.c (sigpending): Likewise. + * signal/sigprocmask.c (__sigprocmask): Likewise. + * signal/sigrelse.c (sigrelse): Likewise. + * signal/sigreturn.c (__sigreturn): Likewise. + * signal/sigset.c (sigset): Likewise. + * signal/sigsetmask.c (__sigsetmask): Likewise. + * signal/sigstack.c (sigstack): Likewise. + * signal/sigsuspend.c (__sigsuspend): Likewise. + * signal/sigvec.c (sigvec_wrapper_handler): Likewise. + * signal/sysv_signal.c (__sysv_signal): Likewise. + * socket/accept.c (accept): Likewise. + * socket/accept4.c (__libc_accept4): Likewise. + * socket/bind.c (__bind): Likewise. + * socket/connect.c (__connect): Likewise. + * socket/getpeername.c (getpeername): Likewise. + * socket/getsockname.c (__getsockname): Likewise. + * socket/getsockopt.c (getsockopt): Likewise. + * socket/listen.c (__listen): Likewise. + * socket/recv.c (__recv): Likewise. + * socket/recvmsg.c (__recvmsg): Likewise. + * socket/send.c (__send): Likewise. + * socket/sendmsg.c (__sendmsg): Likewise. + * socket/shutdown.c (shutdown): Likewise. + * socket/sockatmark.c (sockatmark): Likewise. + * socket/socket.c (__socket): Likewise. + * stdio-common/ctermid.c (ctermid): Likewise. + * stdio-common/cuserid.c (cuserid): Likewise. + * stdio-common/printf-prs.c (parse_printf_format): Likewise. + * stdio-common/remove.c (remove): Likewise. + * stdio-common/rename.c (rename): Likewise. + * stdio-common/renameat.c (renameat): Likewise. + * stdio-common/tempname.c (__gen_tempname): Likewise. + * stdio-common/xbug.c (InitBuffer): Likewise. + (AppendToBuffer): Likewise. + (ReadFile): Likewise. + * stdlib/a64l.c (a64l): Likewise. + * stdlib/drand48_r.c (drand48_r): Likewise. + * stdlib/getcontext.c (getcontext): Likewise. + * stdlib/getenv.c (getenv): Likewise. + * stdlib/l64a.c (l64a): Likewise. + * stdlib/llabs.c (llabs): Likewise. + * stdlib/lldiv.c (lldiv): Likewise. + * stdlib/lrand48_r.c (lrand48_r): Likewise. + * stdlib/mrand48_r.c (mrand48_r): Likewise. + * stdlib/putenv.c (putenv): Likewise. + * stdlib/random.c (__srandom): Likewise. + (__initstate): Likewise. + (__setstate): Likewise. + * stdlib/random_r.c (__srandom_r): Likewise. + (__setstate_r): Likewise. + (__random_r): Likewise. + * stdlib/secure-getenv.c (__libc_secure_getenv): Likewise. + * stdlib/setcontext.c (setcontext): Likewise. + * stdlib/setenv.c (setenv): Likewise. + (unsetenv): Likewise. + * stdlib/srand48.c (srand48): Likewise. + * stdlib/srand48_r.c (__srand48_r): Likewise. + * stdlib/swapcontext.c (swapcontext): Likewise. + * stdlib/system.c (__libc_system): Likewise. + * stdlib/tst-strtod.c (expand): Likewise. + * stdlib/tst-strtol.c (expand): Likewise. + * stdlib/tst-strtoll.c (expand): Likewise. + * streams/fattach.c (fattach): Likewise. + * streams/fdetach.c (fdetach): Likewise. + * streams/getmsg.c (getmsg): Likewise. + * streams/isastream.c (isastream): Likewise. + * string/ffs.c (__ffs): Likewise. + * string/ffsll.c (ffsll): Likewise. + * string/memcmp.c (memcmp_common_alignment): Likewise. + (memcmp_not_common_alignment): Likewise. + (MEMCMP): Likewise. + * string/memcpy.c (memcpy): Likewise. + * string/memmove.c (MEMMOVE): Likewise. + * string/memset.c (memset): Likewise. + * string/rawmemchr.c (RAWMEMCHR): Likewise. + * string/strchrnul.c (STRCHRNUL): Likewise. + * string/strerror.c (strerror): Likewise. + * string/strndup.c (__strndup): Likewise. + * string/strverscmp.c (__strverscmp): Likewise. + * sunrpc/clnt_raw.c (clntraw_freeres): Likewise. + * sunrpc/clnt_tcp.c (clnttcp_geterr): Likewise. + (clnttcp_freeres): Likewise. + * sunrpc/clnt_unix.c (clntunix_freeres): Likewise. + * sunrpc/pmap_prot.c (xdr_pmap): Likewise. + * sunrpc/pmap_prot2.c (xdr_pmaplist): Likewise. + * sunrpc/pmap_rmt.c (xdr_rmtcallres): Likewise. + * sunrpc/rpc_prot.c (xdr_replymsg): Likewise. + (xdr_callhdr): Likewise. + * sunrpc/rpcinfo.c (udpping): Likewise. + (tcpping): Likewise. + (pstatus): Likewise. + (pmapdump): Likewise. + (brdcst): Likewise. + (deletereg): Likewise. + (getprognum): Likewise. + (getvers): Likewise. + (get_inet_address): Likewise. + * sunrpc/svc_raw.c (svcraw_recv): Likewise. + * sunrpc/svc_udp.c (svcudp_create): Likewise. + (svcudp_stat): Likewise. + (svcudp_recv): Likewise. + (svcudp_reply): Likewise. + (svcudp_getargs): Likewise. + (svcudp_freeargs): Likewise. + (svcudp_destroy): Likewise. + * sunrpc/xdr.c (xdr_bytes): Likewise. + (xdr_netobj): Likewise. + (xdr_string): Likewise. + (xdr_wrapstring): Likewise. + * sunrpc/xdr_float.c (xdr_float): Likewise. + (xdr_double): Likewise. + * sunrpc/xdr_mem.c (xdrmem_setpos): Likewise. + * sunrpc/xdr_ref.c (xdr_pointer): Likewise. + * sysvipc/ftok.c (ftok): Likewise. + * sysvipc/msgctl.c (msgctl): Likewise. + * sysvipc/msgget.c (msgget): Likewise. + * sysvipc/msgrcv.c (msgrcv): Likewise. + * sysvipc/msgsnd.c (msgsnd): Likewise. + * sysvipc/semget.c (semget): Likewise. + * sysvipc/semop.c (semop): Likewise. + * sysvipc/shmat.c (shmat): Likewise. + * sysvipc/shmctl.c (shmctl): Likewise. + * sysvipc/shmdt.c (shmdt): Likewise. + * sysvipc/shmget.c (shmget): Likewise. + * termios/cfmakeraw.c (cfmakeraw): Likewise. + * termios/speed.c (cfgetospeed): Likewise. + (cfgetispeed): Likewise. + (cfsetospeed): Likewise. + (cfsetispeed): Likewise. + * termios/tcflow.c (tcflow): Likewise. + * termios/tcflush.c (tcflush): Likewise. + * termios/tcgetattr.c (__tcgetattr): Likewise. + * termios/tcgetpgrp.c (tcgetpgrp): Likewise. + * termios/tcgetsid.c (tcgetsid): Likewise. + * termios/tcsendbrk.c (tcsendbreak): Likewise. + * termios/tcsetpgrp.c (tcsetpgrp): Likewise. + * time/adjtime.c (__adjtime): Likewise. + * time/dysize.c (dysize): Likewise. + * time/ftime.c (ftime): Likewise. + * time/getitimer.c (__getitimer): Likewise. + * time/gettimeofday.c (__gettimeofday): Likewise. + * time/gmtime.c (__gmtime_r): Likewise. + (gmtime): Likewise. + * time/localtime.c (__localtime_r): Likewise. + (localtime): Likewise. + * time/offtime.c (__offtime): Likewise. + * time/settimeofday.c (__settimeofday): Likewise. + * time/stime.c (stime): Likewise. + * time/strftime_l.c (tm_diff): Likewise. + (iso_week_days): Likewise. + * time/strptime.c (strptime): Likewise. + * time/time.c (time): Likewise. + * time/timespec_get.c (timespec_get): Likewise. + * time/tzset.c (tzset_internal): Likewise. + (compute_change): Likewise. + (__tz_compute): Likewise. + * wcsmbs/btowc.c (__btowc): Likewise. + * wcsmbs/mbrlen.c (__mbrlen): Likewise. + * wcsmbs/mbsinit.c (__mbsinit): Likewise. + * wcsmbs/mbsrtowcs.c (__mbsrtowcs): Likewise. + * wcsmbs/wcpcpy.c (__wcpcpy): Likewise. + * wcsmbs/wcpncpy.c (__wcpncpy): Likewise. + * wcsmbs/wcscat.c (__wcscat): Likewise. + * wcsmbs/wcschrnul.c (__wcschrnul): Likewise. + * wcsmbs/wcscmp.c (WCSCMP): Likewise. + * wcsmbs/wcscpy.c (WCSCPY): Likewise. + * wcsmbs/wcscspn.c (wcscspn): Likewise. + * wcsmbs/wcsdup.c (wcsdup): Likewise. + * wcsmbs/wcslen.c (__wcslen): Likewise. + * wcsmbs/wcsncat.c (WCSNCAT): Likewise. + * wcsmbs/wcsncmp.c (WCSNCMP): Likewise. + * wcsmbs/wcsncpy.c (__wcsncpy): Likewise. + * wcsmbs/wcsnlen.c (__wcsnlen): Likewise. + * wcsmbs/wcspbrk.c (wcspbrk): Likewise. + * wcsmbs/wcsrchr.c (WCSRCHR): Likewise. + * wcsmbs/wcsspn.c (wcsspn): Likewise. + * wcsmbs/wcsstr.c (wcsstr): Likewise. + * wcsmbs/wcstok.c (wcstok): Likewise. + * wcsmbs/wctob.c (wctob): Likewise. + * wcsmbs/wmemchr.c (__wmemchr): Likewise. + * wcsmbs/wmemcmp.c (WMEMCMP): Likewise. + * wcsmbs/wmemcpy.c (__wmemcpy): Likewise. + * wcsmbs/wmemmove.c (__wmemmove): Likewise. + * wcsmbs/wmempcpy.c (__wmempcpy): Likewise. + * wcsmbs/wmemset.c (__wmemset): Likewise. + * wctype/wcfuncs.c (__towlower): Likewise. + (__towupper): Likewise. + +Conflicts: + dirent/rewinddir.c + (Missing backport of fix for swbz#17584.) + io/creat.c + (Missing backport of d4e157aaaead89474366f58fa57e035441a2bd8b, + Remove __libc_creat function name.) + io/lseek.c + (Missing backport of b2e25af00c4b6268624a06472477112fc015e7d8, + Fix aliases in stub lseek.) + libio/fileno.c + libio/ftello.c + libio/iofread_u.c + (Missing backport of fix for swbz#17583.) + libio/genops.c + libio/oldfileops.c + (Separate backport of vtable hardening in glibc-rh1398413.patch.) + libio/iofflush_u.c + (Missing backport of fix for swbz#18540.) + libio/iofputs_u.c + (Missing backport of fix for swbz#18530.) + libio/memstream.c + (Missing backport of fix for swbz#18498.) + login/getlogin_r.c + (Missing backport of fix for swbz#18527.) + malloc/mcheck.c + (Missing backport of 6c8dbf00f536d78b1937b5af6f57be47fd376344, + Reformat malloc to gnu style.) + misc/chflags.c + misc/fchflags.c + (Missing backport of function prototype change in commit + 5d2556c4fa4629b1c3adf59f29c699f00d4122ea, hurd: fix f?chflags + prototypes, declare them and their flags.) + misc/hsearch_r.c + (Missing backport of fix for swbz#17996.) + misc/readv.c + misc/writev.c + (Missing backpoer of e19c95fd5ed81c1d47c6784c18942c552e6f4562, + Remove __libc_readv and __libc_writev function names.) + nptl/pthread_barrier_wait.c + (Missing backport of fix for swbz#18544.) + nptl/unregister-atfork.c + (Change applied to nptl/sysdeps/unix/sysv/linux/unregister-atfork.c + instead.) + resolv/gethnamaddr.c + resolv/inet_pton.c + (Part of stub resolver rebase in glibc-rh677316-resolv.patch.) + resource/getpriority.c + resource/setpriority.c + (Missing backport of fix for swbz#18553.) + signal/sigvec.c + (Needs separate fix due to upstream sigvec removal.) + wcsmbs/wmemchr.c + (Missing backport of fix for swbz#18468.) + wcsmbs/wmemset.c + (Missing backport of fix for swbz#17574.) + wctype/wcfuncs.c + (Missing backport of fix for swbz#18469.) + +diff --git a/crypt/cert.c b/crypt/cert.c +index 8c838e919ac9fd38..d651108860f0052a 100644 +--- a/crypt/cert.c ++++ b/crypt/cert.c +@@ -17,7 +17,8 @@ void get8 (char *cp); + void put8 (char *cp); + void good_bye (void) __attribute__ ((noreturn)); + +-void good_bye () ++void ++good_bye (void) + { + if(totfails == 0) { + printf("Passed DES validation suite\n"); +@@ -80,8 +81,7 @@ main(argc, argv) + good_bye(); + } + void +-get8(cp) +-char *cp; ++get8 (char *cp) + { + int i,j,t; + +@@ -95,8 +95,7 @@ char *cp; + } + } + void +-put8(cp) +-char *cp; ++put8 (char *cp) + { + int i,j,t; + +diff --git a/crypt/crypt-entry.c b/crypt/crypt-entry.c +index 89c22e6897b74ffe..1ad36c7d05e7b7c1 100644 +--- a/crypt/crypt-entry.c ++++ b/crypt/crypt-entry.c +@@ -158,9 +158,7 @@ __crypt_r (key, salt, data) + weak_alias (__crypt_r, crypt_r) + + char * +-crypt (key, salt) +- const char *key; +- const char *salt; ++crypt (const char *key, const char *salt) + { + #ifdef _LIBC + /* Try to find out whether we have to use MD5 encryption replacement. */ +@@ -190,9 +188,7 @@ crypt (key, salt) + weak_alias (crypt, fcrypt) + #else + char * +-__fcrypt (key, salt) +- const char *key; +- const char *salt; ++__fcrypt (const char *key, const char *salt) + { + return crypt (key, salt); + } +diff --git a/crypt/crypt_util.c b/crypt/crypt_util.c +index 1ae7711915822715..bbb2ca2b58490e35 100644 +--- a/crypt/crypt_util.c ++++ b/crypt/crypt_util.c +@@ -269,9 +269,7 @@ __libc_lock_define_initialized (static, _ufc_tables_lock) + #ifdef DEBUG + + void +-_ufc_prbits(a, n) +- ufc_long *a; +- int n; ++_ufc_prbits (ufc_long *a, int n) + { + ufc_long i, j, t, tmp; + n /= 8; +@@ -287,9 +285,7 @@ _ufc_prbits(a, n) + } + + static void +-_ufc_set_bits(v, b) +- ufc_long v; +- ufc_long *b; ++_ufc_set_bits (ufc_long v, ufc_long *b) + { + ufc_long i; + *b = 0; +@@ -309,9 +305,7 @@ _ufc_set_bits(v, b) + */ + + void +-_ufc_clearmem(start, cnt) +- char *start; +- int cnt; ++_ufc_clearmem (char *start, int cnt) + { + while(cnt--) + *start++ = '\0'; +@@ -340,8 +334,7 @@ _ufc_copymem(from, to, cnt) + */ + + void +-__init_des_r(__data) +- struct crypt_data * __restrict __data; ++__init_des_r (struct crypt_data * __restrict __data) + { + int comes_from_bit; + int bit, sg; +@@ -566,9 +559,7 @@ __init_des (void) + + #ifdef _UFC_32_ + STATIC void +-shuffle_sb(k, saltbits) +- long32 *k; +- ufc_long saltbits; ++shuffle_sb (long32 *k, ufc_long saltbits) + { + ufc_long j; + long32 x; +@@ -582,9 +573,7 @@ shuffle_sb(k, saltbits) + + #ifdef _UFC_64_ + STATIC void +-shuffle_sb(k, saltbits) +- long64 *k; +- ufc_long saltbits; ++shuffle_sb (long64 *k, ufc_long saltbits) + { + ufc_long j; + long64 x; +@@ -622,9 +611,7 @@ bad_for_salt (char c) + */ + + bool +-_ufc_setup_salt_r(s, __data) +- const char *s; +- struct crypt_data * __restrict __data; ++_ufc_setup_salt_r (const char *s, struct crypt_data * __restrict __data) + { + ufc_long i, j, saltbits; + char s0, s1; +@@ -683,9 +670,7 @@ _ufc_setup_salt_r(s, __data) + } + + void +-_ufc_mk_keytab_r(key, __data) +- const char *key; +- struct crypt_data * __restrict __data; ++_ufc_mk_keytab_r (const char *key, struct crypt_data * __restrict __data) + { + ufc_long v1, v2, *k1; + int i; +@@ -743,9 +728,7 @@ _ufc_mk_keytab_r(key, __data) + */ + + void +-_ufc_dofinalperm_r(res, __data) +- ufc_long *res; +- struct crypt_data * __restrict __data; ++_ufc_dofinalperm_r (ufc_long *res, struct crypt_data * __restrict __data) + { + ufc_long v1, v2, x; + ufc_long l1,l2,r1,r2; +@@ -918,9 +901,7 @@ __encrypt_r(__block, __edflag, __data) + weak_alias (__encrypt_r, encrypt_r) + + void +-encrypt(__block, __edflag) +- char *__block; +- int __edflag; ++encrypt (char *__block, int __edflag) + { + __encrypt_r(__block, __edflag, &_ufc_foobar); + } +@@ -932,9 +913,7 @@ encrypt(__block, __edflag) + */ + + void +-__setkey_r(__key, __data) +- const char *__key; +- struct crypt_data * __restrict __data; ++__setkey_r (const char *__key, struct crypt_data * __restrict __data) + { + int i,j; + unsigned char c; +@@ -952,8 +931,7 @@ __setkey_r(__key, __data) + weak_alias (__setkey_r, setkey_r) + + void +-setkey(__key) +- const char *__key; ++setkey (const char *__key) + { + __setkey_r(__key, &_ufc_foobar); + } +diff --git a/crypt/md5.c b/crypt/md5.c +index 16f3cda79c578fb8..84ac44a7cd1daffb 100644 +--- a/crypt/md5.c ++++ b/crypt/md5.c +@@ -67,8 +67,7 @@ static const unsigned char fillbuf[64] = { 0x80, 0 /* , 0, 0, ... */ }; + /* Initialize structure containing state of computation. + (RFC 1321, 3.3: Step 3) */ + void +-md5_init_ctx (ctx) +- struct md5_ctx *ctx; ++md5_init_ctx (struct md5_ctx *ctx) + { + ctx->A = 0x67452301; + ctx->B = 0xefcdab89; +@@ -85,9 +84,7 @@ md5_init_ctx (ctx) + IMPORTANT: On some systems it is required that RESBUF is correctly + aligned for a 32 bits value. */ + void * +-md5_read_ctx (ctx, resbuf) +- const struct md5_ctx *ctx; +- void *resbuf; ++md5_read_ctx (const struct md5_ctx *ctx, void *resbuf) + { + ((md5_uint32 *) resbuf)[0] = SWAP (ctx->A); + ((md5_uint32 *) resbuf)[1] = SWAP (ctx->B); +@@ -103,9 +100,7 @@ md5_read_ctx (ctx, resbuf) + IMPORTANT: On some systems it is required that RESBUF is correctly + aligned for a 32 bits value. */ + void * +-md5_finish_ctx (ctx, resbuf) +- struct md5_ctx *ctx; +- void *resbuf; ++md5_finish_ctx (struct md5_ctx *ctx, void *resbuf) + { + /* Take yet unprocessed bytes into account. */ + md5_uint32 bytes = ctx->buflen; +@@ -134,9 +129,7 @@ md5_finish_ctx (ctx, resbuf) + resulting message digest number will be written into the 16 bytes + beginning at RESBLOCK. */ + int +-md5_stream (stream, resblock) +- FILE *stream; +- void *resblock; ++md5_stream (FILE *stream, void *resblock) + { + /* Important: BLOCKSIZE must be a multiple of 64. */ + #define BLOCKSIZE 4096 +@@ -191,10 +184,7 @@ md5_stream (stream, resblock) + output yields to the wanted ASCII representation of the message + digest. */ + void * +-md5_buffer (buffer, len, resblock) +- const char *buffer; +- size_t len; +- void *resblock; ++md5_buffer (const char *buffer, size_t len, void *resblock) + { + struct md5_ctx ctx; + +@@ -210,10 +200,7 @@ md5_buffer (buffer, len, resblock) + + + void +-md5_process_bytes (buffer, len, ctx) +- const void *buffer; +- size_t len; +- struct md5_ctx *ctx; ++md5_process_bytes (const void *buffer, size_t len, struct md5_ctx *ctx) + { + /* When we already have some bits in our internal buffer concatenate + both inputs first. */ +diff --git a/crypt/sha256.c b/crypt/sha256.c +index 1cbd2bc8381d6778..c6b04de4e7134fae 100644 +--- a/crypt/sha256.c ++++ b/crypt/sha256.c +@@ -86,8 +86,7 @@ sha256_process_block (const void *, size_t, struct sha256_ctx *); + /* Initialize structure containing state of computation. + (FIPS 180-2:5.3.2) */ + void +-__sha256_init_ctx (ctx) +- struct sha256_ctx *ctx; ++__sha256_init_ctx (struct sha256_ctx *ctx) + { + ctx->H[0] = 0x6a09e667; + ctx->H[1] = 0xbb67ae85; +@@ -109,9 +108,7 @@ __sha256_init_ctx (ctx) + IMPORTANT: On some systems it is required that RESBUF is correctly + aligned for a 32 bits value. */ + void * +-__sha256_finish_ctx (ctx, resbuf) +- struct sha256_ctx *ctx; +- void *resbuf; ++__sha256_finish_ctx (struct sha256_ctx *ctx, void *resbuf) + { + /* Take yet unprocessed bytes into account. */ + uint32_t bytes = ctx->buflen; +@@ -144,10 +141,7 @@ __sha256_finish_ctx (ctx, resbuf) + + + void +-__sha256_process_bytes (buffer, len, ctx) +- const void *buffer; +- size_t len; +- struct sha256_ctx *ctx; ++__sha256_process_bytes (const void *buffer, size_t len, struct sha256_ctx *ctx) + { + /* When we already have some bits in our internal buffer concatenate + both inputs first. */ +diff --git a/crypt/sha512.c b/crypt/sha512.c +index c0df12e6f0395ce4..c5e23a1ea3054e41 100644 +--- a/crypt/sha512.c ++++ b/crypt/sha512.c +@@ -106,8 +106,7 @@ sha512_process_block (const void *buffer, size_t len, struct sha512_ctx *ctx); + /* Initialize structure containing state of computation. + (FIPS 180-2:5.3.3) */ + void +-__sha512_init_ctx (ctx) +- struct sha512_ctx *ctx; ++__sha512_init_ctx (struct sha512_ctx *ctx) + { + ctx->H[0] = UINT64_C (0x6a09e667f3bcc908); + ctx->H[1] = UINT64_C (0xbb67ae8584caa73b); +@@ -129,9 +128,7 @@ __sha512_init_ctx (ctx) + IMPORTANT: On some systems it is required that RESBUF is correctly + aligned for a 32 bits value. */ + void * +-__sha512_finish_ctx (ctx, resbuf) +- struct sha512_ctx *ctx; +- void *resbuf; ++__sha512_finish_ctx (struct sha512_ctx *ctx, void *resbuf) + { + /* Take yet unprocessed bytes into account. */ + uint64_t bytes = ctx->buflen; +@@ -166,10 +163,7 @@ __sha512_finish_ctx (ctx, resbuf) + + + void +-__sha512_process_bytes (buffer, len, ctx) +- const void *buffer; +- size_t len; +- struct sha512_ctx *ctx; ++__sha512_process_bytes (const void *buffer, size_t len, struct sha512_ctx *ctx) + { + /* When we already have some bits in our internal buffer concatenate + both inputs first. */ +diff --git a/ctype/isctype.c b/ctype/isctype.c +index 613161e83d142b63..a5665ce09151f2ae 100644 +--- a/ctype/isctype.c ++++ b/ctype/isctype.c +@@ -20,9 +20,7 @@ + #undef __isctype + + int +-__isctype (ch, mask) +- int ch; +- int mask; ++__isctype (int ch, int mask) + { + return (((uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS) + 128) + [(int) (ch)] & mask); +diff --git a/debug/backtrace.c b/debug/backtrace.c +index 0537f6655e62be49..c0274b82ddcc6ce9 100644 +--- a/debug/backtrace.c ++++ b/debug/backtrace.c +@@ -58,9 +58,7 @@ + #endif + + int +-__backtrace (array, size) +- void **array; +- int size; ++__backtrace (void **array, int size) + { + struct layout *current; + void *top_frame; +diff --git a/debug/backtracesymsfd.c b/debug/backtracesymsfd.c +index 297e32d6ba828ae9..092395f6ede6f030 100644 +--- a/debug/backtracesymsfd.c ++++ b/debug/backtracesymsfd.c +@@ -33,10 +33,7 @@ + + + void +-__backtrace_symbols_fd (array, size, fd) +- void *const *array; +- int size; +- int fd; ++__backtrace_symbols_fd (void *const *array, int size, int fd) + { + struct iovec iov[9]; + int cnt; +diff --git a/debug/fgets_chk.c b/debug/fgets_chk.c +index 046ac1d12f18dd60..ae3c662e62f5b6fa 100644 +--- a/debug/fgets_chk.c ++++ b/debug/fgets_chk.c +@@ -29,11 +29,7 @@ + #include + + char * +-__fgets_chk (buf, size, n, fp) +- char *buf; +- size_t size; +- int n; +- _IO_FILE *fp; ++__fgets_chk (char *buf, size_t size, int n, _IO_FILE *fp) + { + _IO_size_t count; + char *result; +diff --git a/debug/fgets_u_chk.c b/debug/fgets_u_chk.c +index 5de92e050b8fd8b6..7066bb0996c6d507 100644 +--- a/debug/fgets_u_chk.c ++++ b/debug/fgets_u_chk.c +@@ -29,11 +29,7 @@ + #include + + char * +-__fgets_unlocked_chk (buf, size, n, fp) +- char *buf; +- size_t size; +- int n; +- _IO_FILE *fp; ++__fgets_unlocked_chk (char *buf, size_t size, int n, _IO_FILE *fp) + { + _IO_size_t count; + char *result; +diff --git a/debug/memcpy_chk.c b/debug/memcpy_chk.c +index 4af85a8cb8f5c8de..08b33fc780e06614 100644 +--- a/debug/memcpy_chk.c ++++ b/debug/memcpy_chk.c +@@ -22,11 +22,7 @@ + #include + + void * +-__memcpy_chk (dstpp, srcpp, len, dstlen) +- void *dstpp; +- const void *srcpp; +- size_t len; +- size_t dstlen; ++__memcpy_chk (void *dstpp, const void *srcpp, size_t len, size_t dstlen) + { + if (__builtin_expect (dstlen < len, 0)) + __chk_fail (); +diff --git a/debug/memmove_chk.c b/debug/memmove_chk.c +index 5a304ef1b10627a1..48b796badb2c5805 100644 +--- a/debug/memmove_chk.c ++++ b/debug/memmove_chk.c +@@ -27,11 +27,7 @@ + #endif + + void * +-MEMMOVE_CHK (dest, src, len, destlen) +- void *dest; +- const void *src; +- size_t len; +- size_t destlen; ++MEMMOVE_CHK (void *dest, const void *src, size_t len, size_t destlen) + { + if (__builtin_expect (destlen < len, 0)) + __chk_fail (); +diff --git a/debug/mempcpy_chk.c b/debug/mempcpy_chk.c +index 9a4f0e2fbcdde951..bd7d2c23a72e3ffe 100644 +--- a/debug/mempcpy_chk.c ++++ b/debug/mempcpy_chk.c +@@ -23,11 +23,7 @@ + #include + + void * +-__mempcpy_chk (dstpp, srcpp, len, dstlen) +- void *dstpp; +- const void *srcpp; +- size_t len; +- size_t dstlen; ++__mempcpy_chk (void *dstpp, const void *srcpp, size_t len, size_t dstlen) + { + if (__builtin_expect (dstlen < len, 0)) + __chk_fail (); +diff --git a/debug/memset_chk.c b/debug/memset_chk.c +index ef6035119fe38d52..e637723df2a6acac 100644 +--- a/debug/memset_chk.c ++++ b/debug/memset_chk.c +@@ -19,11 +19,7 @@ + #include + + void * +-__memset_chk (dstpp, c, len, dstlen) +- void *dstpp; +- int c; +- size_t len; +- size_t dstlen; ++__memset_chk (void *dstpp, int c, size_t len, size_t dstlen) + { + if (__builtin_expect (dstlen < len, 0)) + __chk_fail (); +diff --git a/debug/strcat_chk.c b/debug/strcat_chk.c +index 8f842ee8556afbc6..a4dce8cf34ce4bd4 100644 +--- a/debug/strcat_chk.c ++++ b/debug/strcat_chk.c +@@ -21,10 +21,7 @@ + + /* Append SRC on the end of DEST. */ + char * +-__strcat_chk (dest, src, destlen) +- char *dest; +- const char *src; +- size_t destlen; ++__strcat_chk (char *dest, const char *src, size_t destlen) + { + char *s1 = dest; + const char *s2 = src; +diff --git a/debug/strncat_chk.c b/debug/strncat_chk.c +index c26933154398873b..26080f41d4765f85 100644 +--- a/debug/strncat_chk.c ++++ b/debug/strncat_chk.c +@@ -21,11 +21,7 @@ + + + char * +-__strncat_chk (s1, s2, n, s1len) +- char *s1; +- const char *s2; +- size_t n; +- size_t s1len; ++__strncat_chk (char *s1, const char *s2, size_t n, size_t s1len) + { + char c; + char *s = s1; +diff --git a/debug/strncpy_chk.c b/debug/strncpy_chk.c +index e34c1e5d67f1957f..a092337c2e8654c2 100644 +--- a/debug/strncpy_chk.c ++++ b/debug/strncpy_chk.c +@@ -20,11 +20,7 @@ + + + char * +-__strncpy_chk (s1, s2, n, s1len) +- char *s1; +- const char *s2; +- size_t n; +- size_t s1len; ++__strncpy_chk (char *s1, const char *s2, size_t n, size_t s1len) + { + char c; + char *s = s1; +diff --git a/debug/vsprintf_chk.c b/debug/vsprintf_chk.c +index 6b2d69b6a040862d..e4abba80e8657773 100644 +--- a/debug/vsprintf_chk.c ++++ b/debug/vsprintf_chk.c +@@ -24,9 +24,7 @@ + static int _IO_str_chk_overflow (_IO_FILE *fp, int c) __THROW; + + static int +-_IO_str_chk_overflow (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_str_chk_overflow (_IO_FILE *fp, int c) + { + /* When we come to here this means the user supplied buffer is + filled. */ +diff --git a/dirent/dirfd.c b/dirent/dirfd.c +index 2cab938ad36e3f24..51b136afa3aef835 100644 +--- a/dirent/dirfd.c ++++ b/dirent/dirfd.c +@@ -21,8 +21,7 @@ + #include + + int +-dirfd (dirp) +- DIR *dirp; ++dirfd (DIR *dirp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/dirent/getdents.c b/dirent/getdents.c +index 3b52227f743dda65..0416589e31a08841 100644 +--- a/dirent/getdents.c ++++ b/dirent/getdents.c +@@ -21,11 +21,7 @@ + #include + + ssize_t +-__getdirentries (fd, buf, nbytes, basep) +- int fd; +- char *buf; +- size_t nbytes; +- off_t *basep; ++__getdirentries (int fd, char *buf, size_t nbytes, off_t *basep) + { + __set_errno (ENOSYS); + return -1; +diff --git a/dirent/getdents64.c b/dirent/getdents64.c +index 63b0435db5112d5a..4dca8266077604ab 100644 +--- a/dirent/getdents64.c ++++ b/dirent/getdents64.c +@@ -21,11 +21,7 @@ + #include + + ssize_t +-getdirentries64 (fd, buf, nbytes, basep) +- int fd; +- char *buf; +- size_t nbytes; +- off64_t *basep; ++getdirentries64 (int fd, char *buf, size_t nbytes, off64_t *basep) + { + __set_errno (ENOSYS); + return -1; +diff --git a/dirent/rewinddir.c b/dirent/rewinddir.c +index 78e4d5399d195400..1cbc53cc0a1b1e7a 100644 +--- a/dirent/rewinddir.c ++++ b/dirent/rewinddir.c +@@ -22,8 +22,7 @@ + + /* Rewind DIRP to the beginning of the directory. */ + void +-rewinddir (dirp) +- DIR *dirp; ++rewinddir (DIR *dirp) + { + __set_errno (ENOSYS); + /* No way to indicate failure. */ +diff --git a/dirent/seekdir.c b/dirent/seekdir.c +index a274bcdeb0c690a8..8e572d93d688fa17 100644 +--- a/dirent/seekdir.c ++++ b/dirent/seekdir.c +@@ -22,9 +22,7 @@ + + /* Seek to position POS in DIRP. */ + void +-seekdir (dirp, pos) +- DIR *dirp; +- long int pos; ++seekdir (DIR *dirp, long int pos) + { + if (dirp == NULL) + { +diff --git a/dirent/telldir.c b/dirent/telldir.c +index a00e750063aa9e3b..93edf4e8d05b2d99 100644 +--- a/dirent/telldir.c ++++ b/dirent/telldir.c +@@ -22,8 +22,7 @@ + + /* Return the current position of DIRP. */ + long int +-telldir (dirp) +- DIR *dirp; ++telldir (DIR *dirp) + { + if (dirp == NULL) + { +diff --git a/elf/sln.c b/elf/sln.c +index 1bad21f22629b1c6..9b4808cd82f553c7 100644 +--- a/elf/sln.c ++++ b/elf/sln.c +@@ -87,8 +87,7 @@ usage (void) + } + + static int +-makesymlinks (file) +- const char *file; ++makesymlinks (const char *file) + { + #ifndef PATH_MAX + #define PATH_MAX 4095 +@@ -163,9 +162,7 @@ makesymlinks (file) + } + + static int +-makesymlink (src, dest) +- const char *src; +- const char *dest; ++makesymlink (const char *src, const char *dest) + { + struct stat stats; + const char *error; +diff --git a/gmon/gmon.c b/gmon/gmon.c +index 9774d57ccced2079..e9988c06c4d3a569 100644 +--- a/gmon/gmon.c ++++ b/gmon/gmon.c +@@ -72,8 +72,7 @@ static void write_bb_counts (int fd) internal_function; + * all the data structures are ready. + */ + void +-__moncontrol (mode) +- int mode; ++__moncontrol (int mode) + { + struct gmonparam *p = &_gmonparam; + +@@ -98,9 +97,7 @@ weak_alias (__moncontrol, moncontrol) + + + void +-__monstartup (lowpc, highpc) +- u_long lowpc; +- u_long highpc; ++__monstartup (u_long lowpc, u_long highpc) + { + int o; + char *cp; +@@ -175,8 +172,7 @@ weak_alias (__monstartup, monstartup) + + static void + internal_function +-write_hist (fd) +- int fd; ++write_hist (int fd) + { + u_char tag = GMON_TAG_TIME_HIST; + +@@ -227,8 +223,7 @@ write_hist (fd) + + static void + internal_function +-write_call_graph (fd) +- int fd; ++write_call_graph (int fd) + { + #define NARCS_PER_WRITEV 32 + u_char tag = GMON_TAG_CG_ARC; +@@ -290,8 +285,7 @@ write_call_graph (fd) + + static void + internal_function +-write_bb_counts (fd) +- int fd; ++write_bb_counts (int fd) + { + struct __bb *grp; + u_char tag = GMON_TAG_BB_COUNT; +diff --git a/grp/setgroups.c b/grp/setgroups.c +index 2de0c8fd9a7b4681..c20a794ad6263e92 100644 +--- a/grp/setgroups.c ++++ b/grp/setgroups.c +@@ -21,9 +21,7 @@ + + /* Set the group set for the current user to GROUPS (N of them). */ + int +-setgroups (n, groups) +- size_t n; +- const gid_t *groups; ++setgroups (size_t n, const gid_t *groups) + { + __set_errno (ENOSYS); + return -1; +diff --git a/inet/inet_lnaof.c b/inet/inet_lnaof.c +index c993c8b8471f4215..8fd759ccbb01557c 100644 +--- a/inet/inet_lnaof.c ++++ b/inet/inet_lnaof.c +@@ -41,8 +41,7 @@ static char sccsid[] = "@(#)inet_lnaof.c 8.1 (Berkeley) 6/4/93"; + * number formats. + */ + in_addr_t +-inet_lnaof(in) +- struct in_addr in; ++inet_lnaof (struct in_addr in) + { + u_int32_t i = ntohl(in.s_addr); + +diff --git a/inet/inet_net.c b/inet/inet_net.c +index 68e232f3d3dc1e1d..93e230cadfac57d9 100644 +--- a/inet/inet_net.c ++++ b/inet/inet_net.c +@@ -42,8 +42,7 @@ static char sccsid[] = "@(#)inet_network.c 8.1 (Berkeley) 6/4/93"; + * network numbers. + */ + u_int32_t +-inet_network(cp) +- const char *cp; ++inet_network (const char *cp) + { + u_int32_t val, base, n, i; + char c; +diff --git a/inet/inet_netof.c b/inet/inet_netof.c +index 9b0aed992e9ba65f..0f048e6c46edff7a 100644 +--- a/inet/inet_netof.c ++++ b/inet/inet_netof.c +@@ -40,8 +40,7 @@ static char sccsid[] = "@(#)inet_netof.c 8.1 (Berkeley) 6/4/93"; + * address; handles class a/b/c network #'s. + */ + in_addr_t +-inet_netof(in) +- struct in_addr in; ++inet_netof (struct in_addr in) + { + u_int32_t i = ntohl(in.s_addr); + +diff --git a/inet/rcmd.c b/inet/rcmd.c +index 7da79b0730d9ad3a..efca27d674720e9c 100644 +--- a/inet/rcmd.c ++++ b/inet/rcmd.c +@@ -370,9 +370,7 @@ rcmd(ahost, rport, locuser, remuser, cmd, fd2p) + } + + int +-rresvport_af(alport, family) +- int *alport; +- sa_family_t family; ++rresvport_af (int *alport, sa_family_t family) + { + struct sockaddr_storage ss; + int s; +@@ -427,8 +425,7 @@ rresvport_af(alport, family) + libc_hidden_def (rresvport_af) + + int +-rresvport(alport) +- int *alport; ++rresvport (int *alport) + { + return rresvport_af(alport, AF_INET); + } +diff --git a/io/access.c b/io/access.c +index 9b82a99a56bd67b7..c293698127599116 100644 +--- a/io/access.c ++++ b/io/access.c +@@ -21,9 +21,7 @@ + + /* Test for access to FILE. */ + int +-__access (file, type) +- const char *file; +- int type; ++__access (const char *file, int type) + { + if (file == NULL || (type & ~(R_OK|W_OK|X_OK|F_OK)) != 0) + { +diff --git a/io/chdir.c b/io/chdir.c +index 251afd3ce6fc19f6..6febaadb689cae59 100644 +--- a/io/chdir.c ++++ b/io/chdir.c +@@ -21,8 +21,7 @@ + + /* Change the current directory to PATH. */ + int +-__chdir (path) +- const char *path; ++__chdir (const char *path) + { + if (path == NULL) + { +diff --git a/io/chmod.c b/io/chmod.c +index 8e4be3dfb125a710..bc77dad2c5cdb69e 100644 +--- a/io/chmod.c ++++ b/io/chmod.c +@@ -22,9 +22,7 @@ + + /* Change the protections of FILE to MODE. */ + int +-__chmod (file, mode) +- const char *file; +- mode_t mode; ++__chmod (const char *file, mode_t mode) + { + if (file == NULL) + { +diff --git a/io/chown.c b/io/chown.c +index 45bd9e248498c4f4..f710c355b19f2ee0 100644 +--- a/io/chown.c ++++ b/io/chown.c +@@ -23,10 +23,7 @@ + + /* Change the owner and group of FILE. */ + int +-__chown (file, owner, group) +- const char *file; +- uid_t owner; +- gid_t group; ++__chown (const char *file, uid_t owner, gid_t group) + { + if (file == NULL) + { +diff --git a/io/close.c b/io/close.c +index ce9276ff7dd274e2..c2a3e0c2bbd99e57 100644 +--- a/io/close.c ++++ b/io/close.c +@@ -20,8 +20,7 @@ + + /* Close the file descriptor FD. */ + int +-__close (fd) +- int fd; ++__close (int fd) + { + if (fd < 0) + { +diff --git a/io/creat.c b/io/creat.c +index 10edff1939253506..15b6f185117beb8d 100644 +--- a/io/creat.c ++++ b/io/creat.c +@@ -23,9 +23,7 @@ + + /* Create FILE with protections MODE. */ + int +-__libc_creat (file, mode) +- const char *file; +- mode_t mode; ++__libc_creat (const char *file, mode_t mode) + { + return __open (file, O_WRONLY|O_CREAT|O_TRUNC, mode); + } +diff --git a/io/creat64.c b/io/creat64.c +index 450c5359f940e1d9..d94bb1047315b56a 100644 +--- a/io/creat64.c ++++ b/io/creat64.c +@@ -22,9 +22,7 @@ + + /* Create FILE with protections MODE. */ + int +-creat64 (file, mode) +- const char *file; +- mode_t mode; ++creat64 (const char *file, mode_t mode) + { + return __open64 (file, O_WRONLY|O_CREAT|O_TRUNC, mode); + } +diff --git a/io/dup.c b/io/dup.c +index c659de3d0a14e20d..b9140d96a8a97464 100644 +--- a/io/dup.c ++++ b/io/dup.c +@@ -21,8 +21,7 @@ + + /* Duplicate FD, returning a new file descriptor open on the same file. */ + int +-__dup (fd) +- int fd; ++__dup (int fd) + { + __set_errno (ENOSYS); + return -1; +diff --git a/io/dup2.c b/io/dup2.c +index a043af5a08ba3cac..9e3b2955218070f2 100644 +--- a/io/dup2.c ++++ b/io/dup2.c +@@ -23,9 +23,7 @@ + /* Duplicate FD to FD2, closing the old FD2 and making FD2 be + open the same file as FD is. Return FD2 or -1. */ + int +-__dup2 (fd, fd2) +- int fd; +- int fd2; ++__dup2 (int fd, int fd2) + { + if (fd < 0 || fd2 < 0) + { +diff --git a/io/dup3.c b/io/dup3.c +index 4df7e9bc4b177d00..85f73430f246e71f 100644 +--- a/io/dup3.c ++++ b/io/dup3.c +@@ -24,10 +24,7 @@ + open the same file as FD is which setting flags according to + FLAGS. Return FD2 or -1. */ + int +-__dup3 (fd, fd2, flags) +- int fd; +- int fd2; +- int flags; ++__dup3 (int fd, int fd2, int flags) + { + if (fd < 0 || fd2 < 0) + { +diff --git a/io/euidaccess.c b/io/euidaccess.c +index d71d22139dc7d67c..810478d5b700dcbb 100644 +--- a/io/euidaccess.c ++++ b/io/euidaccess.c +@@ -21,9 +21,7 @@ + #include + + int +-__euidaccess (file, type) +- const char *file; +- int type; ++__euidaccess (const char *file, int type) + { + if (file == NULL || (type & ~(R_OK|W_OK|X_OK|F_OK)) != 0) + { +diff --git a/io/faccessat.c b/io/faccessat.c +index 4e8e46c05323cbb3..e56c9804d793d1e2 100644 +--- a/io/faccessat.c ++++ b/io/faccessat.c +@@ -23,11 +23,7 @@ + #include + + int +-faccessat (fd, file, type, flag) +- int fd; +- const char *file; +- int type; +- int flag; ++faccessat (int fd, const char *file, int type, int flag) + { + if (file == NULL || (flag & ~(AT_SYMLINK_NOFOLLOW | AT_EACCESS)) != 0 + || (type & ~(R_OK|W_OK|X_OK|F_OK)) != 0) +diff --git a/io/fchmod.c b/io/fchmod.c +index b5dc512dd084d34b..b46e40f59ce84420 100644 +--- a/io/fchmod.c ++++ b/io/fchmod.c +@@ -22,9 +22,7 @@ + + /* Change the permissions of the file referenced by FD to MODE. */ + int +-__fchmod (fd, mode) +- int fd; +- mode_t mode; ++__fchmod (int fd, mode_t mode) + { + if (fd < 0) + { +diff --git a/io/fchmodat.c b/io/fchmodat.c +index 1bbe63edcf9bf0cb..935d57d89440d80e 100644 +--- a/io/fchmodat.c ++++ b/io/fchmodat.c +@@ -24,11 +24,7 @@ + #include + + int +-fchmodat (fd, file, mode, flag) +- int fd; +- const char *file; +- mode_t mode; +- int flag; ++fchmodat (int fd, const char *file, mode_t mode, int flag) + { + if (file == NULL || (flag & ~AT_SYMLINK_NOFOLLOW) != 0) + { +diff --git a/io/fchown.c b/io/fchown.c +index c98b84e27a973ef5..d87921e90d5f4f53 100644 +--- a/io/fchown.c ++++ b/io/fchown.c +@@ -22,10 +22,7 @@ + + /* Change the owner and group of the file referred to by FD. */ + int +-__fchown (fd, owner, group) +- int fd; +- uid_t owner; +- gid_t group; ++__fchown (int fd, uid_t owner, gid_t group) + { + if (fd < 0) + { +diff --git a/io/fchownat.c b/io/fchownat.c +index 8f82ce6f4b246957..8c65b867c0f476e2 100644 +--- a/io/fchownat.c ++++ b/io/fchownat.c +@@ -23,12 +23,7 @@ + + /* Change the owner and group of FILE. */ + int +-fchownat (fd, file, owner, group, flag) +- int fd; +- const char *file; +- uid_t owner; +- gid_t group; +- int flag; ++fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag) + { + if (file == NULL || (flag & ~AT_SYMLINK_NOFOLLOW) != 0) + { +diff --git a/io/fcntl.c b/io/fcntl.c +index 766f605e31be58a3..335c1a4aaaa97eab 100644 +--- a/io/fcntl.c ++++ b/io/fcntl.c +@@ -20,9 +20,7 @@ + + /* Perform file control operations on FD. */ + int +-__fcntl (fd, cmd) +- int fd; +- int cmd; ++__fcntl (int fd, int cmd) + { + if (fd < 0) + { +diff --git a/io/flock.c b/io/flock.c +index 68f1b448ba4125db..2e4449a211e5ad4a 100644 +--- a/io/flock.c ++++ b/io/flock.c +@@ -21,9 +21,7 @@ + /* Apply or remove an advisory lock, according to OPERATION, + on the file FD refers to. */ + int +-__flock (fd, operation) +- int fd; +- int operation; ++__flock (int fd, int operation) + { + __set_errno (ENOSYS); + return -1; +diff --git a/io/fts.c b/io/fts.c +index c9c054d6d36ab20f..275608591739ce63 100644 +--- a/io/fts.c ++++ b/io/fts.c +@@ -202,9 +202,7 @@ mem1: free(sp); + + static void + internal_function +-fts_load(sp, p) +- FTS *sp; +- FTSENT *p; ++fts_load (FTS *sp, FTSENT *p) + { + int len; + char *cp; +@@ -228,8 +226,7 @@ fts_load(sp, p) + } + + int +-fts_close(sp) +- FTS *sp; ++fts_close (FTS *sp) + { + FTSENT *freep, *p; + int saved_errno; +@@ -282,8 +279,7 @@ fts_close(sp) + ? p->fts_pathlen - 1 : p->fts_pathlen) + + FTSENT * +-fts_read(sp) +- FTS *sp; ++fts_read (FTS *sp) + { + FTSENT *p, *tmp; + int instr; +@@ -479,10 +475,7 @@ name: t = sp->fts_path + NAPPEND(p->fts_parent); + */ + /* ARGSUSED */ + int +-fts_set(sp, p, instr) +- FTS *sp; +- FTSENT *p; +- int instr; ++fts_set (FTS *sp, FTSENT *p, int instr) + { + if (instr != 0 && instr != FTS_AGAIN && instr != FTS_FOLLOW && + instr != FTS_NOINSTR && instr != FTS_SKIP) { +@@ -494,9 +487,7 @@ fts_set(sp, p, instr) + } + + FTSENT * +-fts_children(sp, instr) +- FTS *sp; +- int instr; ++fts_children (FTS *sp, int instr) + { + FTSENT *p; + int fd; +@@ -577,9 +568,7 @@ fts_children(sp, instr) + */ + static FTSENT * + internal_function +-fts_build(sp, type) +- FTS *sp; +- int type; ++fts_build (FTS *sp, int type) + { + struct dirent *dp; + FTSENT *p, *head; +@@ -846,10 +835,7 @@ mem1: saved_errno = errno; + + static u_short + internal_function +-fts_stat(sp, p, follow) +- FTS *sp; +- FTSENT *p; +- int follow; ++fts_stat (FTS *sp, FTSENT *p, int follow) + { + FTSENT *t; + dev_t dev; +@@ -930,10 +916,7 @@ err: memset(sbp, 0, sizeof(struct stat)); + + static FTSENT * + internal_function +-fts_sort(sp, head, nitems) +- FTS *sp; +- FTSENT *head; +- int nitems; ++fts_sort (FTS *sp, FTSENT *head, int nitems) + { + FTSENT **ap, *p; + +@@ -968,10 +951,7 @@ fts_sort(sp, head, nitems) + + static FTSENT * + internal_function +-fts_alloc(sp, name, namelen) +- FTS *sp; +- const char *name; +- size_t namelen; ++fts_alloc (FTS *sp, const char *name, size_t namelen) + { + FTSENT *p; + size_t len; +@@ -1008,8 +988,7 @@ fts_alloc(sp, name, namelen) + + static void + internal_function +-fts_lfree(head) +- FTSENT *head; ++fts_lfree (FTSENT *head) + { + FTSENT *p; + +@@ -1028,9 +1007,7 @@ fts_lfree(head) + */ + static int + internal_function +-fts_palloc(sp, more) +- FTS *sp; +- size_t more; ++fts_palloc (FTS *sp, size_t more) + { + char *p; + +@@ -1062,9 +1039,7 @@ fts_palloc(sp, more) + */ + static void + internal_function +-fts_padjust(sp, head) +- FTS *sp; +- FTSENT *head; ++fts_padjust (FTS *sp, FTSENT *head) + { + FTSENT *p; + char *addr = sp->fts_path; +@@ -1089,8 +1064,7 @@ fts_padjust(sp, head) + + static size_t + internal_function +-fts_maxarglen(argv) +- char * const *argv; ++fts_maxarglen (char * const *argv) + { + size_t len, max; + +@@ -1107,11 +1081,7 @@ fts_maxarglen(argv) + */ + static int + internal_function +-fts_safe_changedir(sp, p, fd, path) +- FTS *sp; +- FTSENT *p; +- int fd; +- const char *path; ++fts_safe_changedir (FTS *sp, FTSENT *p, int fd, const char *path) + { + int ret, oerrno, newfd; + struct stat64 sb; +diff --git a/io/getwd.c b/io/getwd.c +index a77fd59013872301..27ea951d9fbfaf2b 100644 +--- a/io/getwd.c ++++ b/io/getwd.c +@@ -23,8 +23,7 @@ + + + char * +-getwd (buf) +- char *buf; ++getwd (char *buf) + { + #ifndef PATH_MAX + #define PATH_MAX 1024 +diff --git a/io/isatty.c b/io/isatty.c +index eb532711cc550051..e0faddf1e7107bd2 100644 +--- a/io/isatty.c ++++ b/io/isatty.c +@@ -20,8 +20,7 @@ + + /* Return 1 if FD is a terminal, 0 if not. */ + int +-__isatty (fd) +- int fd; ++__isatty (int fd) + { + __set_errno (ENOSYS); + return -1; +diff --git a/io/lchown.c b/io/lchown.c +index 682083c9e4cf47e7..1ec25c23e817b2c5 100644 +--- a/io/lchown.c ++++ b/io/lchown.c +@@ -22,10 +22,7 @@ + + /* Change the owner and group of FILE. */ + int +-__lchown (file, owner, group) +- const char *file; +- uid_t owner; +- gid_t group; ++__lchown (const char *file, uid_t owner, gid_t group) + { + if (file == NULL) + { +diff --git a/io/link.c b/io/link.c +index b43f5eb2a8ab1a1e..820e6cfc590f975e 100644 +--- a/io/link.c ++++ b/io/link.c +@@ -22,9 +22,7 @@ + + /* Make a link to FROM called TO. */ + int +-__link (from, to) +- const char *from; +- const char *to; ++__link (const char *from, const char *to) + { + if (from == NULL || to == NULL) + { +diff --git a/io/linkat.c b/io/linkat.c +index 6274d09390add9ab..4ed237049a7d6fa4 100644 +--- a/io/linkat.c ++++ b/io/linkat.c +@@ -23,12 +23,7 @@ + + /* Make a link to FROM relative to FROMFD called TO relative to TOFD. */ + int +-linkat (fromfd, from, tofd, to, flags) +- int fromfd; +- const char *from; +- int tofd; +- const char *to; +- int flags; ++linkat (int fromfd, const char *from, int tofd, const char *to, int flags) + { + if (from == NULL || to == NULL) + { +diff --git a/io/lseek.c b/io/lseek.c +index 7fd6188a76fabdab..ac27e32386fec713 100644 +--- a/io/lseek.c ++++ b/io/lseek.c +@@ -21,10 +21,7 @@ + + /* Seek to OFFSET on FD, starting from WHENCE. */ + off_t +-__lseek (fd, offset, whence) +- int fd; +- off_t offset; +- int whence; ++__lseek (int fd, off_t offset, int whence) + { + if (fd < 0) + { +diff --git a/io/mkdir.c b/io/mkdir.c +index 39c3db175ab9a4c4..802c38931f21dea8 100644 +--- a/io/mkdir.c ++++ b/io/mkdir.c +@@ -23,9 +23,7 @@ + + /* Create a directory named PATH with protections MODE. */ + int +-__mkdir (path, mode) +- const char *path; +- mode_t mode; ++__mkdir (const char *path, mode_t mode) + { + if (path == NULL) + { +diff --git a/io/mkdirat.c b/io/mkdirat.c +index e8d10aea4b1696cc..74db2cc18b7c7881 100644 +--- a/io/mkdirat.c ++++ b/io/mkdirat.c +@@ -24,10 +24,7 @@ + + /* Create a directory named PATH relative to FD with protections MODE. */ + int +-mkdirat (fd, path, mode) +- int fd; +- const char *path; +- mode_t mode; ++mkdirat (int fd, const char *path, mode_t mode) + { + if (path == NULL) + { +diff --git a/io/mkfifo.c b/io/mkfifo.c +index 8fdd0214f29213fc..d3b47e75eaf5ae04 100644 +--- a/io/mkfifo.c ++++ b/io/mkfifo.c +@@ -23,9 +23,7 @@ + + /* Create a named pipe (FIFO) named PATH with protections MODE. */ + int +-mkfifo (path, mode) +- const char *path; +- mode_t mode; ++mkfifo (const char *path, mode_t mode) + { + if (path == NULL) + { +diff --git a/io/mkfifoat.c b/io/mkfifoat.c +index 850d5671fbcefe1e..0a0d04fa7051585e 100644 +--- a/io/mkfifoat.c ++++ b/io/mkfifoat.c +@@ -25,10 +25,7 @@ + /* Create a named pipe (FIFO) named PATH relative to FD with + protections MODE. */ + int +-mkfifoat (fd, path, mode) +- int fd; +- const char *path; +- mode_t mode; ++mkfifoat (int fd, const char *path, mode_t mode) + { + if (path == NULL) + { +diff --git a/io/open.c b/io/open.c +index 1057763fbc721fc7..54c270128e083891 100644 +--- a/io/open.c ++++ b/io/open.c +@@ -26,9 +26,7 @@ + /* Open FILE with access OFLAG. If O_CREAT or O_TMPFILE is in OFLAG, + a third argument is the file protection. */ + int +-__libc_open (file, oflag) +- const char *file; +- int oflag; ++__libc_open (const char *file, int oflag) + { + int mode; + +diff --git a/io/open64.c b/io/open64.c +index 221133eda96545d6..489a9b5ccdb92b5d 100644 +--- a/io/open64.c ++++ b/io/open64.c +@@ -25,9 +25,7 @@ + /* Open FILE with access OFLAG. If O_CREAT or O_TMPFILE is in OFLAG, + a third argument is the file protection. */ + int +-__libc_open64 (file, oflag) +- const char *file; +- int oflag; ++__libc_open64 (const char *file, int oflag) + { + int mode; + +diff --git a/io/readlink.c b/io/readlink.c +index 4a1811b5cfac3e65..4633ebc9fd9ca75c 100644 +--- a/io/readlink.c ++++ b/io/readlink.c +@@ -22,10 +22,7 @@ + LEN bytes of BUF. The contents are not null-terminated. + Returns the number of characters read, or -1 for errors. */ + ssize_t +-__readlink (path, buf, len) +- const char *path; +- char *buf; +- size_t len; ++__readlink (const char *path, char *buf, size_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/io/readlinkat.c b/io/readlinkat.c +index 473f4e9c5b7b86f7..88ff2e383e75ec56 100644 +--- a/io/readlinkat.c ++++ b/io/readlinkat.c +@@ -23,11 +23,7 @@ + more than LEN bytes of BUF. The contents are not null-terminated. + Returns the number of characters read, or -1 for errors. */ + ssize_t +-readlinkat (fd, path, buf, len) +- int fd; +- const char *path; +- char *buf; +- size_t len; ++readlinkat (int fd, const char *path, char *buf, size_t len) + { + if (path == NULL) + { +diff --git a/io/rmdir.c b/io/rmdir.c +index 83c76369e38c2595..4f8685d34716a9fd 100644 +--- a/io/rmdir.c ++++ b/io/rmdir.c +@@ -22,8 +22,7 @@ + + /* Remove the directory PATH. */ + int +-__rmdir (path) +- const char *path; ++__rmdir (const char *path) + { + if (path == NULL) + { +diff --git a/io/symlink.c b/io/symlink.c +index 298854f3b34d0777..b53de4d9413a7f98 100644 +--- a/io/symlink.c ++++ b/io/symlink.c +@@ -22,9 +22,7 @@ + + /* Make a link to FROM called TO. */ + int +-__symlink (from, to) +- const char *from; +- const char *to; ++__symlink (const char *from, const char *to) + { + if (from == NULL || to == NULL) + { +diff --git a/io/symlinkat.c b/io/symlinkat.c +index 4937a2eaecd4f523..4552f320f3669ab2 100644 +--- a/io/symlinkat.c ++++ b/io/symlinkat.c +@@ -23,10 +23,7 @@ + + /* Make a link to FROM called TO relative to FD. */ + int +-symlinkat (from, fd, to) +- const char *from; +- int fd; +- const char *to; ++symlinkat (const char *from, int fd, const char *to) + { + if (from == NULL || to == NULL) + { +diff --git a/io/ttyname.c b/io/ttyname.c +index 8df1fd46bf5ec7f7..7d6baf4e13d8f71a 100644 +--- a/io/ttyname.c ++++ b/io/ttyname.c +@@ -25,8 +25,7 @@ char *__ttyname = NULL; + /* Return the pathname of the terminal FD is open on, or NULL on errors. + The returned storage is good only until the next call to this function. */ + char * +-ttyname (fd) +- int fd; ++ttyname (int fd) + { + __set_errno (ENOSYS); + return NULL; +diff --git a/io/ttyname_r.c b/io/ttyname_r.c +index 6d7dfabd69c2e691..d8c8d13523cb1ba3 100644 +--- a/io/ttyname_r.c ++++ b/io/ttyname_r.c +@@ -22,10 +22,7 @@ + /* Store at most BUFLEN characters the pathname of the terminal FD is + open on in BUF. Return 0 on success, otherwise an error number. */ + int +-__ttyname_r (fd, buf, buflen) +- int fd; +- char *buf; +- size_t buflen; ++__ttyname_r (int fd, char *buf, size_t buflen) + { + __set_errno (ENOSYS); + return ENOSYS; +diff --git a/io/umask.c b/io/umask.c +index 07d7150e35a7ac82..13706f1a9d38d068 100644 +--- a/io/umask.c ++++ b/io/umask.c +@@ -21,8 +21,7 @@ + + /* Set the file creation mask to MASK, returning the old mask. */ + mode_t +-__umask (mask) +- mode_t mask; ++__umask (mode_t mask) + { + __set_errno (ENOSYS); + return -1; +diff --git a/io/unlink.c b/io/unlink.c +index b7a6d7cce41f932d..079492ff7efe87a6 100644 +--- a/io/unlink.c ++++ b/io/unlink.c +@@ -22,8 +22,7 @@ + + /* Remove the link named NAME. */ + int +-__unlink (name) +- const char *name; ++__unlink (const char *name) + { + if (name == NULL) + { +diff --git a/io/unlinkat.c b/io/unlinkat.c +index afa505380db56473..684be771d2d832ab 100644 +--- a/io/unlinkat.c ++++ b/io/unlinkat.c +@@ -23,10 +23,7 @@ + + /* Remove the link named NAME. */ + int +-unlinkat (fd, name, flag) +- int fd; +- const char *name; +- int flag; ++unlinkat (int fd, const char *name, int flag) + { + if (name == NULL || (flag & AT_REMOVEDIR) != 0) + { +diff --git a/io/utime.c b/io/utime.c +index 7b307762dfdb85d7..3384939031efbd5c 100644 +--- a/io/utime.c ++++ b/io/utime.c +@@ -23,9 +23,7 @@ + /* Set the access and modification times of FILE to those given in TIMES. + If TIMES is NULL, set them to the current time. */ + int +-utime (file, times) +- const char *file; +- const struct utimbuf *times; ++utime (const char *file, const struct utimbuf *times) + { + if (file == NULL) + { +diff --git a/libio/clearerr.c b/libio/clearerr.c +index 79ba45da5f8fcd66..b45b4355dd7edfe1 100644 +--- a/libio/clearerr.c ++++ b/libio/clearerr.c +@@ -19,8 +19,7 @@ + #include "stdio.h" + + void +-clearerr (fp) +- FILE *fp; ++clearerr (FILE *fp) + { + CHECK_FILE (fp, /*nothing*/); + _IO_flockfile (fp); +diff --git a/libio/clearerr_u.c b/libio/clearerr_u.c +index a2c5e6c31e5e417b..9b394adef970ad14 100644 +--- a/libio/clearerr_u.c ++++ b/libio/clearerr_u.c +@@ -19,8 +19,7 @@ + #include "stdio.h" + + void +-clearerr_unlocked (fp) +- FILE *fp; ++clearerr_unlocked (FILE *fp) + { + CHECK_FILE (fp, /*nothing*/); + _IO_clearerr (fp); +diff --git a/libio/feof.c b/libio/feof.c +index 71e775b0616b2656..1e23cdd00c23e6b7 100644 +--- a/libio/feof.c ++++ b/libio/feof.c +@@ -28,8 +28,7 @@ + #include "stdio.h" + + int +-_IO_feof (fp) +- _IO_FILE* fp; ++_IO_feof (_IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/feof_u.c b/libio/feof_u.c +index aede4da1dd4d90ba..5faf25f2d0479a88 100644 +--- a/libio/feof_u.c ++++ b/libio/feof_u.c +@@ -30,8 +30,7 @@ + #undef feof_unlocked + + int +-feof_unlocked (fp) +- _IO_FILE* fp; ++feof_unlocked (_IO_FILE *fp) + { + CHECK_FILE (fp, EOF); + return _IO_feof_unlocked (fp); +diff --git a/libio/ferror.c b/libio/ferror.c +index 6c8ce615aef9ae4a..22dae5dc35fce4db 100644 +--- a/libio/ferror.c ++++ b/libio/ferror.c +@@ -28,8 +28,7 @@ + #include "stdio.h" + + int +-_IO_ferror (fp) +- _IO_FILE* fp; ++_IO_ferror (_IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/ferror_u.c b/libio/ferror_u.c +index 234759077caa8e7b..5d6b0595c084ff0b 100644 +--- a/libio/ferror_u.c ++++ b/libio/ferror_u.c +@@ -30,8 +30,7 @@ + #undef ferror_unlocked + + int +-ferror_unlocked (fp) +- _IO_FILE* fp; ++ferror_unlocked (_IO_FILE *fp) + { + CHECK_FILE (fp, EOF); + return _IO_ferror_unlocked (fp); +diff --git a/libio/filedoalloc.c b/libio/filedoalloc.c +index 58641236bc4d5368..c59dc738beb20b66 100644 +--- a/libio/filedoalloc.c ++++ b/libio/filedoalloc.c +@@ -91,8 +91,7 @@ local_isatty (int fd) + */ + + int +-_IO_file_doallocate (fp) +- _IO_FILE *fp; ++_IO_file_doallocate (_IO_FILE *fp) + { + _IO_size_t size; + char *p; +diff --git a/libio/fileno.c b/libio/fileno.c +index 49e239394eac7790..7c2450e0ce9c5f15 100644 +--- a/libio/fileno.c ++++ b/libio/fileno.c +@@ -28,8 +28,7 @@ + #include + + int +-fileno (fp) +- _IO_FILE* fp; ++fileno (_IO_FILE *fp) + { + CHECK_FILE (fp, EOF); + +diff --git a/libio/fputc.c b/libio/fputc.c +index 97ec4eac0810dd45..98701cbd9fabbdc5 100644 +--- a/libio/fputc.c ++++ b/libio/fputc.c +@@ -28,9 +28,7 @@ + #include "stdio.h" + + int +-fputc (c, fp) +- int c; +- _IO_FILE *fp; ++fputc (int c, _IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/fputc_u.c b/libio/fputc_u.c +index 24dd9ed774131e6f..4b556eb78ffa69b9 100644 +--- a/libio/fputc_u.c ++++ b/libio/fputc_u.c +@@ -30,9 +30,7 @@ + #undef fputc_unlocked + + int +-fputc_unlocked (c, fp) +- int c; +- _IO_FILE *fp; ++fputc_unlocked (int c, _IO_FILE *fp) + { + CHECK_FILE (fp, EOF); + return _IO_putc_unlocked (c, fp); +diff --git a/libio/fputwc.c b/libio/fputwc.c +index e93527f2dcd6b9cb..80accb89310e3c8c 100644 +--- a/libio/fputwc.c ++++ b/libio/fputwc.c +@@ -28,9 +28,7 @@ + #include + + wint_t +-fputwc (wc, fp) +- wchar_t wc; +- _IO_FILE *fp; ++fputwc (wchar_t wc, _IO_FILE *fp) + { + wint_t result; + CHECK_FILE (fp, EOF); +diff --git a/libio/fputwc_u.c b/libio/fputwc_u.c +index 9fcbfc7973154ac5..7066eb0f7bd8b028 100644 +--- a/libio/fputwc_u.c ++++ b/libio/fputwc_u.c +@@ -30,9 +30,7 @@ + #undef fputwc_unlocked + + wint_t +-fputwc_unlocked (wc, fp) +- wchar_t wc; +- _IO_FILE *fp; ++fputwc_unlocked (wchar_t wc, _IO_FILE *fp) + { + CHECK_FILE (fp, WEOF); + if (_IO_fwide (fp, 1) < 0) +diff --git a/libio/freopen.c b/libio/freopen.c +index 9303106c367c7ae2..915839e3ff6e5f38 100644 +--- a/libio/freopen.c ++++ b/libio/freopen.c +@@ -35,11 +35,8 @@ + + #include + +-FILE* +-freopen (filename, mode, fp) +- const char* filename; +- const char* mode; +- FILE* fp; ++FILE * ++freopen (const char *filename, const char *mode, FILE *fp) + { + FILE *result; + CHECK_FILE (fp, NULL); +diff --git a/libio/freopen64.c b/libio/freopen64.c +index e47f965e86a682c6..a4b1484535b2fc83 100644 +--- a/libio/freopen64.c ++++ b/libio/freopen64.c +@@ -35,10 +35,7 @@ + #include + + FILE * +-freopen64 (filename, mode, fp) +- const char* filename; +- const char* mode; +- FILE *fp; ++freopen64 (const char *filename, const char *mode, FILE *fp) + { + FILE *result; + CHECK_FILE (fp, NULL); +diff --git a/libio/fseek.c b/libio/fseek.c +index 7a6869402852b2ab..736b5353a0a3767a 100644 +--- a/libio/fseek.c ++++ b/libio/fseek.c +@@ -29,10 +29,7 @@ + #include + + int +-fseek (fp, offset, whence) +- _IO_FILE* fp; +- long int offset; +- int whence; ++fseek (_IO_FILE *fp, long int offset, int whence) + { + int result; + CHECK_FILE (fp, -1); +diff --git a/libio/fseeko.c b/libio/fseeko.c +index 6d37aeaab859837d..c757d72647a2d72f 100644 +--- a/libio/fseeko.c ++++ b/libio/fseeko.c +@@ -28,10 +28,7 @@ + #include "stdio.h" + + int +-fseeko (fp, offset, whence) +- _IO_FILE* fp; +- off_t offset; +- int whence; ++fseeko (_IO_FILE *fp, off_t offset, int whence) + { + int result; + CHECK_FILE (fp, -1); +diff --git a/libio/fseeko64.c b/libio/fseeko64.c +index 70dc3703c8bf1356..68ce824d14d28c3d 100644 +--- a/libio/fseeko64.c ++++ b/libio/fseeko64.c +@@ -32,10 +32,7 @@ + #ifndef __OFF_T_MATCHES_OFF64_T + + int +-fseeko64 (fp, offset, whence) +- _IO_FILE* fp; +- __off64_t offset; +- int whence; ++fseeko64 (_IO_FILE *fp, __off64_t offset, int whence) + { + int result; + CHECK_FILE (fp, -1); +diff --git a/libio/ftello.c b/libio/ftello.c +index 90522769eadfee98..53f83c30e1464fc1 100644 +--- a/libio/ftello.c ++++ b/libio/ftello.c +@@ -31,8 +31,7 @@ + + + off_t +-ftello (fp) +- _IO_FILE *fp; ++ftello (_IO_FILE *fp) + { + _IO_off64_t pos; + CHECK_FILE (fp, -1L); +diff --git a/libio/ftello64.c b/libio/ftello64.c +index 9502f2518fa09734..f9ec1adda39ef242 100644 +--- a/libio/ftello64.c ++++ b/libio/ftello64.c +@@ -32,8 +32,7 @@ + #ifndef __OFF_T_MATCHES_OFF64_T + + off64_t +-ftello64 (fp) +- _IO_FILE *fp; ++ftello64 (_IO_FILE *fp) + { + _IO_off64_t pos; + CHECK_FILE (fp, -1L); +diff --git a/libio/fwide.c b/libio/fwide.c +index 292bbe1ba75d1798..d6ecfa94fb67ecf4 100644 +--- a/libio/fwide.c ++++ b/libio/fwide.c +@@ -29,9 +29,7 @@ + #include + + int +-fwide (fp, mode) +- _IO_FILE *fp; +- int mode; ++fwide (_IO_FILE *fp, int mode) + { + int result; + +diff --git a/libio/genops.c b/libio/genops.c +index 4e0a40f90c8223dd..bad6ec65e25de31b 100644 +--- a/libio/genops.c ++++ b/libio/genops.c +@@ -56,8 +56,7 @@ flush_cleanup (void *not_used) + #endif + + void +-_IO_un_link (fp) +- struct _IO_FILE_plus *fp; ++_IO_un_link (struct _IO_FILE_plus *fp) + { + if (fp->file._flags & _IO_LINKED) + { +@@ -95,8 +94,7 @@ _IO_un_link (fp) + libc_hidden_def (_IO_un_link) + + void +-_IO_link_in (fp) +- struct _IO_FILE_plus *fp; ++_IO_link_in (struct _IO_FILE_plus *fp) + { + if ((fp->file._flags & _IO_LINKED) == 0) + { +@@ -125,9 +123,7 @@ libc_hidden_def (_IO_link_in) + _IO_ssize_t _IO_least_marker (_IO_FILE *fp, char *end_p); + + _IO_ssize_t +-_IO_least_marker (fp, end_p) +- _IO_FILE *fp; +- char *end_p; ++_IO_least_marker (_IO_FILE *fp, char *end_p) + { + _IO_ssize_t least_so_far = end_p - fp->_IO_read_base; + struct _IO_marker *mark; +@@ -140,8 +136,7 @@ _IO_least_marker (fp, end_p) + /* Switch current get area from backup buffer to (start of) main get area. */ + + void +-_IO_switch_to_main_get_area (fp) +- _IO_FILE *fp; ++_IO_switch_to_main_get_area (_IO_FILE *fp) + { + char *tmp; + fp->_flags &= ~_IO_IN_BACKUP; +@@ -160,8 +155,7 @@ _IO_switch_to_main_get_area (fp) + /* Switch current get area from main get area to (end of) backup area. */ + + void +-_IO_switch_to_backup_area (fp) +- _IO_FILE *fp; ++_IO_switch_to_backup_area (_IO_FILE *fp) + { + char *tmp; + fp->_flags |= _IO_IN_BACKUP; +@@ -178,8 +172,7 @@ _IO_switch_to_backup_area (fp) + } + + int +-_IO_switch_to_get_mode (fp) +- _IO_FILE *fp; ++_IO_switch_to_get_mode (_IO_FILE *fp) + { + if (fp->_IO_write_ptr > fp->_IO_write_base) + if (_IO_OVERFLOW (fp, EOF) == EOF) +@@ -202,8 +195,7 @@ _IO_switch_to_get_mode (fp) + libc_hidden_def (_IO_switch_to_get_mode) + + void +-_IO_free_backup_area (fp) +- _IO_FILE *fp; ++_IO_free_backup_area (_IO_FILE *fp) + { + if (_IO_in_backup (fp)) + _IO_switch_to_main_get_area (fp); /* Just in case. */ +@@ -216,8 +208,7 @@ libc_hidden_def (_IO_free_backup_area) + + #if 0 + int +-_IO_switch_to_put_mode (fp) +- _IO_FILE *fp; ++_IO_switch_to_put_mode (_IO_FILE *fp) + { + fp->_IO_write_base = fp->_IO_read_ptr; + fp->_IO_write_ptr = fp->_IO_read_ptr; +@@ -234,9 +225,7 @@ _IO_switch_to_put_mode (fp) + #endif + + int +-__overflow (f, ch) +- _IO_FILE *f; +- int ch; ++__overflow (_IO_FILE *f, int ch) + { + /* This is a single-byte stream. */ + if (f->_mode == 0) +@@ -326,8 +315,7 @@ save_for_backup (fp, end_p) + } + + int +-__underflow (fp) +- _IO_FILE *fp; ++__underflow (_IO_FILE *fp) + { + #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T + if (_IO_vtable_offset (fp) == 0 && _IO_fwide (fp, -1) != -1) +@@ -359,8 +347,7 @@ __underflow (fp) + libc_hidden_def (__underflow) + + int +-__uflow (fp) +- _IO_FILE *fp; ++__uflow (_IO_FILE *fp) + { + #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T + if (_IO_vtable_offset (fp) == 0 && _IO_fwide (fp, -1) != -1) +@@ -392,11 +379,7 @@ __uflow (fp) + libc_hidden_def (__uflow) + + void +-_IO_setb (f, b, eb, a) +- _IO_FILE *f; +- char *b; +- char *eb; +- int a; ++_IO_setb (_IO_FILE *f, char *b, char *eb, int a) + { + if (f->_IO_buf_base && !(f->_flags & _IO_USER_BUF)) + FREE_BUF (f->_IO_buf_base, _IO_blen (f)); +@@ -410,8 +393,7 @@ _IO_setb (f, b, eb, a) + libc_hidden_def (_IO_setb) + + void +-_IO_doallocbuf (fp) +- _IO_FILE *fp; ++_IO_doallocbuf (_IO_FILE *fp) + { + if (fp->_IO_buf_base) + return; +@@ -423,15 +405,13 @@ _IO_doallocbuf (fp) + libc_hidden_def (_IO_doallocbuf) + + int +-_IO_default_underflow (fp) +- _IO_FILE *fp; ++_IO_default_underflow (_IO_FILE *fp) + { + return EOF; + } + + int +-_IO_default_uflow (fp) +- _IO_FILE *fp; ++_IO_default_uflow (_IO_FILE *fp) + { + int ch = _IO_UNDERFLOW (fp); + if (ch == EOF) +@@ -441,10 +421,7 @@ _IO_default_uflow (fp) + libc_hidden_def (_IO_default_uflow) + + _IO_size_t +-_IO_default_xsputn (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_size_t n; ++_IO_default_xsputn (_IO_FILE *f, const void *data, _IO_size_t n) + { + const char *s = (char *) data; + _IO_size_t more = n; +@@ -487,10 +464,7 @@ _IO_default_xsputn (f, data, n) + libc_hidden_def (_IO_default_xsputn) + + _IO_size_t +-_IO_sgetn (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_sgetn (_IO_FILE *fp, void *data, _IO_size_t n) + { + /* FIXME handle putback buffer here! */ + return _IO_XSGETN (fp, data, n); +@@ -498,10 +472,7 @@ _IO_sgetn (fp, data, n) + libc_hidden_def (_IO_sgetn) + + _IO_size_t +-_IO_default_xsgetn (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_default_xsgetn (_IO_FILE *fp, void *data, _IO_size_t n) + { + _IO_size_t more = n; + char *s = (char*) data; +@@ -543,18 +514,14 @@ libc_hidden_def (_IO_default_xsgetn) + #if 0 + /* Seems not to be needed. --drepper */ + int +-_IO_sync (fp) +- _IO_FILE *fp; ++_IO_sync (_IO_FILE *fp) + { + return 0; + } + #endif + + _IO_FILE * +-_IO_default_setbuf (fp, p, len) +- _IO_FILE *fp; +- char *p; +- _IO_ssize_t len; ++_IO_default_setbuf (_IO_FILE *fp, char *p, _IO_ssize_t len) + { + if (_IO_SYNC (fp) == EOF) + return NULL; +@@ -574,17 +541,13 @@ _IO_default_setbuf (fp, p, len) + } + + _IO_off64_t +-_IO_default_seekpos (fp, pos, mode) +- _IO_FILE *fp; +- _IO_off64_t pos; +- int mode; ++_IO_default_seekpos (_IO_FILE *fp, _IO_off64_t pos, int mode) + { + return _IO_SEEKOFF (fp, pos, 0, mode); + } + + int +-_IO_default_doallocate (fp) +- _IO_FILE *fp; ++_IO_default_doallocate (_IO_FILE *fp) + { + char *buf; + +@@ -595,9 +558,7 @@ _IO_default_doallocate (fp) + libc_hidden_def (_IO_default_doallocate) + + void +-_IO_init_internal (fp, flags) +- _IO_FILE *fp; +- int flags; ++_IO_init_internal (_IO_FILE *fp, int flags) + { + _IO_no_init (fp, flags, -1, NULL, NULL); + } +@@ -610,9 +571,7 @@ _IO_init (_IO_FILE *fp, int flags) + } + + void +-_IO_old_init (fp, flags) +- _IO_FILE *fp; +- int flags; ++_IO_old_init (_IO_FILE *fp, int flags) + { + fp->_flags = _IO_MAGIC|flags; + fp->_flags2 = 0; +@@ -673,8 +632,7 @@ _IO_no_init (fp, flags, orientation, wd, jmp) + } + + int +-_IO_default_sync (fp) +- _IO_FILE *fp; ++_IO_default_sync (_IO_FILE *fp) + { + return 0; + } +@@ -683,9 +641,7 @@ _IO_default_sync (fp) + current implementation, this function can get called twice! */ + + void +-_IO_default_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_default_finish (_IO_FILE *fp, int dummy) + { + struct _IO_marker *mark; + if (fp->_IO_buf_base && !(fp->_flags & _IO_USER_BUF)) +@@ -713,19 +669,13 @@ _IO_default_finish (fp, dummy) + libc_hidden_def (_IO_default_finish) + + _IO_off64_t +-_IO_default_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_default_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + return _IO_pos_BAD; + } + + int +-_IO_sputbackc (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_sputbackc (_IO_FILE *fp, int c) + { + int result; + +@@ -746,8 +696,7 @@ _IO_sputbackc (fp, c) + libc_hidden_def (_IO_sputbackc) + + int +-_IO_sungetc (fp) +- _IO_FILE *fp; ++_IO_sungetc (_IO_FILE *fp) + { + int result; + +@@ -769,9 +718,7 @@ _IO_sungetc (fp) + /* Seems not to be needed. */ + #if 0 + void +-_IO_set_column (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_set_column (_IO_FILE *fp, int c) + { + if (c == -1) + fp->_column = -1; +@@ -780,9 +727,7 @@ _IO_set_column (fp, c) + } + #else + int +-_IO_set_column (fp, i) +- _IO_FILE *fp; +- int i; ++_IO_set_column (_IO_FILE *fp, int i) + { + fp->_cur_column = i + 1; + return 0; +@@ -792,10 +737,7 @@ _IO_set_column (fp, i) + + + unsigned +-_IO_adjust_column (start, line, count) +- unsigned start; +- const char *line; +- int count; ++_IO_adjust_column (unsigned start, const char *line, int count) + { + const char *ptr = line + count; + while (ptr > line) +@@ -808,8 +750,7 @@ libc_hidden_def (_IO_adjust_column) + #if 0 + /* Seems not to be needed. --drepper */ + int +-_IO_get_column (fp) +- _IO_FILE *fp; ++_IO_get_column (_IO_FILE *fp) + { + if (fp->_cur_column) + return _IO_adjust_column (fp->_cur_column - 1, +@@ -1029,9 +970,7 @@ _IO_cleanup (void) + + + void +-_IO_init_marker (marker, fp) +- struct _IO_marker *marker; +- _IO_FILE *fp; ++_IO_init_marker (struct _IO_marker *marker, _IO_FILE *fp) + { + marker->_sbuf = fp; + if (_IO_in_put_mode (fp)) +@@ -1047,8 +986,7 @@ _IO_init_marker (marker, fp) + } + + void +-_IO_remove_marker (marker) +- struct _IO_marker *marker; ++_IO_remove_marker (struct _IO_marker *marker) + { + /* Unlink from sb's chain. */ + struct _IO_marker **ptr = &marker->_sbuf->_markers; +@@ -1071,17 +1009,14 @@ _IO_remove_marker (marker) + #define BAD_DELTA EOF + + int +-_IO_marker_difference (mark1, mark2) +- struct _IO_marker *mark1; +- struct _IO_marker *mark2; ++_IO_marker_difference (struct _IO_marker *mark1, struct _IO_marker *mark2) + { + return mark1->_pos - mark2->_pos; + } + + /* Return difference between MARK and current position of MARK's stream. */ + int +-_IO_marker_delta (mark) +- struct _IO_marker *mark; ++_IO_marker_delta (struct _IO_marker *mark) + { + int cur_pos; + if (mark->_sbuf == NULL) +@@ -1094,10 +1029,7 @@ _IO_marker_delta (mark) + } + + int +-_IO_seekmark (fp, mark, delta) +- _IO_FILE *fp; +- struct _IO_marker *mark; +- int delta; ++_IO_seekmark (_IO_FILE *fp, struct _IO_marker *mark, int delta) + { + if (mark->_sbuf != fp) + return EOF; +@@ -1117,8 +1049,7 @@ _IO_seekmark (fp, mark, delta) + } + + void +-_IO_unsave_markers (fp) +- _IO_FILE *fp; ++_IO_unsave_markers (_IO_FILE *fp) + { + struct _IO_marker *mark = fp->_markers; + if (mark) +@@ -1148,9 +1079,7 @@ libc_hidden_def (_IO_unsave_markers) + #if 0 + /* Seems not to be needed. --drepper */ + int +-_IO_nobackup_pbackfail (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_nobackup_pbackfail (_IO_FILE *fp, int c) + { + if (fp->_IO_read_ptr > fp->_IO_read_base) + fp->_IO_read_ptr--; +@@ -1161,9 +1090,7 @@ _IO_nobackup_pbackfail (fp, c) + #endif + + int +-_IO_default_pbackfail (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_default_pbackfail (_IO_FILE *fp, int c) + { + if (fp->_IO_read_ptr > fp->_IO_read_base && !_IO_in_backup (fp) + && (unsigned char) fp->_IO_read_ptr[-1] == c) +@@ -1220,51 +1147,37 @@ _IO_default_pbackfail (fp, c) + libc_hidden_def (_IO_default_pbackfail) + + _IO_off64_t +-_IO_default_seek (fp, offset, dir) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; ++_IO_default_seek (_IO_FILE *fp, _IO_off64_t offset, int dir) + { + return _IO_pos_BAD; + } + + int +-_IO_default_stat (fp, st) +- _IO_FILE *fp; +- void* st; ++_IO_default_stat (_IO_FILE *fp, void *st) + { + return EOF; + } + + _IO_ssize_t +-_IO_default_read (fp, data, n) +- _IO_FILE* fp; +- void *data; +- _IO_ssize_t n; ++_IO_default_read (_IO_FILE *fp, void *data, _IO_ssize_t n) + { + return -1; + } + + _IO_ssize_t +-_IO_default_write (fp, data, n) +- _IO_FILE *fp; +- const void *data; +- _IO_ssize_t n; ++_IO_default_write (_IO_FILE *fp, const void *data, _IO_ssize_t n) + { + return 0; + } + + int +-_IO_default_showmanyc (fp) +- _IO_FILE *fp; ++_IO_default_showmanyc (_IO_FILE *fp) + { + return -1; + } + + void +-_IO_default_imbue (fp, locale) +- _IO_FILE *fp; +- void *locale; ++_IO_default_imbue (_IO_FILE *fp, void *locale) + { + } + +@@ -1283,16 +1196,14 @@ _IO_iter_end (void) + libc_hidden_def (_IO_iter_end) + + _IO_ITER +-_IO_iter_next(iter) +- _IO_ITER iter; ++_IO_iter_next (_IO_ITER iter) + { + return iter->_chain; + } + libc_hidden_def (_IO_iter_next) + + _IO_FILE * +-_IO_iter_file(iter) +- _IO_ITER iter; ++_IO_iter_file (_IO_ITER iter) + { + return iter; + } +diff --git a/libio/getc.c b/libio/getc.c +index ebb21760875d4b3e..98e7a0bf75eaf417 100644 +--- a/libio/getc.c ++++ b/libio/getc.c +@@ -31,8 +31,7 @@ + #undef _IO_getc + + int +-_IO_getc (fp) +- FILE *fp; ++_IO_getc (FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/getwc.c b/libio/getwc.c +index 7bd539f43f042b10..c8bcf334b73fc0db 100644 +--- a/libio/getwc.c ++++ b/libio/getwc.c +@@ -32,8 +32,7 @@ + #undef _IO_getwc + + wint_t +-_IO_getwc (fp) +- FILE *fp; ++_IO_getwc (FILE *fp) + { + wint_t result; + CHECK_FILE (fp, WEOF); +diff --git a/libio/iofclose.c b/libio/iofclose.c +index fc049318b6880534..15a91e5dba1f1e7c 100644 +--- a/libio/iofclose.c ++++ b/libio/iofclose.c +@@ -35,8 +35,7 @@ + #endif + + int +-_IO_new_fclose (fp) +- _IO_FILE *fp; ++_IO_new_fclose (_IO_FILE *fp) + { + int status; + +diff --git a/libio/iofdopen.c b/libio/iofdopen.c +index 6c09289f4763ac4d..87dd6970e3a9b788 100644 +--- a/libio/iofdopen.c ++++ b/libio/iofdopen.c +@@ -41,9 +41,7 @@ + #endif + + _IO_FILE * +-_IO_new_fdopen (fd, mode) +- int fd; +- const char *mode; ++_IO_new_fdopen (int fd, const char *mode) + { + int read_write; + int posix_mode = 0; +diff --git a/libio/iofflush.c b/libio/iofflush.c +index 57e0eafab61dd444..733d679a820ac463 100644 +--- a/libio/iofflush.c ++++ b/libio/iofflush.c +@@ -28,8 +28,7 @@ + #include + + int +-_IO_fflush (fp) +- _IO_FILE *fp; ++_IO_fflush (_IO_FILE *fp) + { + if (fp == NULL) + return _IO_flush_all (); +diff --git a/libio/iofflush_u.c b/libio/iofflush_u.c +index 353c7abf65165c80..5083dd40ede89d6e 100644 +--- a/libio/iofflush_u.c ++++ b/libio/iofflush_u.c +@@ -28,8 +28,7 @@ + #include + + int +-fflush_unlocked (fp) +- _IO_FILE *fp; ++fflush_unlocked (_IO_FILE *fp) + { + if (fp == NULL) + return _IO_flush_all (); +diff --git a/libio/iofgetpos.c b/libio/iofgetpos.c +index a1d6bb693aac71ad..a997e4b43f01b847 100644 +--- a/libio/iofgetpos.c ++++ b/libio/iofgetpos.c +@@ -40,9 +40,7 @@ + #include + + int +-_IO_new_fgetpos (fp, posp) +- _IO_FILE *fp; +- _IO_fpos_t *posp; ++_IO_new_fgetpos (_IO_FILE *fp, _IO_fpos_t *posp) + { + _IO_off64_t pos; + int result = 0; +diff --git a/libio/iofgetpos64.c b/libio/iofgetpos64.c +index 0d0a2aa26bcb12ab..913e679004ccd172 100644 +--- a/libio/iofgetpos64.c ++++ b/libio/iofgetpos64.c +@@ -31,9 +31,7 @@ + #ifndef __OFF_T_MATCHES_OFF64_T + + int +-_IO_new_fgetpos64 (fp, posp) +- _IO_FILE *fp; +- _IO_fpos64_t *posp; ++_IO_new_fgetpos64 (_IO_FILE *fp, _IO_fpos64_t *posp) + { + _IO_off64_t pos; + int result = 0; +diff --git a/libio/iofgets.c b/libio/iofgets.c +index 3621f1c00ec9ea4d..1a66619e7bef7df0 100644 +--- a/libio/iofgets.c ++++ b/libio/iofgets.c +@@ -28,10 +28,7 @@ + #include + + char * +-_IO_fgets (buf, n, fp) +- char *buf; +- int n; +- _IO_FILE *fp; ++_IO_fgets (char *buf, int n, _IO_FILE *fp) + { + _IO_size_t count; + char *result; +diff --git a/libio/iofgets_u.c b/libio/iofgets_u.c +index e2cf6373b8178097..563d7e4d755892e0 100644 +--- a/libio/iofgets_u.c ++++ b/libio/iofgets_u.c +@@ -28,10 +28,7 @@ + #include + + char * +-__fgets_unlocked (buf, n, fp) +- char *buf; +- int n; +- _IO_FILE *fp; ++__fgets_unlocked (char *buf, int n, _IO_FILE *fp) + { + _IO_size_t count; + char *result; +diff --git a/libio/iofgetws.c b/libio/iofgetws.c +index 3a010a425969b9a2..3aa23c8f55ad248f 100644 +--- a/libio/iofgetws.c ++++ b/libio/iofgetws.c +@@ -29,10 +29,7 @@ + #include + + wchar_t * +-fgetws (buf, n, fp) +- wchar_t *buf; +- int n; +- _IO_FILE *fp; ++fgetws (wchar_t *buf, int n, _IO_FILE *fp) + { + _IO_size_t count; + wchar_t *result; +diff --git a/libio/iofgetws_u.c b/libio/iofgetws_u.c +index 070c4a7103f1626a..c3ce71396c9d5725 100644 +--- a/libio/iofgetws_u.c ++++ b/libio/iofgetws_u.c +@@ -28,10 +28,7 @@ + #include + + wchar_t * +-fgetws_unlocked (buf, n, fp) +- wchar_t *buf; +- int n; +- _IO_FILE *fp; ++fgetws_unlocked (wchar_t *buf, int n, _IO_FILE *fp) + { + _IO_size_t count; + wchar_t *result; +diff --git a/libio/iofopen64.c b/libio/iofopen64.c +index 159d04ee6702af68..b490001eb4bd5905 100644 +--- a/libio/iofopen64.c ++++ b/libio/iofopen64.c +@@ -32,9 +32,7 @@ + #if !defined _LIBC || (defined O_LARGEFILE && O_LARGEFILE != 0) + + _IO_FILE * +-_IO_fopen64 (filename, mode) +- const char *filename; +- const char *mode; ++_IO_fopen64 (const char *filename, const char *mode) + { + return __fopen_internal (filename, mode, 0); + } +diff --git a/libio/iofopncook.c b/libio/iofopncook.c +index 8240601d4eec468b..d5c28f31c377905a 100644 +--- a/libio/iofopncook.c ++++ b/libio/iofopncook.c +@@ -40,10 +40,7 @@ static _IO_off64_t _IO_cookie_seekoff (_IO_FILE *fp, _IO_off64_t offset, + static int _IO_cookie_close (_IO_FILE* fp); + + static _IO_ssize_t +-_IO_cookie_read (fp, buf, size) +- _IO_FILE *fp; +- void *buf; +- _IO_ssize_t size; ++_IO_cookie_read (_IO_FILE *fp, void *buf, _IO_ssize_t size) + { + struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp; + cookie_read_function_t *read_cb = cfile->__io_functions.read; +@@ -56,10 +53,7 @@ _IO_cookie_read (fp, buf, size) + } + + static _IO_ssize_t +-_IO_cookie_write (fp, buf, size) +- _IO_FILE *fp; +- const void *buf; +- _IO_ssize_t size; ++_IO_cookie_write (_IO_FILE *fp, const void *buf, _IO_ssize_t size) + { + struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp; + cookie_write_function_t *write_cb = cfile->__io_functions.write; +@@ -79,10 +73,7 @@ _IO_cookie_write (fp, buf, size) + } + + static _IO_off64_t +-_IO_cookie_seek (fp, offset, dir) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; ++_IO_cookie_seek (_IO_FILE *fp, _IO_off64_t offset, int dir) + { + struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp; + cookie_seek_function_t *seek_cb = cfile->__io_functions.seek; +@@ -96,8 +87,7 @@ _IO_cookie_seek (fp, offset, dir) + } + + static int +-_IO_cookie_close (fp) +- _IO_FILE *fp; ++_IO_cookie_close (_IO_FILE *fp) + { + struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp; + cookie_close_function_t *close_cb = cfile->__io_functions.close; +@@ -111,11 +101,7 @@ _IO_cookie_close (fp) + + + static _IO_off64_t +-_IO_cookie_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_cookie_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + /* We must force the fileops code to always use seek to determine + the position. */ +@@ -238,10 +224,7 @@ _IO_FILE * _IO_old_fopencookie (void *cookie, const char *mode, + + static _IO_off64_t + attribute_compat_text_section +-_IO_old_cookie_seek (fp, offset, dir) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; ++_IO_old_cookie_seek (_IO_FILE *fp, _IO_off64_t offset, int dir) + { + struct _IO_cookie_file *cfile = (struct _IO_cookie_file *) fp; + int (*seek_cb) (_IO_FILE *, _IO_off_t, int) +diff --git a/libio/iofputs.c b/libio/iofputs.c +index 98f4b5ddc64247c5..be9e623b97c2f736 100644 +--- a/libio/iofputs.c ++++ b/libio/iofputs.c +@@ -29,9 +29,7 @@ + #include + + int +-_IO_fputs (str, fp) +- const char *str; +- _IO_FILE *fp; ++_IO_fputs (const char *str, _IO_FILE *fp) + { + _IO_size_t len = strlen (str); + int result = EOF; +diff --git a/libio/iofputs_u.c b/libio/iofputs_u.c +index e90ce86051944a19..aa45106fa10d612b 100644 +--- a/libio/iofputs_u.c ++++ b/libio/iofputs_u.c +@@ -29,9 +29,7 @@ + #include + + int +-fputs_unlocked (str, fp) +- const char *str; +- _IO_FILE *fp; ++fputs_unlocked (const char *str, _IO_FILE *fp) + { + _IO_size_t len = strlen (str); + int result = EOF; +diff --git a/libio/iofputws.c b/libio/iofputws.c +index bf4e1958ac284f56..4d5bff28721306ab 100644 +--- a/libio/iofputws.c ++++ b/libio/iofputws.c +@@ -29,9 +29,7 @@ + #include + + int +-fputws (str, fp) +- const wchar_t *str; +- _IO_FILE *fp; ++fputws (const wchar_t *str, _IO_FILE *fp) + { + _IO_size_t len = __wcslen (str); + int result = EOF; +diff --git a/libio/iofputws_u.c b/libio/iofputws_u.c +index 95ef15780f2337df..50543ff48146b545 100644 +--- a/libio/iofputws_u.c ++++ b/libio/iofputws_u.c +@@ -29,9 +29,7 @@ + #include + + int +-fputws_unlocked (str, fp) +- const wchar_t *str; +- _IO_FILE *fp; ++fputws_unlocked (const wchar_t *str, _IO_FILE *fp) + { + _IO_size_t len = __wcslen (str); + int result = EOF; +diff --git a/libio/iofread.c b/libio/iofread.c +index 1f04aaec4f7c0ace..886291e0e6fe2df5 100644 +--- a/libio/iofread.c ++++ b/libio/iofread.c +@@ -27,11 +27,7 @@ + #include "libioP.h" + + _IO_size_t +-_IO_fread (buf, size, count, fp) +- void *buf; +- _IO_size_t size; +- _IO_size_t count; +- _IO_FILE *fp; ++_IO_fread (void *buf, _IO_size_t size, _IO_size_t count, _IO_FILE *fp) + { + _IO_size_t bytes_requested = size * count; + _IO_size_t bytes_read; +diff --git a/libio/iofread_u.c b/libio/iofread_u.c +index a314d22e1d2a1367..938a95d0e404a0f1 100644 +--- a/libio/iofread_u.c ++++ b/libio/iofread_u.c +@@ -30,11 +30,7 @@ + #undef fread_unlocked + + _IO_size_t +-fread_unlocked (buf, size, count, fp) +- void *buf; +- _IO_size_t size; +- _IO_size_t count; +- _IO_FILE *fp; ++fread_unlocked (void *buf, _IO_size_t size, _IO_size_t count, _IO_FILE *fp) + { + _IO_size_t bytes_requested = size * count; + _IO_size_t bytes_read; +diff --git a/libio/iofsetpos.c b/libio/iofsetpos.c +index 5e8d444d2ee7e454..e7e00ffb248a2546 100644 +--- a/libio/iofsetpos.c ++++ b/libio/iofsetpos.c +@@ -39,9 +39,7 @@ + #include + + int +-_IO_new_fsetpos (fp, posp) +- _IO_FILE *fp; +- const _IO_fpos_t *posp; ++_IO_new_fsetpos (_IO_FILE *fp, const _IO_fpos_t *posp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/iofsetpos64.c b/libio/iofsetpos64.c +index f751255a66d0dc25..332e7233c2378426 100644 +--- a/libio/iofsetpos64.c ++++ b/libio/iofsetpos64.c +@@ -31,9 +31,7 @@ + #ifndef __OFF_T_MATCHES_OFF64_T + + int +-_IO_new_fsetpos64 (fp, posp) +- _IO_FILE *fp; +- const _IO_fpos64_t *posp; ++_IO_new_fsetpos64 (_IO_FILE *fp, const _IO_fpos64_t *posp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/ioftell.c b/libio/ioftell.c +index a1e06184450f1e85..787884b48986d58e 100644 +--- a/libio/ioftell.c ++++ b/libio/ioftell.c +@@ -30,8 +30,7 @@ + /* ANSI explicily requires setting errno to a positive value on failure. */ + + long int +-_IO_ftell (fp) +- _IO_FILE *fp; ++_IO_ftell (_IO_FILE *fp) + { + _IO_off64_t pos; + CHECK_FILE (fp, -1L); +diff --git a/libio/iofwrite.c b/libio/iofwrite.c +index d4610f78cad6bfb1..ab51fd21ba05ccba 100644 +--- a/libio/iofwrite.c ++++ b/libio/iofwrite.c +@@ -27,11 +27,7 @@ + #include "libioP.h" + + _IO_size_t +-_IO_fwrite (buf, size, count, fp) +- const void *buf; +- _IO_size_t size; +- _IO_size_t count; +- _IO_FILE *fp; ++_IO_fwrite (const void *buf, _IO_size_t size, _IO_size_t count, _IO_FILE *fp) + { + _IO_size_t request = size * count; + _IO_size_t written = 0; +diff --git a/libio/iogetdelim.c b/libio/iogetdelim.c +index bf4b0f776a7af3ad..4e14f2e6666602e4 100644 +--- a/libio/iogetdelim.c ++++ b/libio/iogetdelim.c +@@ -38,11 +38,7 @@ + null terminator), or -1 on error or EOF. */ + + _IO_ssize_t +-_IO_getdelim (lineptr, n, delimiter, fp) +- char **lineptr; +- _IO_size_t *n; +- int delimiter; +- _IO_FILE *fp; ++_IO_getdelim (char **lineptr, _IO_size_t *n, int delimiter, _IO_FILE *fp) + { + _IO_ssize_t result; + _IO_ssize_t cur_len = 0; +diff --git a/libio/iogets.c b/libio/iogets.c +index 77353fe14f2c284c..255d5771f8a1f6b1 100644 +--- a/libio/iogets.c ++++ b/libio/iogets.c +@@ -27,9 +27,8 @@ + #include "libioP.h" + #include + +-char* +-_IO_gets (buf) +- char *buf; ++char * ++_IO_gets (char *buf) + { + _IO_size_t count; + int ch; +diff --git a/libio/iopadn.c b/libio/iopadn.c +index 7e374508f0f511b8..007898d91dfa2c94 100644 +--- a/libio/iopadn.c ++++ b/libio/iopadn.c +@@ -33,10 +33,7 @@ static char const zeroes[PADSIZE] = + {'0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0'}; + + _IO_ssize_t +-_IO_padn (fp, pad, count) +- _IO_FILE *fp; +- int pad; +- _IO_ssize_t count; ++_IO_padn (_IO_FILE *fp, int pad, _IO_ssize_t count) + { + char padbuf[PADSIZE]; + const char *padptr; +diff --git a/libio/iopopen.c b/libio/iopopen.c +index 82c30fab8d768b04..530f5dd87b6c292e 100644 +--- a/libio/iopopen.c ++++ b/libio/iopopen.c +@@ -106,10 +106,7 @@ unlock (void *not_used) + #endif + + _IO_FILE * +-_IO_new_proc_open (fp, command, mode) +- _IO_FILE *fp; +- const char *command; +- const char *mode; ++_IO_new_proc_open (_IO_FILE *fp, const char *command, const char *mode) + { + int read_or_write; + int parent_end, child_end; +@@ -272,9 +269,7 @@ _IO_new_proc_open (fp, command, mode) + } + + _IO_FILE * +-_IO_new_popen (command, mode) +- const char *command; +- const char *mode; ++_IO_new_popen (const char *command, const char *mode) + { + struct locked_FILE + { +@@ -306,8 +301,7 @@ _IO_new_popen (command, mode) + } + + int +-_IO_new_proc_close (fp) +- _IO_FILE *fp; ++_IO_new_proc_close (_IO_FILE *fp) + { + /* This is not name-space clean. FIXME! */ + int wstatus; +diff --git a/libio/ioputs.c b/libio/ioputs.c +index 3a46022764d7d2b6..8f2ea8de7a351e98 100644 +--- a/libio/ioputs.c ++++ b/libio/ioputs.c +@@ -29,8 +29,7 @@ + #include + + int +-_IO_puts (str) +- const char *str; ++_IO_puts (const char *str) + { + int result = EOF; + _IO_size_t len = strlen (str); +diff --git a/libio/ioseekoff.c b/libio/ioseekoff.c +index 7d5cf61af905c1e5..07b02bb7943b7218 100644 +--- a/libio/ioseekoff.c ++++ b/libio/ioseekoff.c +@@ -35,11 +35,7 @@ extern int errno; + #endif + + _IO_off64_t +-_IO_seekoff_unlocked (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_seekoff_unlocked (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + if (dir != _IO_seek_cur && dir != _IO_seek_set && dir != _IO_seek_end) + { +@@ -71,11 +67,7 @@ _IO_seekoff_unlocked (fp, offset, dir, mode) + + + _IO_off64_t +-_IO_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t retval; + +diff --git a/libio/ioseekpos.c b/libio/ioseekpos.c +index 0f0aff9334e84bbd..2bbc7085332361fa 100644 +--- a/libio/ioseekpos.c ++++ b/libio/ioseekpos.c +@@ -27,10 +27,7 @@ + #include + + _IO_off64_t +-_IO_seekpos_unlocked (fp, pos, mode) +- _IO_FILE *fp; +- _IO_off64_t pos; +- int mode; ++_IO_seekpos_unlocked (_IO_FILE *fp, _IO_off64_t pos, int mode) + { + /* If we have a backup buffer, get rid of it, since the __seekoff + callback may not know to do the right thing about it. +@@ -51,10 +48,7 @@ _IO_seekpos_unlocked (fp, pos, mode) + + + _IO_off64_t +-_IO_seekpos (fp, pos, mode) +- _IO_FILE *fp; +- _IO_off64_t pos; +- int mode; ++_IO_seekpos (_IO_FILE *fp, _IO_off64_t pos, int mode) + { + _IO_off64_t retval; + +diff --git a/libio/iosetbuffer.c b/libio/iosetbuffer.c +index 2b2d461ceed304c7..7a9b594fa958221a 100644 +--- a/libio/iosetbuffer.c ++++ b/libio/iosetbuffer.c +@@ -27,10 +27,7 @@ + #include "libioP.h" + + void +-_IO_setbuffer (fp, buf, size) +- _IO_FILE *fp; +- char *buf; +- _IO_size_t size; ++_IO_setbuffer (_IO_FILE *fp, char *buf, _IO_size_t size) + { + CHECK_FILE (fp, ); + _IO_acquire_lock (fp); +diff --git a/libio/iosetvbuf.c b/libio/iosetvbuf.c +index 3df9d23c86d30f62..676b0f4137812ae9 100644 +--- a/libio/iosetvbuf.c ++++ b/libio/iosetvbuf.c +@@ -31,11 +31,7 @@ + #define _IONBF 2 /* No buffering. */ + + int +-_IO_setvbuf (fp, buf, mode, size) +- _IO_FILE *fp; +- char *buf; +- int mode; +- _IO_size_t size; ++_IO_setvbuf (_IO_FILE *fp, char *buf, int mode, _IO_size_t size) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/ioungetc.c b/libio/ioungetc.c +index 7ebd3e59230c0647..d42d9aa630b64111 100644 +--- a/libio/ioungetc.c ++++ b/libio/ioungetc.c +@@ -27,9 +27,7 @@ + #include "libioP.h" + + int +-_IO_ungetc (c, fp) +- int c; +- _IO_FILE *fp; ++_IO_ungetc (int c, _IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/ioungetwc.c b/libio/ioungetwc.c +index 9ee9a281d048b94d..016070f4fef907c3 100644 +--- a/libio/ioungetwc.c ++++ b/libio/ioungetwc.c +@@ -28,9 +28,7 @@ + #include + + wint_t +-ungetwc (c, fp) +- wint_t c; +- _IO_FILE *fp; ++ungetwc (wint_t c, _IO_FILE *fp) + { + wint_t result; + CHECK_FILE (fp, WEOF); +diff --git a/libio/iovdprintf.c b/libio/iovdprintf.c +index 688c93237f0d8406..dce5badbed3839d9 100644 +--- a/libio/iovdprintf.c ++++ b/libio/iovdprintf.c +@@ -28,10 +28,7 @@ + #include + + int +-_IO_vdprintf (d, format, arg) +- int d; +- const char *format; +- _IO_va_list arg; ++_IO_vdprintf (int d, const char *format, _IO_va_list arg) + { + struct _IO_FILE_plus tmpfil; + struct _IO_wide_data wd; +diff --git a/libio/iovsscanf.c b/libio/iovsscanf.c +index 2ae586cd8590ccec..26331c63a4dcd687 100644 +--- a/libio/iovsscanf.c ++++ b/libio/iovsscanf.c +@@ -28,10 +28,7 @@ + #include "strfile.h" + + int +-_IO_vsscanf (string, format, args) +- const char *string; +- const char *format; +- _IO_va_list args; ++_IO_vsscanf (const char *string, const char *format, _IO_va_list args) + { + int ret; + _IO_strfile sf; +diff --git a/libio/iowpadn.c b/libio/iowpadn.c +index a4b5eddaa4c6f805..b8d258210dd41d0a 100644 +--- a/libio/iowpadn.c ++++ b/libio/iowpadn.c +@@ -39,10 +39,7 @@ static wchar_t const zeroes[PADSIZE] = + }; + + _IO_ssize_t +-_IO_wpadn (fp, pad, count) +- _IO_FILE *fp; +- wint_t pad; +- _IO_ssize_t count; ++_IO_wpadn (_IO_FILE *fp, wint_t pad, _IO_ssize_t count) + { + wchar_t padbuf[PADSIZE]; + const wchar_t *padptr; +diff --git a/libio/libc_fatal.c b/libio/libc_fatal.c +index 93d655d79e35dfcf..773799076c7522a4 100644 +--- a/libio/libc_fatal.c ++++ b/libio/libc_fatal.c +@@ -19,8 +19,7 @@ + + /* Abort with an error message. */ + void +-__libc_fatal (message) +- const char *message; ++__libc_fatal (const char *message) + { + /* This function should write MESSAGE out in the most reliable way. + It is called in situations like internal stdio lossage. */ +diff --git a/libio/memstream.c b/libio/memstream.c +index aa9d609859b5d6dc..e18a7756b297c9f4 100644 +--- a/libio/memstream.c ++++ b/libio/memstream.c +@@ -61,9 +61,7 @@ static const struct _IO_jump_t _IO_mem_jumps libio_vtable = + necessary. *BUFLOC and *SIZELOC are updated with the buffer's location + and the number of characters written on fflush or fclose. */ + _IO_FILE * +-open_memstream (bufloc, sizeloc) +- char **bufloc; +- _IO_size_t *sizeloc; ++open_memstream (char **bufloc, _IO_size_t *sizeloc) + { + struct locked_FILE + { +@@ -101,8 +99,7 @@ libc_hidden_def (open_memstream) + + + static int +-_IO_mem_sync (fp) +- _IO_FILE* fp; ++_IO_mem_sync (_IO_FILE *fp) + { + struct _IO_FILE_memstream *mp = (struct _IO_FILE_memstream *) fp; + +@@ -122,9 +119,7 @@ _IO_mem_sync (fp) + + + static void +-_IO_mem_finish (fp, dummy) +- _IO_FILE* fp; +- int dummy; ++_IO_mem_finish (_IO_FILE *fp, int dummy) + { + struct _IO_FILE_memstream *mp = (struct _IO_FILE_memstream *) fp; + +diff --git a/libio/oldfileops.c b/libio/oldfileops.c +index 0d778fa253822171..755c73f5a5b1a2cf 100644 +--- a/libio/oldfileops.c ++++ b/libio/oldfileops.c +@@ -113,8 +113,7 @@ extern int errno; + + void + attribute_compat_text_section +-_IO_old_file_init_internal (fp) +- struct _IO_FILE_plus *fp; ++_IO_old_file_init_internal (struct _IO_FILE_plus *fp) + { + /* POSIX.1 allows another file handle to be used to change the position + of our file descriptor. Hence we actually don't know the actual +@@ -148,8 +147,7 @@ _IO_old_file_init (struct _IO_FILE_plus *fp) + + int + attribute_compat_text_section +-_IO_old_file_close_it (fp) +- _IO_FILE *fp; ++_IO_old_file_close_it (_IO_FILE *fp) + { + int write_status, close_status; + if (!_IO_file_is_open (fp)) +@@ -177,9 +175,7 @@ _IO_old_file_close_it (fp) + + void + attribute_compat_text_section +-_IO_old_file_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_old_file_finish (_IO_FILE *fp, int dummy) + { + if (_IO_file_is_open (fp)) + { +@@ -192,10 +188,7 @@ _IO_old_file_finish (fp, dummy) + + _IO_FILE * + attribute_compat_text_section +-_IO_old_file_fopen (fp, filename, mode) +- _IO_FILE *fp; +- const char *filename; +- const char *mode; ++_IO_old_file_fopen (_IO_FILE *fp, const char *filename, const char *mode) + { + int oflags = 0, omode; + int read_write, fdesc; +@@ -242,9 +235,7 @@ _IO_old_file_fopen (fp, filename, mode) + + _IO_FILE * + attribute_compat_text_section +-_IO_old_file_attach (fp, fd) +- _IO_FILE *fp; +- int fd; ++_IO_old_file_attach (_IO_FILE *fp, int fd) + { + if (_IO_file_is_open (fp)) + return NULL; +@@ -262,10 +253,7 @@ _IO_old_file_attach (fp, fd) + + _IO_FILE * + attribute_compat_text_section +-_IO_old_file_setbuf (fp, p, len) +- _IO_FILE *fp; +- char *p; +- _IO_ssize_t len; ++_IO_old_file_setbuf (_IO_FILE *fp, char *p, _IO_ssize_t len) + { + if (_IO_default_setbuf (fp, p, len) == NULL) + return NULL; +@@ -284,10 +272,7 @@ static int old_do_write (_IO_FILE *, const char *, _IO_size_t); + + int + attribute_compat_text_section +-_IO_old_do_write (fp, data, to_do) +- _IO_FILE *fp; +- const char *data; +- _IO_size_t to_do; ++_IO_old_do_write (_IO_FILE *fp, const char *data, _IO_size_t to_do) + { + return (to_do == 0 || (_IO_size_t) old_do_write (fp, data, to_do) == to_do) + ? 0 : EOF; +@@ -295,10 +280,7 @@ _IO_old_do_write (fp, data, to_do) + + static int + attribute_compat_text_section +-old_do_write (fp, data, to_do) +- _IO_FILE *fp; +- const char *data; +- _IO_size_t to_do; ++old_do_write (_IO_FILE *fp, const char *data, _IO_size_t to_do) + { + _IO_size_t count; + if (fp->_flags & _IO_IS_APPENDING) +@@ -328,8 +310,7 @@ old_do_write (fp, data, to_do) + + int + attribute_compat_text_section +-_IO_old_file_underflow (fp) +- _IO_FILE *fp; ++_IO_old_file_underflow (_IO_FILE *fp) + { + _IO_ssize_t count; + #if 0 +@@ -393,9 +374,7 @@ _IO_old_file_underflow (fp) + + int + attribute_compat_text_section +-_IO_old_file_overflow (f, ch) +- _IO_FILE *f; +- int ch; ++_IO_old_file_overflow (_IO_FILE *f, int ch) + { + if (f->_flags & _IO_NO_WRITES) /* SET ERROR */ + { +@@ -445,8 +424,7 @@ _IO_old_file_overflow (f, ch) + + int + attribute_compat_text_section +-_IO_old_file_sync (fp) +- _IO_FILE *fp; ++_IO_old_file_sync (_IO_FILE *fp) + { + _IO_ssize_t delta; + int retval = 0; +@@ -480,11 +458,7 @@ _IO_old_file_sync (fp) + + _IO_off64_t + attribute_compat_text_section +-_IO_old_file_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_old_file_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off_t result; + _IO_off64_t delta, new_offset; +@@ -667,10 +641,7 @@ resync: + + _IO_ssize_t + attribute_compat_text_section +-_IO_old_file_write (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_ssize_t n; ++_IO_old_file_write (_IO_FILE *f, const void *data, _IO_ssize_t n) + { + _IO_ssize_t to_do = n; + while (to_do > 0) +@@ -692,10 +663,7 @@ _IO_old_file_write (f, data, n) + + _IO_size_t + attribute_compat_text_section +-_IO_old_file_xsputn (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_size_t n; ++_IO_old_file_xsputn (_IO_FILE *f, const void *data, _IO_size_t n) + { + const char *s = (char *) data; + _IO_size_t to_do = n; +diff --git a/libio/oldiofclose.c b/libio/oldiofclose.c +index ff2e1d9cf3812b08..4e7fba78901cd485 100644 +--- a/libio/oldiofclose.c ++++ b/libio/oldiofclose.c +@@ -33,8 +33,7 @@ + + int + attribute_compat_text_section +-_IO_old_fclose (fp) +- _IO_FILE *fp; ++_IO_old_fclose (_IO_FILE *fp) + { + int status; + +diff --git a/libio/oldiofdopen.c b/libio/oldiofdopen.c +index bf126970dd09fddc..22ba126bbe1296ae 100644 +--- a/libio/oldiofdopen.c ++++ b/libio/oldiofdopen.c +@@ -38,9 +38,7 @@ + + _IO_FILE * + attribute_compat_text_section +-_IO_old_fdopen (fd, mode) +- int fd; +- const char *mode; ++_IO_old_fdopen (int fd, const char *mode) + { + int read_write; + int posix_mode = 0; +diff --git a/libio/oldiofgetpos.c b/libio/oldiofgetpos.c +index b1b326318ba9390a..3f21f8c896a1f9eb 100644 +--- a/libio/oldiofgetpos.c ++++ b/libio/oldiofgetpos.c +@@ -33,9 +33,7 @@ + + int + attribute_compat_text_section +-_IO_old_fgetpos (fp, posp) +- _IO_FILE *fp; +- _IO_fpos_t *posp; ++_IO_old_fgetpos (_IO_FILE *fp, _IO_fpos_t *posp) + { + _IO_off_t pos; + CHECK_FILE (fp, EOF); +diff --git a/libio/oldiofgetpos64.c b/libio/oldiofgetpos64.c +index bef8bc45ea26060d..0478d117caf49a57 100644 +--- a/libio/oldiofgetpos64.c ++++ b/libio/oldiofgetpos64.c +@@ -32,9 +32,7 @@ + + int + attribute_compat_text_section +-_IO_old_fgetpos64 (fp, posp) +- _IO_FILE *fp; +- _IO_fpos64_t *posp; ++_IO_old_fgetpos64 (_IO_FILE *fp, _IO_fpos64_t *posp) + { + _IO_off64_t pos; + CHECK_FILE (fp, EOF); +diff --git a/libio/oldiofopen.c b/libio/oldiofopen.c +index 869f668d70074943..ec7d9e0b09972b0a 100644 +--- a/libio/oldiofopen.c ++++ b/libio/oldiofopen.c +@@ -34,9 +34,7 @@ + + _IO_FILE * + attribute_compat_text_section +-_IO_old_fopen (filename, mode) +- const char *filename; +- const char *mode; ++_IO_old_fopen (const char *filename, const char *mode) + { + struct locked_FILE + { +diff --git a/libio/oldiofsetpos.c b/libio/oldiofsetpos.c +index 2efe76e9d6f5e146..dcdaf4353b247976 100644 +--- a/libio/oldiofsetpos.c ++++ b/libio/oldiofsetpos.c +@@ -32,9 +32,7 @@ + #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2) + int + attribute_compat_text_section +-_IO_old_fsetpos (fp, posp) +- _IO_FILE *fp; +- const _IO_fpos_t *posp; ++_IO_old_fsetpos (_IO_FILE *fp, const _IO_fpos_t *posp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/oldiofsetpos64.c b/libio/oldiofsetpos64.c +index 23cb693d3a88cea4..4b4416293a7bf509 100644 +--- a/libio/oldiofsetpos64.c ++++ b/libio/oldiofsetpos64.c +@@ -32,9 +32,7 @@ + + int + attribute_compat_text_section +-_IO_old_fsetpos64 (fp, posp) +- _IO_FILE *fp; +- const _IO_fpos64_t *posp; ++_IO_old_fsetpos64 (_IO_FILE *fp, const _IO_fpos64_t *posp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/oldiopopen.c b/libio/oldiopopen.c +index 2892016be1aab86d..46dacf0f236e3129 100644 +--- a/libio/oldiopopen.c ++++ b/libio/oldiopopen.c +@@ -115,10 +115,7 @@ unlock (void *not_used) + + _IO_FILE * + attribute_compat_text_section +-_IO_old_proc_open (fp, command, mode) +- _IO_FILE *fp; +- const char *command; +- const char *mode; ++_IO_old_proc_open (_IO_FILE *fp, const char *command, const char *mode) + { + volatile int read_or_write; + volatile int parent_end, child_end; +@@ -194,9 +191,7 @@ _IO_old_proc_open (fp, command, mode) + + _IO_FILE * + attribute_compat_text_section +-_IO_old_popen (command, mode) +- const char *command; +- const char *mode; ++_IO_old_popen (const char *command, const char *mode) + { + struct locked_FILE + { +@@ -229,8 +224,7 @@ _IO_old_popen (command, mode) + + int + attribute_compat_text_section +-_IO_old_proc_close (fp) +- _IO_FILE *fp; ++_IO_old_proc_close (_IO_FILE *fp) + { + /* This is not name-space clean. FIXME! */ + int wstatus; +diff --git a/libio/oldpclose.c b/libio/oldpclose.c +index 4b55eab247e67c21..24d5681e23a5598d 100644 +--- a/libio/oldpclose.c ++++ b/libio/oldpclose.c +@@ -34,8 +34,7 @@ + + int + attribute_compat_text_section +-__old_pclose (fp) +- FILE *fp; ++__old_pclose (FILE *fp) + { + #if 0 + /* Does not actually test that stream was created by popen(). Instead, +diff --git a/libio/pclose.c b/libio/pclose.c +index 9abe76beb0f7032b..eb0ec5daae9e4562 100644 +--- a/libio/pclose.c ++++ b/libio/pclose.c +@@ -30,8 +30,7 @@ + #include + + int +-__new_pclose (fp) +- FILE *fp; ++__new_pclose (FILE *fp) + { + #if 0 + /* Does not actually test that stream was created by popen(). Instead, +diff --git a/libio/peekc.c b/libio/peekc.c +index d5bcecdebf3358e1..21f78a435ae3baa2 100644 +--- a/libio/peekc.c ++++ b/libio/peekc.c +@@ -30,8 +30,7 @@ + #undef _IO_peekc + + int +-_IO_peekc_locked (fp) +- _IO_FILE *fp; ++_IO_peekc_locked (_IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/putc.c b/libio/putc.c +index 4d97b505a00f2719..a2503ffb0230f7a3 100644 +--- a/libio/putc.c ++++ b/libio/putc.c +@@ -21,9 +21,7 @@ + #undef _IO_putc + + int +-_IO_putc (c, fp) +- int c; +- _IO_FILE *fp; ++_IO_putc (int c, _IO_FILE *fp) + { + int result; + CHECK_FILE (fp, EOF); +diff --git a/libio/putc_u.c b/libio/putc_u.c +index 927083b661fc5bc0..480b1e6b1387311f 100644 +--- a/libio/putc_u.c ++++ b/libio/putc_u.c +@@ -21,9 +21,7 @@ + #undef putc_unlocked + + int +-putc_unlocked (c, fp) +- int c; +- _IO_FILE *fp; ++putc_unlocked (int c, _IO_FILE *fp) + { + CHECK_FILE (fp, EOF); + return _IO_putc_unlocked (c, fp); +diff --git a/libio/putchar.c b/libio/putchar.c +index 7fd54b5beccbeb83..cbcd8a9ec4466aea 100644 +--- a/libio/putchar.c ++++ b/libio/putchar.c +@@ -21,8 +21,7 @@ + #undef putchar + + int +-putchar (c) +- int c; ++putchar (int c) + { + int result; + _IO_acquire_lock (_IO_stdout); +diff --git a/libio/putchar_u.c b/libio/putchar_u.c +index a8c915693dc368fb..b665d241c5bee273 100644 +--- a/libio/putchar_u.c ++++ b/libio/putchar_u.c +@@ -21,8 +21,7 @@ + #undef putchar_unlocked + + int +-putchar_unlocked (c) +- int c; ++putchar_unlocked (int c) + { + CHECK_FILE (_IO_stdout, EOF); + return _IO_putc_unlocked (c, _IO_stdout); +diff --git a/libio/putwc.c b/libio/putwc.c +index 626f40af035ef95d..7a61db29990c028d 100644 +--- a/libio/putwc.c ++++ b/libio/putwc.c +@@ -20,9 +20,7 @@ + #include + + wint_t +-putwc (wc, fp) +- wchar_t wc; +- _IO_FILE *fp; ++putwc (wchar_t wc, _IO_FILE *fp) + { + wint_t result; + CHECK_FILE (fp, WEOF); +diff --git a/libio/putwc_u.c b/libio/putwc_u.c +index 707f6622bcaf43ff..c6156a7961f71cae 100644 +--- a/libio/putwc_u.c ++++ b/libio/putwc_u.c +@@ -19,9 +19,7 @@ + #include + + wint_t +-putwc_unlocked (wc, fp) +- wchar_t wc; +- _IO_FILE *fp; ++putwc_unlocked (wchar_t wc, _IO_FILE *fp) + { + CHECK_FILE (fp, WEOF); + return _IO_putwc_unlocked (wc, fp); +diff --git a/libio/putwchar.c b/libio/putwchar.c +index 608c48829b18fbe2..b917fa33de27615a 100644 +--- a/libio/putwchar.c ++++ b/libio/putwchar.c +@@ -19,8 +19,7 @@ + #include + + wint_t +-putwchar (wc) +- wchar_t wc; ++putwchar (wchar_t wc) + { + wint_t result; + _IO_acquire_lock (_IO_stdout); +diff --git a/libio/putwchar_u.c b/libio/putwchar_u.c +index 114caec6429e064c..85aa92417d4989e1 100644 +--- a/libio/putwchar_u.c ++++ b/libio/putwchar_u.c +@@ -19,8 +19,7 @@ + #include + + wint_t +-putwchar_unlocked (wc) +- wchar_t wc; ++putwchar_unlocked (wchar_t wc) + { + CHECK_FILE (_IO_stdout, WEOF); + return _IO_putwc_unlocked (wc, _IO_stdout); +diff --git a/libio/rewind.c b/libio/rewind.c +index 70d41c932631fcc6..8ef281fac5a28656 100644 +--- a/libio/rewind.c ++++ b/libio/rewind.c +@@ -28,8 +28,7 @@ + #include + + void +-rewind (fp) +- _IO_FILE *fp; ++rewind (_IO_FILE *fp) + { + CHECK_FILE (fp, ); + _IO_acquire_lock (fp); +diff --git a/libio/setbuf.c b/libio/setbuf.c +index a20ef1f8f8f612fb..d3c29794584a88e4 100644 +--- a/libio/setbuf.c ++++ b/libio/setbuf.c +@@ -28,9 +28,7 @@ + #include "stdio.h" + + void +-setbuf (fp, buf) +- _IO_FILE *fp; +- char *buf; ++setbuf (_IO_FILE *fp, char *buf) + { + _IO_setbuffer (fp, buf, _IO_BUFSIZ); + } +diff --git a/libio/setlinebuf.c b/libio/setlinebuf.c +index e0db23cedeb7057b..fbbafe2a85ea9079 100644 +--- a/libio/setlinebuf.c ++++ b/libio/setlinebuf.c +@@ -30,8 +30,7 @@ + #undef setlinebuf + + void +-setlinebuf (stream) +- _IO_FILE *stream; ++setlinebuf (_IO_FILE *stream) + { + _IO_setvbuf (stream, NULL, 1, 0); + } +diff --git a/libio/vasprintf.c b/libio/vasprintf.c +index 494efa6d0977c1a4..282c86fff0a7ae0e 100644 +--- a/libio/vasprintf.c ++++ b/libio/vasprintf.c +@@ -32,10 +32,7 @@ + #include "strfile.h" + + int +-_IO_vasprintf (result_ptr, format, args) +- char **result_ptr; +- const char *format; +- _IO_va_list args; ++_IO_vasprintf (char **result_ptr, const char *format, _IO_va_list args) + { + /* Initial size of the buffer to be used. Will be doubled each time an + overflow occurs. */ +diff --git a/libio/vscanf.c b/libio/vscanf.c +index 12bfb34771889101..393d74323e77e60d 100644 +--- a/libio/vscanf.c ++++ b/libio/vscanf.c +@@ -30,9 +30,7 @@ + #undef vscanf + + int +-_IO_vscanf (format, args) +- const char *format; +- _IO_va_list args; ++_IO_vscanf (const char *format, _IO_va_list args) + { + return _IO_vfscanf (_IO_stdin, format, args, NULL); + } +diff --git a/libio/vsnprintf.c b/libio/vsnprintf.c +index 26491e805080ff32..4e76a8c8fc035430 100644 +--- a/libio/vsnprintf.c ++++ b/libio/vsnprintf.c +@@ -30,9 +30,7 @@ + static int _IO_strn_overflow (_IO_FILE *fp, int c) __THROW; + + static int +-_IO_strn_overflow (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_strn_overflow (_IO_FILE *fp, int c) + { + /* When we come to here this means the user supplied buffer is + filled. But since we must return the number of characters which +diff --git a/libio/vswprintf.c b/libio/vswprintf.c +index 030eaa913601c80b..5cd58de2e88939d9 100644 +--- a/libio/vswprintf.c ++++ b/libio/vswprintf.c +@@ -31,9 +31,7 @@ + static wint_t _IO_wstrn_overflow (_IO_FILE *fp, wint_t c) __THROW; + + static wint_t +-_IO_wstrn_overflow (fp, c) +- _IO_FILE *fp; +- wint_t c; ++_IO_wstrn_overflow (_IO_FILE *fp, wint_t c) + { + /* When we come to here this means the user supplied buffer is + filled. But since we must return the number of characters which +diff --git a/libio/wfiledoalloc.c b/libio/wfiledoalloc.c +index 10f4270ce18d2d93..86fc3f5df7f6ccaa 100644 +--- a/libio/wfiledoalloc.c ++++ b/libio/wfiledoalloc.c +@@ -78,8 +78,7 @@ + */ + + int +-_IO_wfile_doallocate (fp) +- _IO_FILE *fp; ++_IO_wfile_doallocate (_IO_FILE *fp) + { + _IO_size_t size; + wchar_t *p; +diff --git a/libio/wgenops.c b/libio/wgenops.c +index f8f27b04a9c4d1bb..3f34bbc92d8746be 100644 +--- a/libio/wgenops.c ++++ b/libio/wgenops.c +@@ -48,9 +48,7 @@ static int save_for_wbackup (_IO_FILE *fp, wchar_t *end_p) __THROW + /* Return minimum _pos markers + Assumes the current get area is the main get area. */ + _IO_ssize_t +-_IO_least_wmarker (fp, end_p) +- _IO_FILE *fp; +- wchar_t *end_p; ++_IO_least_wmarker (_IO_FILE *fp, wchar_t *end_p) + { + _IO_ssize_t least_so_far = end_p - fp->_wide_data->_IO_read_base; + struct _IO_marker *mark; +@@ -63,8 +61,7 @@ libc_hidden_def (_IO_least_wmarker) + + /* Switch current get area from backup buffer to (start of) main get area. */ + void +-_IO_switch_to_main_wget_area (fp) +- _IO_FILE *fp; ++_IO_switch_to_main_wget_area (_IO_FILE *fp) + { + wchar_t *tmp; + fp->_flags &= ~_IO_IN_BACKUP; +@@ -84,8 +81,7 @@ libc_hidden_def (_IO_switch_to_main_wget_area) + + /* Switch current get area from main get area to (end of) backup area. */ + void +-_IO_switch_to_wbackup_area (fp) +- _IO_FILE *fp; ++_IO_switch_to_wbackup_area (_IO_FILE *fp) + { + wchar_t *tmp; + fp->_flags |= _IO_IN_BACKUP; +@@ -104,11 +100,7 @@ libc_hidden_def (_IO_switch_to_wbackup_area) + + + void +-_IO_wsetb (f, b, eb, a) +- _IO_FILE *f; +- wchar_t *b; +- wchar_t *eb; +- int a; ++_IO_wsetb (_IO_FILE *f, wchar_t *b, wchar_t *eb, int a) + { + if (f->_wide_data->_IO_buf_base && !(f->_flags2 & _IO_FLAGS2_USER_WBUF)) + FREE_BUF (f->_wide_data->_IO_buf_base, _IO_wblen (f) * sizeof (wchar_t)); +@@ -123,9 +115,7 @@ libc_hidden_def (_IO_wsetb) + + + wint_t +-_IO_wdefault_pbackfail (fp, c) +- _IO_FILE *fp; +- wint_t c; ++_IO_wdefault_pbackfail (_IO_FILE *fp, wint_t c) + { + if (fp->_wide_data->_IO_read_ptr > fp->_wide_data->_IO_read_base + && !_IO_in_backup (fp) +@@ -188,9 +178,7 @@ libc_hidden_def (_IO_wdefault_pbackfail) + + + void +-_IO_wdefault_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_wdefault_finish (_IO_FILE *fp, int dummy) + { + struct _IO_marker *mark; + if (fp->_wide_data->_IO_buf_base && !(fp->_flags2 & _IO_FLAGS2_USER_WBUF)) +@@ -220,8 +208,7 @@ libc_hidden_def (_IO_wdefault_finish) + + + wint_t +-_IO_wdefault_uflow (fp) +- _IO_FILE *fp; ++_IO_wdefault_uflow (_IO_FILE *fp) + { + wint_t wch; + wch = _IO_UNDERFLOW (fp); +@@ -233,9 +220,7 @@ libc_hidden_def (_IO_wdefault_uflow) + + + wint_t +-__woverflow (f, wch) +- _IO_FILE *f; +- wint_t wch; ++__woverflow (_IO_FILE *f, wint_t wch) + { + if (f->_mode == 0) + _IO_fwide (f, 1); +@@ -245,8 +230,7 @@ libc_hidden_def (__woverflow) + + + wint_t +-__wuflow (fp) +- _IO_FILE *fp; ++__wuflow (_IO_FILE *fp) + { + if (fp->_mode < 0 || (fp->_mode == 0 && _IO_fwide (fp, 1) != 1)) + return WEOF; +@@ -276,8 +260,7 @@ __wuflow (fp) + libc_hidden_def (__wuflow) + + wint_t +-__wunderflow (fp) +- _IO_FILE *fp; ++__wunderflow (_IO_FILE *fp) + { + if (fp->_mode < 0 || (fp->_mode == 0 && _IO_fwide (fp, 1) != 1)) + return WEOF; +@@ -308,10 +291,7 @@ libc_hidden_def (__wunderflow) + + + _IO_size_t +-_IO_wdefault_xsputn (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_size_t n; ++_IO_wdefault_xsputn (_IO_FILE *f, const void *data, _IO_size_t n) + { + const wchar_t *s = (const wchar_t *) data; + _IO_size_t more = n; +@@ -359,10 +339,7 @@ libc_hidden_def (_IO_wdefault_xsputn) + + + _IO_size_t +-_IO_wdefault_xsgetn (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_wdefault_xsgetn (_IO_FILE *fp, void *data, _IO_size_t n) + { + _IO_size_t more = n; + wchar_t *s = (wchar_t*) data; +@@ -406,8 +383,7 @@ libc_hidden_def (_IO_wdefault_xsgetn) + + + void +-_IO_wdoallocbuf (fp) +- _IO_FILE *fp; ++_IO_wdoallocbuf (_IO_FILE *fp) + { + if (fp->_wide_data->_IO_buf_base) + return; +@@ -421,8 +397,7 @@ libc_hidden_def (_IO_wdoallocbuf) + + + int +-_IO_wdefault_doallocate (fp) +- _IO_FILE *fp; ++_IO_wdefault_doallocate (_IO_FILE *fp) + { + wchar_t *buf; + +@@ -434,8 +409,7 @@ libc_hidden_def (_IO_wdefault_doallocate) + + + int +-_IO_switch_to_wget_mode (fp) +- _IO_FILE *fp; ++_IO_switch_to_wget_mode (_IO_FILE *fp) + { + if (fp->_wide_data->_IO_write_ptr > fp->_wide_data->_IO_write_base) + if ((wint_t)_IO_WOVERFLOW (fp, WEOF) == WEOF) +@@ -459,8 +433,7 @@ _IO_switch_to_wget_mode (fp) + libc_hidden_def (_IO_switch_to_wget_mode) + + void +-_IO_free_wbackup_area (fp) +- _IO_FILE *fp; ++_IO_free_wbackup_area (_IO_FILE *fp) + { + if (_IO_in_backup (fp)) + _IO_switch_to_main_wget_area (fp); /* Just in case. */ +@@ -473,8 +446,7 @@ libc_hidden_def (_IO_free_wbackup_area) + + #if 0 + int +-_IO_switch_to_wput_mode (fp) +- _IO_FILE *fp; ++_IO_switch_to_wput_mode (_IO_FILE *fp) + { + fp->_wide_data->_IO_write_base = fp->_wide_data->_IO_read_ptr; + fp->_wide_data->_IO_write_ptr = fp->_wide_data->_IO_read_ptr; +@@ -593,9 +565,7 @@ save_for_wbackup (fp, end_p) + } + + wint_t +-_IO_sputbackwc (fp, c) +- _IO_FILE *fp; +- wint_t c; ++_IO_sputbackwc (_IO_FILE *fp, wint_t c) + { + wint_t result; + +@@ -616,8 +586,7 @@ _IO_sputbackwc (fp, c) + libc_hidden_def (_IO_sputbackwc) + + wint_t +-_IO_sungetwc (fp) +- _IO_FILE *fp; ++_IO_sungetwc (_IO_FILE *fp) + { + wint_t result; + +@@ -637,10 +606,7 @@ _IO_sungetwc (fp) + + + unsigned +-_IO_adjust_wcolumn (start, line, count) +- unsigned start; +- const wchar_t *line; +- int count; ++_IO_adjust_wcolumn (unsigned start, const wchar_t *line, int count) + { + const wchar_t *ptr = line + count; + while (ptr > line) +@@ -650,9 +616,7 @@ _IO_adjust_wcolumn (start, line, count) + } + + void +-_IO_init_wmarker (marker, fp) +- struct _IO_marker *marker; +- _IO_FILE *fp; ++_IO_init_wmarker (struct _IO_marker *marker, _IO_FILE *fp) + { + marker->_sbuf = fp; + if (_IO_in_put_mode (fp)) +@@ -672,8 +636,7 @@ _IO_init_wmarker (marker, fp) + + /* Return difference between MARK and current position of MARK's stream. */ + int +-_IO_wmarker_delta (mark) +- struct _IO_marker *mark; ++_IO_wmarker_delta (struct _IO_marker *mark) + { + int cur_pos; + if (mark->_sbuf == NULL) +@@ -688,10 +651,7 @@ _IO_wmarker_delta (mark) + } + + int +-_IO_seekwmark (fp, mark, delta) +- _IO_FILE *fp; +- struct _IO_marker *mark; +- int delta; ++_IO_seekwmark (_IO_FILE *fp, struct _IO_marker *mark, int delta) + { + if (mark->_sbuf != fp) + return EOF; +@@ -712,8 +672,7 @@ _IO_seekwmark (fp, mark, delta) + } + + void +-_IO_unsave_wmarkers (fp) +- _IO_FILE *fp; ++_IO_unsave_wmarkers (_IO_FILE *fp) + { + struct _IO_marker *mark = fp->_markers; + if (mark) +diff --git a/libio/wmemstream.c b/libio/wmemstream.c +index bbdc08bd1ecfd66a..bd6d1798b1685fe9 100644 +--- a/libio/wmemstream.c ++++ b/libio/wmemstream.c +@@ -62,9 +62,7 @@ static const struct _IO_jump_t _IO_wmem_jumps libio_vtable = + necessary. *BUFLOC and *SIZELOC are updated with the buffer's location + and the number of characters written on fflush or fclose. */ + _IO_FILE * +-open_wmemstream (bufloc, sizeloc) +- wchar_t **bufloc; +- _IO_size_t *sizeloc; ++open_wmemstream (wchar_t **bufloc, _IO_size_t *sizeloc) + { + struct locked_FILE + { +@@ -103,8 +101,7 @@ open_wmemstream (bufloc, sizeloc) + + + static int +-_IO_wmem_sync (fp) +- _IO_FILE* fp; ++_IO_wmem_sync (_IO_FILE *fp) + { + struct _IO_FILE_wmemstream *mp = (struct _IO_FILE_wmemstream *) fp; + +@@ -125,9 +122,7 @@ _IO_wmem_sync (fp) + + + static void +-_IO_wmem_finish (fp, dummy) +- _IO_FILE* fp; +- int dummy; ++_IO_wmem_finish (_IO_FILE *fp, int dummy) + { + struct _IO_FILE_wmemstream *mp = (struct _IO_FILE_wmemstream *) fp; + +diff --git a/locale/nl_langinfo.c b/locale/nl_langinfo.c +index 86fcad73e514088d..a2b64d2b207ed2dd 100644 +--- a/locale/nl_langinfo.c ++++ b/locale/nl_langinfo.c +@@ -27,8 +27,7 @@ + /* Return a string with the data for locale-dependent parameter ITEM. */ + + char * +-nl_langinfo (item) +- nl_item item; ++nl_langinfo (nl_item item) + { + return __nl_langinfo_l (item, _NL_CURRENT_LOCALE); + } +diff --git a/locale/nl_langinfo_l.c b/locale/nl_langinfo_l.c +index 1c6bc658680bd42c..e826c2073145c1e9 100644 +--- a/locale/nl_langinfo_l.c ++++ b/locale/nl_langinfo_l.c +@@ -26,9 +26,7 @@ + /* Return a string with the data for locale-dependent parameter ITEM. */ + + char * +-__nl_langinfo_l (item, l) +- nl_item item; +- __locale_t l; ++__nl_langinfo_l (nl_item item, __locale_t l) + { + int category = _NL_ITEM_CATEGORY (item); + unsigned int index = _NL_ITEM_INDEX (item); +diff --git a/locale/programs/simple-hash.c b/locale/programs/simple-hash.c +index 30d3247d5ce98374..b08e60ac72185ad9 100644 +--- a/locale/programs/simple-hash.c ++++ b/locale/programs/simple-hash.c +@@ -72,9 +72,7 @@ static int is_prime (unsigned long int candidate); + + + int +-init_hash (htab, init_size) +- hash_table *htab; +- unsigned long int init_size; ++init_hash (hash_table *htab, unsigned long int init_size) + { + /* We need the size to be a prime. */ + init_size = next_prime (init_size); +@@ -94,8 +92,7 @@ init_hash (htab, init_size) + + + int +-delete_hash (htab) +- hash_table *htab; ++delete_hash (hash_table *htab) + { + free (htab->table); + obstack_free (&htab->mem_pool, NULL); +@@ -104,11 +101,7 @@ delete_hash (htab) + + + int +-insert_entry (htab, key, keylen, data) +- hash_table *htab; +- const void *key; +- size_t keylen; +- void *data; ++insert_entry (hash_table *htab, const void *key, size_t keylen, void *data) + { + unsigned long int hval = compute_hashval (key, keylen); + hash_entry *table = (hash_entry *) htab->table; +@@ -200,11 +193,7 @@ find_entry (htab, key, keylen, result) + + + int +-set_entry (htab, key, keylen, newval) +- hash_table *htab; +- const void *key; +- size_t keylen; +- void *newval; ++set_entry (hash_table *htab, const void *key, size_t keylen, void *newval) + { + hash_entry *table = (hash_entry *) htab->table; + size_t idx = lookup (htab, key, keylen, compute_hashval (key, keylen)); +@@ -293,8 +282,7 @@ lookup (htab, key, keylen, hval) + + + unsigned long int +-next_prime (seed) +- unsigned long int seed; ++next_prime (unsigned long int seed) + { + /* Make it definitely odd. */ + seed |= 1; +@@ -307,8 +295,7 @@ next_prime (seed) + + + static int +-is_prime (candidate) +- unsigned long int candidate; ++is_prime (unsigned long int candidate) + { + /* No even number and none less than 10 will be passed here. */ + unsigned long int divn = 3; +diff --git a/locale/programs/xmalloc.c b/locale/programs/xmalloc.c +index 33ff5502af3362d3..bfc86ab77c29ef0b 100644 +--- a/locale/programs/xmalloc.c ++++ b/locale/programs/xmalloc.c +@@ -53,8 +53,7 @@ void free (); + int xmalloc_exit_failure = EXIT_FAILURE; + + static VOID * +-fixup_null_alloc (n) +- size_t n; ++fixup_null_alloc (size_t n) + { + VOID *p; + +@@ -69,8 +68,7 @@ fixup_null_alloc (n) + /* Allocate N bytes of memory dynamically, with error checking. */ + + VOID * +-xmalloc (n) +- size_t n; ++xmalloc (size_t n) + { + VOID *p; + +@@ -99,9 +97,7 @@ xcalloc (n, s) + If P is NULL, run xmalloc. */ + + VOID * +-xrealloc (p, n) +- VOID *p; +- size_t n; ++xrealloc (VOID *p, size_t n) + { + if (p == 0) + return xmalloc (n); +diff --git a/locale/programs/xstrdup.c b/locale/programs/xstrdup.c +index fdd637c6333c609f..d56e39958e6469a7 100644 +--- a/locale/programs/xstrdup.c ++++ b/locale/programs/xstrdup.c +@@ -30,8 +30,7 @@ char *xstrdup (char *string) __THROW; + /* Return a newly allocated copy of STRING. */ + + char * +-xstrdup (string) +- char *string; ++xstrdup (char *string) + { + return strcpy (xmalloc (strlen (string) + 1), string); + } +diff --git a/localedata/collate-test.c b/localedata/collate-test.c +index a84974cef3fa5ccd..b506ad9dcc7c3a50 100644 +--- a/localedata/collate-test.c ++++ b/localedata/collate-test.c +@@ -121,9 +121,7 @@ main (int argc, char *argv[]) + + + static int +-xstrcoll (ptr1, ptr2) +- const void *ptr1; +- const void *ptr2; ++xstrcoll (const void *ptr1, const void *ptr2) + { + const struct lines *l1 = (const struct lines *) ptr1; + const struct lines *l2 = (const struct lines *) ptr2; +diff --git a/localedata/xfrm-test.c b/localedata/xfrm-test.c +index 1ab087440ebe30b4..98031362d7023ef8 100644 +--- a/localedata/xfrm-test.c ++++ b/localedata/xfrm-test.c +@@ -132,9 +132,7 @@ main (int argc, char *argv[]) + + + static int +-xstrcmp (ptr1, ptr2) +- const void *ptr1; +- const void *ptr2; ++xstrcmp (const void *ptr1, const void *ptr2) + { + const struct lines *l1 = (const struct lines *) ptr1; + const struct lines *l2 = (const struct lines *) ptr2; +diff --git a/login/getlogin_r.c b/login/getlogin_r.c +index 7cd7be91591b7789..ab21258cd39769dc 100644 +--- a/login/getlogin_r.c ++++ b/login/getlogin_r.c +@@ -23,9 +23,7 @@ + If it cannot be determined or some other error occurred, return the error + code. Otherwise return 0. */ + int +-getlogin_r (name, name_len) +- char *name; +- size_t name_len; ++getlogin_r (char *name, size_t name_len) + { + __set_errno (ENOSYS); + return errno; +diff --git a/login/getpt.c b/login/getpt.c +index 89293d8cdf8d9523..6f38a034c3297949 100644 +--- a/login/getpt.c ++++ b/login/getpt.c +@@ -31,8 +31,7 @@ weak_alias (__getpt, getpt) + + /* We cannot define posix_openpt in general for BSD systems. */ + int +-__posix_openpt (oflag) +- int oflag; ++__posix_openpt (int oflag) + { + __set_errno (ENOSYS); + return -1; +diff --git a/login/login_tty.c b/login/login_tty.c +index 2ba276d4a96441b7..a94f5cb861d1b36a 100644 +--- a/login/login_tty.c ++++ b/login/login_tty.c +@@ -39,8 +39,7 @@ static char sccsid[] = "@(#)login_tty.c 8.1 (Berkeley) 6/4/93"; + #include + + int +-login_tty(fd) +- int fd; ++login_tty (int fd) + { + (void) setsid(); + #ifdef TIOCSCTTY +diff --git a/login/setlogin.c b/login/setlogin.c +index 8a8362bdc864b6b4..6ff9bced3e0358a8 100644 +--- a/login/setlogin.c ++++ b/login/setlogin.c +@@ -20,8 +20,7 @@ + + /* Set the login name returned by `getlogin'. */ + int +-setlogin (name) +- const char *name; ++setlogin (const char *name) + { + __set_errno (ENOSYS); + return -1; +diff --git a/mach/msg-destroy.c b/mach/msg-destroy.c +index 19f96d4e218bb988..5371037028279fd1 100644 +--- a/mach/msg-destroy.c ++++ b/mach/msg-destroy.c +@@ -58,8 +58,7 @@ static void mach_msg_destroy_memory(vm_offset_t, vm_size_t); + */ + + void +-__mach_msg_destroy(msg) +- mach_msg_header_t *msg; ++__mach_msg_destroy (mach_msg_header_t *msg) + { + mach_msg_bits_t mbits = msg->msgh_bits; + +@@ -192,9 +191,7 @@ __mach_msg_destroy(msg) + weak_alias (__mach_msg_destroy, mach_msg_destroy) + + static void +-mach_msg_destroy_port(port, type) +- mach_port_t port; +- mach_msg_type_name_t type; ++mach_msg_destroy_port (mach_port_t port, mach_msg_type_name_t type) + { + if (MACH_PORT_VALID(port)) switch (type) { + case MACH_MSG_TYPE_MOVE_SEND: +@@ -227,9 +224,7 @@ mach_msg_destroy_port(port, type) + } + + static void +-mach_msg_destroy_memory(addr, size) +- vm_offset_t addr; +- vm_size_t size; ++mach_msg_destroy_memory (vm_offset_t addr, vm_size_t size) + { + if (size > 0) + (void) __vm_deallocate(__mach_task_self(), addr, size); +diff --git a/malloc/mcheck.c b/malloc/mcheck.c +index 695de42e914e247c..680e03353e03f235 100644 +--- a/malloc/mcheck.c ++++ b/malloc/mcheck.c +@@ -70,10 +70,7 @@ static int pedantic; + #else + static void flood (__ptr_t, int, size_t); + static void +-flood (ptr, val, size) +- __ptr_t ptr; +- int val; +- size_t size; ++flood (__ptr_t ptr, int val, size_t size) + { + char *cp = ptr; + while (size--) +diff --git a/misc/acct.c b/misc/acct.c +index 8e4713bf132c61cf..d952b6233b72a63c 100644 +--- a/misc/acct.c ++++ b/misc/acct.c +@@ -22,8 +22,7 @@ + a record for each process as it terminates, to this file. If NAME is NULL, + turn accounting off. This call is restricted to the super-user. */ + int +-acct (name) +- const char *name; ++acct (const char *name) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/brk.c b/misc/brk.c +index bcbac643997bb1cf..316e909c7015e531 100644 +--- a/misc/brk.c ++++ b/misc/brk.c +@@ -24,8 +24,7 @@ void *__curbrk; + /* Set the end of the process's data space to ADDR. + Return 0 if successful, -1 if not. */ + int +-__brk (addr) +- void *addr; ++__brk (void *addr) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/chflags.c b/misc/chflags.c +index d1a44b24c103cddf..aaa97f9380bac22d 100644 +--- a/misc/chflags.c ++++ b/misc/chflags.c +@@ -24,9 +24,7 @@ + int chflags (const char *file, int flags) __THROW; + + int +-chflags (file, flags) +- const char *file; +- int flags; ++chflags (const char *file, int flags) + { + if (file == NULL) + { +diff --git a/misc/chroot.c b/misc/chroot.c +index 1c1bbd8be7536e1b..add7a2a005a35c2d 100644 +--- a/misc/chroot.c ++++ b/misc/chroot.c +@@ -21,8 +21,7 @@ + /* Make PATH be the root directory (the starting point for absolute paths). + This call is restricted to the super-user. */ + int +-chroot (path) +- const char *path; ++chroot (const char *path) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/fchflags.c b/misc/fchflags.c +index 8277134199b7bf56..73a6a3a6d92bb1f6 100644 +--- a/misc/fchflags.c ++++ b/misc/fchflags.c +@@ -24,9 +24,7 @@ + int fchflags (int fd, int flags) __THROW; + + int +-fchflags (fd, flags) +- int fd; +- int flags; ++fchflags (int fd, int flags) + { + if (fd < 0) + { +diff --git a/misc/fstab.c b/misc/fstab.c +index 86680466938ecc04..9981bb4398d35e69 100644 +--- a/misc/fstab.c ++++ b/misc/fstab.c +@@ -62,8 +62,7 @@ getfsent (void) + + + struct fstab * +-getfsspec (name) +- const char *name; ++getfsspec (const char *name) + { + struct fstab_state *state; + struct mntent *m; +@@ -79,8 +78,7 @@ getfsspec (name) + + + struct fstab * +-getfsfile (name) +- const char *name; ++getfsfile (const char *name) + { + struct fstab_state *state; + struct mntent *m; +diff --git a/misc/fsync.c b/misc/fsync.c +index a927f72d31b0dde4..64763fbfec1b2669 100644 +--- a/misc/fsync.c ++++ b/misc/fsync.c +@@ -20,8 +20,7 @@ + + /* Make all changes done to FD actually appear on disk. */ + int +-fsync (fd) +- int fd; ++fsync (int fd) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/ftruncate.c b/misc/ftruncate.c +index 79bf28794166cfab..486098cc6516b2a9 100644 +--- a/misc/ftruncate.c ++++ b/misc/ftruncate.c +@@ -21,9 +21,7 @@ + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +-__ftruncate (fd, length) +- int fd; +- off_t length; ++__ftruncate (int fd, off_t length) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/ftruncate64.c b/misc/ftruncate64.c +index 42f4d700f015d195..bf5e71c73a9ef168 100644 +--- a/misc/ftruncate64.c ++++ b/misc/ftruncate64.c +@@ -21,9 +21,7 @@ + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +-__ftruncate64 (fd, length) +- int fd; +- off64_t length; ++__ftruncate64 (int fd, off64_t length) + { + if ((off_t) length != length) + { +diff --git a/misc/getdomain.c b/misc/getdomain.c +index 7fb8da241dfc64b1..b4c376ffab4e0b6e 100644 +--- a/misc/getdomain.c ++++ b/misc/getdomain.c +@@ -29,9 +29,7 @@ + /* The `uname' information includes the domain name. */ + + int +-getdomainname (name, len) +- char *name; +- size_t len; ++getdomainname (char *name, size_t len) + { + struct utsname u; + size_t u_len; +@@ -47,9 +45,7 @@ getdomainname (name, len) + #else + + int +-getdomainname (name, len) +- char *name; +- size_t len; ++getdomainname (char *name, size_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/gethostname.c b/misc/gethostname.c +index 40d3027ec02e6838..e18f49eb97b0e2fb 100644 +--- a/misc/gethostname.c ++++ b/misc/gethostname.c +@@ -22,9 +22,7 @@ + The result is null-terminated if LEN is large enough for the full + name and the terminator. */ + int +-__gethostname (name, len) +- char *name; +- size_t len; ++__gethostname (char *name, size_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/getpass.c b/misc/getpass.c +index d9a51c878a96805f..74b757e19fc4200d 100644 +--- a/misc/getpass.c ++++ b/misc/getpass.c +@@ -43,8 +43,7 @@ call_fclose (void *arg) + } + + char * +-getpass (prompt) +- const char *prompt; ++getpass (const char *prompt) + { + FILE *in, *out; + struct termios s, t; +diff --git a/misc/getttyent.c b/misc/getttyent.c +index 018789a801b8b764..4344c8f8a936ce3a 100644 +--- a/misc/getttyent.c ++++ b/misc/getttyent.c +@@ -140,8 +140,7 @@ libc_hidden_def (getttyent) + */ + static char * + internal_function +-skip(p) +- char *p; ++skip (char *p) + { + char *t; + int c, q; +@@ -175,8 +174,7 @@ skip(p) + + static char * + internal_function +-value(p) +- char *p; ++value (char *p) + { + + return ((p = index(p, '=')) ? ++p : NULL); +diff --git a/misc/gtty.c b/misc/gtty.c +index 2c6ae3f9702beaef..bc73f98331571b23 100644 +--- a/misc/gtty.c ++++ b/misc/gtty.c +@@ -21,9 +21,7 @@ + + /* Fill in *PARAMS with terminal parameters associated with FD. */ + int +-gtty (fd, params) +- int fd; +- struct sgttyb *params; ++gtty (int fd, struct sgttyb *params) + { + if (params == NULL) + { +diff --git a/misc/hsearch.c b/misc/hsearch.c +index 26d12a96939f64d6..fe8cf6580a6bb40f 100644 +--- a/misc/hsearch.c ++++ b/misc/hsearch.c +@@ -24,9 +24,7 @@ static struct hsearch_data htab; + + /* Define the non-reentrant function using the reentrant counterparts. */ + ENTRY * +-hsearch (item, action) +- ENTRY item; +- ACTION action; ++hsearch (ENTRY item, ACTION action) + { + ENTRY *result; + +@@ -37,8 +35,7 @@ hsearch (item, action) + + + int +-hcreate (nel) +- size_t nel; ++hcreate (size_t nel) + { + return hcreate_r (nel, &htab); + } +diff --git a/misc/hsearch_r.c b/misc/hsearch_r.c +index ba37afa000b3ce73..3509fb7b20fe524e 100644 +--- a/misc/hsearch_r.c ++++ b/misc/hsearch_r.c +@@ -61,9 +61,7 @@ isprime (unsigned int number) + The contents of the table is zeroed, especially the field used + becomes zero. */ + int +-hcreate_r (nel, htab) +- size_t nel; +- struct hsearch_data *htab; ++hcreate_r (size_t nel, struct hsearch_data *htab) + { + /* Test for correct arguments. */ + if (htab == NULL) +@@ -117,8 +115,7 @@ libc_hidden_def (hcreate_r) + /* After using the hash table it has to be destroyed. The used memory can + be freed and the local static variable can be marked as not used. */ + void +-hdestroy_r (htab) +- struct hsearch_data *htab; ++hdestroy_r (struct hsearch_data *htab) + { + /* Test for correct arguments. */ + if (htab == NULL) +diff --git a/misc/ioctl.c b/misc/ioctl.c +index f47d90ec4425bac6..211d3c432e5af787 100644 +--- a/misc/ioctl.c ++++ b/misc/ioctl.c +@@ -21,9 +21,7 @@ + /* Perform the I/O control operation specified by REQUEST on FD. + The actual type and use of ARG and the return value depend on REQUEST. */ + int +-__ioctl (fd, request) +- int fd; +- unsigned long int request; ++__ioctl (int fd, unsigned long int request) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/mkdtemp.c b/misc/mkdtemp.c +index b86a06f86f8ff8ae..3b50aa1c29d517ab 100644 +--- a/misc/mkdtemp.c ++++ b/misc/mkdtemp.c +@@ -24,8 +24,7 @@ + The directory is created, mode 700, and its name is returned. + (This function comes from OpenBSD.) */ + char * +-mkdtemp (template) +- char *template; ++mkdtemp (char *template) + { + if (__gen_tempname (template, 0, 0, __GT_DIR)) + return NULL; +diff --git a/misc/mkostemp.c b/misc/mkostemp.c +index 2c5b272537d1c79b..94baf3968dc0f4f6 100644 +--- a/misc/mkostemp.c ++++ b/misc/mkostemp.c +@@ -27,9 +27,7 @@ + they are replaced with a string that makes the filename unique. + Then open the file and return a fd. */ + int +-mkostemp (template, flags) +- char *template; +- int flags; ++mkostemp (char *template, int flags) + { + return __gen_tempname (template, 0, flags, __GT_FILE); + } +diff --git a/misc/mkostemp64.c b/misc/mkostemp64.c +index 104e6d98ad195081..ade0140fd19ba910 100644 +--- a/misc/mkostemp64.c ++++ b/misc/mkostemp64.c +@@ -27,9 +27,7 @@ + they are replaced with a string that makes the filename unique. + Then open the file and return a fd. */ + int +-mkostemp64 (template, flags) +- char *template; +- int flags; ++mkostemp64 (char *template, int flags) + { + return __gen_tempname (template, 0, flags | O_LARGEFILE, __GT_FILE); + } +diff --git a/misc/mkostemps.c b/misc/mkostemps.c +index aca487dca86b2b4b..9106c271be8a1fd5 100644 +--- a/misc/mkostemps.c ++++ b/misc/mkostemps.c +@@ -28,10 +28,7 @@ + "XXXXXX"; they are replaced with a string that makes the filename + unique. Then open the file and return a fd. */ + int +-mkostemps (template, suffixlen, flags) +- char *template; +- int suffixlen; +- int flags; ++mkostemps (char *template, int suffixlen, int flags) + { + if (suffixlen < 0) + { +diff --git a/misc/mkostemps64.c b/misc/mkostemps64.c +index 88d1460f34dc939d..80a0697b426976a9 100644 +--- a/misc/mkostemps64.c ++++ b/misc/mkostemps64.c +@@ -28,10 +28,7 @@ + "XXXXXX"; they are replaced with a string that makes the filename + unique. Then open the file and return a fd. */ + int +-mkostemps64 (template, suffixlen, flags) +- char *template; +- int suffixlen; +- int flags; ++mkostemps64 (char *template, int suffixlen, int flags) + { + if (suffixlen < 0) + { +diff --git a/misc/mkstemp.c b/misc/mkstemp.c +index c10bdd9af074aed4..3bdbab05ae92ba4c 100644 +--- a/misc/mkstemp.c ++++ b/misc/mkstemp.c +@@ -27,8 +27,7 @@ + they are replaced with a string that makes the filename unique. + Then open the file and return a fd. */ + int +-mkstemp (template) +- char *template; ++mkstemp (char *template) + { + return __gen_tempname (template, 0, 0, __GT_FILE); + } +diff --git a/misc/mkstemp64.c b/misc/mkstemp64.c +index 3667c4b95f7cab92..1d9c412f6f72f37e 100644 +--- a/misc/mkstemp64.c ++++ b/misc/mkstemp64.c +@@ -27,8 +27,7 @@ + they are replaced with a string that makes the filename unique. + Then open the file and return a fd. */ + int +-mkstemp64 (template) +- char *template; ++mkstemp64 (char *template) + { + return __gen_tempname (template, 0, O_LARGEFILE, __GT_FILE); + } +diff --git a/misc/mkstemps.c b/misc/mkstemps.c +index 79418c58dfe67ba6..14f38b6b53bb2fad 100644 +--- a/misc/mkstemps.c ++++ b/misc/mkstemps.c +@@ -28,9 +28,7 @@ + "XXXXXX"; they are replaced with a string that makes the filename + unique. Then open the file and return a fd. */ + int +-mkstemps (template, suffixlen) +- char *template; +- int suffixlen; ++mkstemps (char *template, int suffixlen) + { + if (suffixlen < 0) + { +diff --git a/misc/mkstemps64.c b/misc/mkstemps64.c +index 8393a516d1816e17..542cfbff96587783 100644 +--- a/misc/mkstemps64.c ++++ b/misc/mkstemps64.c +@@ -28,9 +28,7 @@ + "XXXXXX"; they are replaced with a string that makes the filename + unique. Then open the file and return a fd. */ + int +-mkstemps64 (template, suffixlen) +- char *template; +- int suffixlen; ++mkstemps64 (char *template, int suffixlen) + { + if (suffixlen < 0) + { +diff --git a/misc/mktemp.c b/misc/mktemp.c +index 19824f01a11f9af9..71f5651310bd745c 100644 +--- a/misc/mktemp.c ++++ b/misc/mktemp.c +@@ -22,8 +22,7 @@ + The last six characters of TEMPLATE must be "XXXXXX"; + they are replaced with a string that makes the filename unique. */ + char * +-__mktemp (template) +- char *template; ++__mktemp (char *template) + { + if (__gen_tempname (template, 0, 0, __GT_NOCREATE) < 0) + /* We return the null string if we can't find a unique file name. */ +diff --git a/misc/preadv.c b/misc/preadv.c +index 9ef32a649471df44..6dd86e6ee1378630 100644 +--- a/misc/preadv.c ++++ b/misc/preadv.c +@@ -26,11 +26,7 @@ + 'pread' (see ) except that data are put in VECTOR instead + of a contiguous buffer. */ + ssize_t +-preadv (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- off_t offset; ++preadv (int fd, const struct iovec *vector, int count, off_t offset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/preadv64.c b/misc/preadv64.c +index dd4949038bde5e5d..93c51939df7ed846 100644 +--- a/misc/preadv64.c ++++ b/misc/preadv64.c +@@ -26,11 +26,7 @@ + 'pread' (see ) except that data are put in VECTOR instead + of a contiguous buffer. */ + ssize_t +-preadv64 (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- off64_t offset; ++preadv64 (int fd, const struct iovec *vector, int count, off64_t offset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/pwritev.c b/misc/pwritev.c +index fba8a5760d9d7c6e..4940a37f39ec6016 100644 +--- a/misc/pwritev.c ++++ b/misc/pwritev.c +@@ -26,11 +26,7 @@ + ) except that the data are taken from VECTOR instead of a + contiguous buffer. */ + ssize_t +-pwritev (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- off_t offset; ++pwritev (int fd, const struct iovec *vector, int count, off_t offset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/pwritev64.c b/misc/pwritev64.c +index c5995111e66120c9..685a2c173356a706 100644 +--- a/misc/pwritev64.c ++++ b/misc/pwritev64.c +@@ -26,11 +26,7 @@ + ) except that the data are taken from VECTOR instead of a + contiguous buffer. */ + ssize_t +-pwritev64 (fd, vector, count, offset) +- int fd; +- const struct iovec *vector; +- int count; +- off64_t offset; ++pwritev64 (int fd, const struct iovec *vector, int count, off64_t offset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/readv.c b/misc/readv.c +index 6b165d782b10fe78..5b5f300c676ef892 100644 +--- a/misc/readv.c ++++ b/misc/readv.c +@@ -25,10 +25,7 @@ + Operates just like `read' (see ) except that data are + put in VECTOR instead of a contiguous buffer. */ + ssize_t +-__libc_readv (fd, vector, count) +- int fd; +- const struct iovec *vector; +- int count; ++__libc_readv (int fd, const struct iovec *vector, int count) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/revoke.c b/misc/revoke.c +index 2e42a423d26d44b1..2d537825464d8144 100644 +--- a/misc/revoke.c ++++ b/misc/revoke.c +@@ -20,8 +20,7 @@ + #include + + int +-revoke (file) +- const char *file; ++revoke (const char *file) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/setdomain.c b/misc/setdomain.c +index 7e6665b4fb6f3652..87198ea7e9ac3d11 100644 +--- a/misc/setdomain.c ++++ b/misc/setdomain.c +@@ -21,9 +21,7 @@ + /* Set the name of the current YP domain to NAME, which is LEN bytes long. + This call is restricted to the super-user. */ + int +-setdomainname (name, len) +- const char *name; +- size_t len; ++setdomainname (const char *name, size_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/setegid.c b/misc/setegid.c +index 219c1b9b08c9d899..79b44dda049c50e3 100644 +--- a/misc/setegid.c ++++ b/misc/setegid.c +@@ -20,8 +20,7 @@ + + /* Set the effective group ID of the calling process to GID. */ + int +-setegid (gid) +- __gid_t gid; ++setegid (__gid_t gid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/seteuid.c b/misc/seteuid.c +index 648b77a429d8326d..89b6cb8485c6c82c 100644 +--- a/misc/seteuid.c ++++ b/misc/seteuid.c +@@ -20,8 +20,7 @@ + + /* Set the effective user ID of the calling process to UID. */ + int +-seteuid (uid) +- __uid_t uid; ++seteuid (__uid_t uid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/sethostid.c b/misc/sethostid.c +index 73dfb33e0264c6a1..aac015f19c9e03e6 100644 +--- a/misc/sethostid.c ++++ b/misc/sethostid.c +@@ -21,8 +21,7 @@ + /* Set the current machine's Internet number to ID. + This call is restricted to the super-user. */ + int +-sethostid (id) +- long int id; ++sethostid (long int id) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/sethostname.c b/misc/sethostname.c +index 96413586204dad8b..236b973e5bdfe77d 100644 +--- a/misc/sethostname.c ++++ b/misc/sethostname.c +@@ -21,9 +21,7 @@ + /* Set the name of the current host to NAME, which is LEN bytes long. + This call is restricted to the super-user. */ + int +-sethostname (name, len) +- const char *name; +- size_t len; ++sethostname (const char *name, size_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/setregid.c b/misc/setregid.c +index ad7ca4b0fde7b58d..894459bc7fd3dc16 100644 +--- a/misc/setregid.c ++++ b/misc/setregid.c +@@ -22,9 +22,7 @@ + /* Set the real group ID of the calling process to RGID, + and the effective group ID of the calling process to EGID. */ + int +-__setregid (effective_gid, real_gid) +- gid_t effective_gid; +- gid_t real_gid; ++__setregid (gid_t effective_gid, gid_t real_gid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/setreuid.c b/misc/setreuid.c +index 87fcfc6f332f7285..5cea0ac4e3cf8901 100644 +--- a/misc/setreuid.c ++++ b/misc/setreuid.c +@@ -22,9 +22,7 @@ + /* Set the real user ID of the calling process to RUID, + and the effective user ID of the calling process to EUID. */ + int +-__setreuid (effective_uid, real_uid) +- uid_t effective_uid; +- uid_t real_uid; ++__setreuid (uid_t effective_uid, uid_t real_uid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/sstk.c b/misc/sstk.c +index 3a4580b8fa8c9f79..5695ef9d86b4b5ad 100644 +--- a/misc/sstk.c ++++ b/misc/sstk.c +@@ -23,8 +23,7 @@ + void *sstk (int increment) __THROW; + + void * +-sstk (increment) +- int increment; ++sstk (int increment) + { + __set_errno (ENOSYS); + return (void *) -1; +diff --git a/misc/stty.c b/misc/stty.c +index 5ce9e23768f42a1d..a6dd83140081245c 100644 +--- a/misc/stty.c ++++ b/misc/stty.c +@@ -21,9 +21,7 @@ + + /* Set the terminal parameters associated with FD to *PARAMS. */ + int +-stty (fd, params) +- int fd; +- const struct sgttyb *params; ++stty (int fd, const struct sgttyb *params) + { + if (params == NULL) + { +diff --git a/misc/syscall.c b/misc/syscall.c +index f6dae5750919925d..82bc04d3765a2c2d 100644 +--- a/misc/syscall.c ++++ b/misc/syscall.c +@@ -23,8 +23,7 @@ + This only makes sense in certain operating systems. */ + + long int +-syscall (callno) +- long int callno; ++syscall (long int callno) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/syslog.c b/misc/syslog.c +index 70daa9e1f3b7b745..62744f6faf8aaf49 100644 +--- a/misc/syslog.c ++++ b/misc/syslog.c +@@ -452,8 +452,7 @@ closelog (void) + + /* setlogmask -- set the log mask level */ + int +-setlogmask(pmask) +- int pmask; ++setlogmask (int pmask) + { + int omask; + +diff --git a/misc/truncate.c b/misc/truncate.c +index c92acd14916cafd6..8d2b3077f53b04b9 100644 +--- a/misc/truncate.c ++++ b/misc/truncate.c +@@ -20,9 +20,7 @@ + + /* Truncate PATH to LENGTH bytes. */ + int +-__truncate (path, length) +- const char *path; +- off_t length; ++__truncate (const char *path, off_t length) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/truncate64.c b/misc/truncate64.c +index 4de202237c961a73..c9700355aa7525a6 100644 +--- a/misc/truncate64.c ++++ b/misc/truncate64.c +@@ -21,9 +21,7 @@ + + /* Truncate PATH to LENGTH bytes. */ + int +-truncate64 (path, length) +- const char *path; +- off64_t length; ++truncate64 (const char *path, off64_t length) + { + if ((off_t) length != length) + { +diff --git a/misc/ualarm.c b/misc/ualarm.c +index ca66d79a132d3ffa..3a4fa9e2dead60f6 100644 +--- a/misc/ualarm.c ++++ b/misc/ualarm.c +@@ -24,9 +24,7 @@ + + Returns the number of microseconds remaining before the alarm. */ + useconds_t +-ualarm (value, interval) +- useconds_t value; +- useconds_t interval; ++ualarm (useconds_t value, useconds_t interval) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/usleep.c b/misc/usleep.c +index 674a025646a45520..b8448be9a2cf0556 100644 +--- a/misc/usleep.c ++++ b/misc/usleep.c +@@ -20,8 +20,7 @@ + + /* Sleep USECONDS microseconds, or until a previously set timer goes off. */ + int +-usleep (useconds) +- useconds_t useconds; ++usleep (useconds_t useconds) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/ustat.c b/misc/ustat.c +index 2dd92e768c79fca1..e9a7fa126a9191a7 100644 +--- a/misc/ustat.c ++++ b/misc/ustat.c +@@ -21,9 +21,7 @@ + #include + + int +-ustat (dev, ust) +- dev_t dev; +- struct ustat * ust; ++ustat (dev_t dev, struct ustat *ust) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/writev.c b/misc/writev.c +index 19bc02889e5c1a33..654d8f3154cba370 100644 +--- a/misc/writev.c ++++ b/misc/writev.c +@@ -25,10 +25,7 @@ + Operates just like `write' (see ) except that the data + are taken from VECTOR instead of a contiguous buffer. */ + ssize_t +-__libc_writev (fd, vector, count) +- int fd; +- const struct iovec *vector; +- int count; ++__libc_writev (int fd, const struct iovec *vector, int count) + { + __set_errno (ENOSYS); + return -1; +diff --git a/nptl/cleanup_compat.c b/nptl/cleanup_compat.c +index c811df2b5f289b2d..67ff5965dd45de61 100644 +--- a/nptl/cleanup_compat.c ++++ b/nptl/cleanup_compat.c +@@ -38,9 +38,7 @@ strong_alias (_pthread_cleanup_push, __pthread_cleanup_push) + + + void +-_pthread_cleanup_pop (buffer, execute) +- struct _pthread_cleanup_buffer *buffer; +- int execute; ++_pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, int execute) + { + struct pthread *self __attribute ((unused)) = THREAD_SELF; + +diff --git a/nptl/old_pthread_cond_broadcast.c b/nptl/old_pthread_cond_broadcast.c +index b271688f88d6aa2f..c6198f7b3ffc7da1 100644 +--- a/nptl/old_pthread_cond_broadcast.c ++++ b/nptl/old_pthread_cond_broadcast.c +@@ -25,8 +25,7 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_broadcast_2_0 (cond) +- pthread_cond_2_0_t *cond; ++__pthread_cond_broadcast_2_0 (pthread_cond_2_0_t *cond) + { + if (cond->cond == NULL) + { +diff --git a/nptl/old_pthread_cond_destroy.c b/nptl/old_pthread_cond_destroy.c +index 8f5af33331a1c6df..541834440d3705b2 100644 +--- a/nptl/old_pthread_cond_destroy.c ++++ b/nptl/old_pthread_cond_destroy.c +@@ -23,8 +23,7 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_destroy_2_0 (cond) +- pthread_cond_2_0_t *cond; ++__pthread_cond_destroy_2_0 (pthread_cond_2_0_t *cond) + { + /* Free the memory which was eventually allocated. */ + free (cond->cond); +diff --git a/nptl/old_pthread_cond_signal.c b/nptl/old_pthread_cond_signal.c +index 78e78cc387fee66d..38547973877a8ce5 100644 +--- a/nptl/old_pthread_cond_signal.c ++++ b/nptl/old_pthread_cond_signal.c +@@ -25,8 +25,7 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_signal_2_0 (cond) +- pthread_cond_2_0_t *cond; ++__pthread_cond_signal_2_0 (pthread_cond_2_0_t *cond) + { + if (cond->cond == NULL) + { +diff --git a/nptl/old_pthread_cond_wait.c b/nptl/old_pthread_cond_wait.c +index 54dcb5e2a6886f72..21bec8715fe72539 100644 +--- a/nptl/old_pthread_cond_wait.c ++++ b/nptl/old_pthread_cond_wait.c +@@ -25,9 +25,7 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_wait_2_0 (cond, mutex) +- pthread_cond_2_0_t *cond; +- pthread_mutex_t *mutex; ++__pthread_cond_wait_2_0 (pthread_cond_2_0_t *cond, pthread_mutex_t *mutex) + { + if (cond->cond == NULL) + { +diff --git a/nptl/pt-raise.c b/nptl/pt-raise.c +index 843ce06d3726bb9e..167f6983adc58413 100644 +--- a/nptl/pt-raise.c ++++ b/nptl/pt-raise.c +@@ -22,8 +22,7 @@ + + + int +-raise (sig) +- int sig; ++raise (int sig) + { + /* This is what POSIX says must happen. */ + return pthread_kill (pthread_self (), sig); +diff --git a/nptl/pthread_barrier_destroy.c b/nptl/pthread_barrier_destroy.c +index 6808d36da261f1b1..f1c221faa99bdec1 100644 +--- a/nptl/pthread_barrier_destroy.c ++++ b/nptl/pthread_barrier_destroy.c +@@ -22,8 +22,7 @@ + + + int +-pthread_barrier_destroy (barrier) +- pthread_barrier_t *barrier; ++pthread_barrier_destroy (pthread_barrier_t *barrier) + { + struct pthread_barrier *ibarrier; + int result = EBUSY; +diff --git a/nptl/pthread_barrier_wait.c b/nptl/pthread_barrier_wait.c +index 89936a08c7e9fbb5..392817ca9f4f6885 100644 +--- a/nptl/pthread_barrier_wait.c ++++ b/nptl/pthread_barrier_wait.c +@@ -24,8 +24,7 @@ + + /* Wait on barrier. */ + int +-pthread_barrier_wait (barrier) +- pthread_barrier_t *barrier; ++pthread_barrier_wait (pthread_barrier_t *barrier) + { + struct pthread_barrier *ibarrier = (struct pthread_barrier *) barrier; + int result = 0; +diff --git a/nptl/pthread_barrierattr_destroy.c b/nptl/pthread_barrierattr_destroy.c +index a1afb939735f0676..983512b456b7bf7a 100644 +--- a/nptl/pthread_barrierattr_destroy.c ++++ b/nptl/pthread_barrierattr_destroy.c +@@ -20,8 +20,7 @@ + + + int +-pthread_barrierattr_destroy (attr) +- pthread_barrierattr_t *attr; ++pthread_barrierattr_destroy (pthread_barrierattr_t *attr) + { + /* Nothing to do. */ + +diff --git a/nptl/pthread_barrierattr_init.c b/nptl/pthread_barrierattr_init.c +index 872e158b29613ce9..748b4ad294c86ee9 100644 +--- a/nptl/pthread_barrierattr_init.c ++++ b/nptl/pthread_barrierattr_init.c +@@ -20,8 +20,7 @@ + + + int +-pthread_barrierattr_init (attr) +- pthread_barrierattr_t *attr; ++pthread_barrierattr_init (pthread_barrierattr_t *attr) + { + ((struct pthread_barrierattr *) attr)->pshared = PTHREAD_PROCESS_PRIVATE; + +diff --git a/nptl/pthread_barrierattr_setpshared.c b/nptl/pthread_barrierattr_setpshared.c +index 042e3a89859f5f4f..3552edbc18c962a9 100644 +--- a/nptl/pthread_barrierattr_setpshared.c ++++ b/nptl/pthread_barrierattr_setpshared.c +@@ -21,9 +21,7 @@ + + + int +-pthread_barrierattr_setpshared (attr, pshared) +- pthread_barrierattr_t *attr; +- int pshared; ++pthread_barrierattr_setpshared (pthread_barrierattr_t *attr, int pshared) + { + struct pthread_barrierattr *iattr; + +diff --git a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c +index 7bc76ac0e53f8a03..949efcd6df2b36e2 100644 +--- a/nptl/pthread_cond_broadcast.c ++++ b/nptl/pthread_cond_broadcast.c +@@ -29,8 +29,7 @@ + + + int +-__pthread_cond_broadcast (cond) +- pthread_cond_t *cond; ++__pthread_cond_broadcast (pthread_cond_t *cond) + { + LIBC_PROBE (cond_broadcast, 1, cond); + +diff --git a/nptl/pthread_cond_destroy.c b/nptl/pthread_cond_destroy.c +index 5f57b563c09c61fe..12a9524b3534b0d3 100644 +--- a/nptl/pthread_cond_destroy.c ++++ b/nptl/pthread_cond_destroy.c +@@ -23,8 +23,7 @@ + + + int +-__pthread_cond_destroy (cond) +- pthread_cond_t *cond; ++__pthread_cond_destroy (pthread_cond_t *cond) + { + int pshared = (cond->__data.__mutex == (void *) ~0l) + ? LLL_SHARED : LLL_PRIVATE; +diff --git a/nptl/pthread_cond_init.c b/nptl/pthread_cond_init.c +index 554fe6fedf1694a9..c03d14f65011ec96 100644 +--- a/nptl/pthread_cond_init.c ++++ b/nptl/pthread_cond_init.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_cond_init (cond, cond_attr) +- pthread_cond_t *cond; +- const pthread_condattr_t *cond_attr; ++__pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *cond_attr) + { + struct pthread_condattr *icond_attr = (struct pthread_condattr *) cond_attr; + +diff --git a/nptl/pthread_cond_signal.c b/nptl/pthread_cond_signal.c +index 063dcbc32a25d0e3..1f0cc6227cfb93be 100644 +--- a/nptl/pthread_cond_signal.c ++++ b/nptl/pthread_cond_signal.c +@@ -29,8 +29,7 @@ + + + int +-__pthread_cond_signal (cond) +- pthread_cond_t *cond; ++__pthread_cond_signal (pthread_cond_t *cond) + { + int pshared = (cond->__data.__mutex == (void *) ~0l) + ? LLL_SHARED : LLL_PRIVATE; +diff --git a/nptl/pthread_condattr_destroy.c b/nptl/pthread_condattr_destroy.c +index a64b22f442b8973a..7a5acba0935ea9e4 100644 +--- a/nptl/pthread_condattr_destroy.c ++++ b/nptl/pthread_condattr_destroy.c +@@ -20,8 +20,7 @@ + + + int +-__pthread_condattr_destroy (attr) +- pthread_condattr_t *attr; ++__pthread_condattr_destroy (pthread_condattr_t *attr) + { + /* Nothing to be done. */ + return 0; +diff --git a/nptl/pthread_condattr_getclock.c b/nptl/pthread_condattr_getclock.c +index de7db3da2e2ffe10..caab2bb6636178e2 100644 +--- a/nptl/pthread_condattr_getclock.c ++++ b/nptl/pthread_condattr_getclock.c +@@ -20,9 +20,7 @@ + + + int +-pthread_condattr_getclock (attr, clock_id) +- const pthread_condattr_t *attr; +- clockid_t *clock_id; ++pthread_condattr_getclock (const pthread_condattr_t *attr, clockid_t *clock_id) + { + *clock_id = (((((const struct pthread_condattr *) attr)->value) >> 1) + & ((1 << COND_NWAITERS_SHIFT) - 1)); +diff --git a/nptl/pthread_condattr_getpshared.c b/nptl/pthread_condattr_getpshared.c +index f09e702134c523dd..d8cd987d54cb988a 100644 +--- a/nptl/pthread_condattr_getpshared.c ++++ b/nptl/pthread_condattr_getpshared.c +@@ -20,9 +20,7 @@ + + + int +-pthread_condattr_getpshared (attr, pshared) +- const pthread_condattr_t *attr; +- int *pshared; ++pthread_condattr_getpshared (const pthread_condattr_t *attr, int *pshared) + { + *pshared = ((const struct pthread_condattr *) attr)->value & 1; + +diff --git a/nptl/pthread_condattr_init.c b/nptl/pthread_condattr_init.c +index dd26e59ae85cf334..b6b2951b3ed7feda 100644 +--- a/nptl/pthread_condattr_init.c ++++ b/nptl/pthread_condattr_init.c +@@ -21,8 +21,7 @@ + + + int +-__pthread_condattr_init (attr) +- pthread_condattr_t *attr; ++__pthread_condattr_init (pthread_condattr_t *attr) + { + memset (attr, '\0', sizeof (*attr)); + +diff --git a/nptl/pthread_condattr_setpshared.c b/nptl/pthread_condattr_setpshared.c +index cbac0c6606cd9b4a..9069ccde651986d7 100644 +--- a/nptl/pthread_condattr_setpshared.c ++++ b/nptl/pthread_condattr_setpshared.c +@@ -20,9 +20,7 @@ + #include + + int +-pthread_condattr_setpshared (attr, pshared) +- pthread_condattr_t *attr; +- int pshared; ++pthread_condattr_setpshared (pthread_condattr_t *attr, int pshared) + { + if (pshared != PTHREAD_PROCESS_PRIVATE + && __builtin_expect (pshared != PTHREAD_PROCESS_SHARED, 0)) +diff --git a/nptl/pthread_detach.c b/nptl/pthread_detach.c +index d753fc2b621d032b..c2651ea6cfd2543c 100644 +--- a/nptl/pthread_detach.c ++++ b/nptl/pthread_detach.c +@@ -22,8 +22,7 @@ + + + int +-pthread_detach (th) +- pthread_t th; ++pthread_detach (pthread_t th) + { + struct pthread *pd = (struct pthread *) th; + +diff --git a/nptl/pthread_equal.c b/nptl/pthread_equal.c +index 86279e77b7fda14d..e55413c0271dbc82 100644 +--- a/nptl/pthread_equal.c ++++ b/nptl/pthread_equal.c +@@ -20,9 +20,7 @@ + + + int +-__pthread_equal (thread1, thread2) +- pthread_t thread1; +- pthread_t thread2; ++__pthread_equal (pthread_t thread1, pthread_t thread2) + { + return thread1 == thread2; + } +diff --git a/nptl/pthread_getcpuclockid.c b/nptl/pthread_getcpuclockid.c +index 1263c6ff81a9cb0d..ba5d58587b792a0e 100644 +--- a/nptl/pthread_getcpuclockid.c ++++ b/nptl/pthread_getcpuclockid.c +@@ -22,9 +22,7 @@ + + + int +-pthread_getcpuclockid (threadid, clockid) +- pthread_t threadid; +- clockid_t *clockid; ++pthread_getcpuclockid (pthread_t threadid, clockid_t *clockid) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/pthread_getspecific.c b/nptl/pthread_getspecific.c +index 17dedda7838fb552..b20337bb20b45aff 100644 +--- a/nptl/pthread_getspecific.c ++++ b/nptl/pthread_getspecific.c +@@ -21,8 +21,7 @@ + + + void * +-__pthread_getspecific (key) +- pthread_key_t key; ++__pthread_getspecific (pthread_key_t key) + { + struct pthread_key_data *data; + +diff --git a/nptl/pthread_key_delete.c b/nptl/pthread_key_delete.c +index 5019b8ef7d2ae212..388091ec6ec5b171 100644 +--- a/nptl/pthread_key_delete.c ++++ b/nptl/pthread_key_delete.c +@@ -22,8 +22,7 @@ + + + int +-pthread_key_delete (key) +- pthread_key_t key; ++pthread_key_delete (pthread_key_t key) + { + int result = EINVAL; + +diff --git a/nptl/pthread_mutex_consistent.c b/nptl/pthread_mutex_consistent.c +index ee3aabdd8d239406..042c18f04c5ea5c0 100644 +--- a/nptl/pthread_mutex_consistent.c ++++ b/nptl/pthread_mutex_consistent.c +@@ -21,8 +21,7 @@ + + + int +-pthread_mutex_consistent (mutex) +- pthread_mutex_t *mutex; ++pthread_mutex_consistent (pthread_mutex_t *mutex) + { + /* Test whether this is a robust mutex with a dead owner. */ + if ((mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP) == 0 +diff --git a/nptl/pthread_mutex_destroy.c b/nptl/pthread_mutex_destroy.c +index b80b632cd9c84d58..3691340f936ad504 100644 +--- a/nptl/pthread_mutex_destroy.c ++++ b/nptl/pthread_mutex_destroy.c +@@ -23,8 +23,7 @@ + + + int +-__pthread_mutex_destroy (mutex) +- pthread_mutex_t *mutex; ++__pthread_mutex_destroy (pthread_mutex_t *mutex) + { + LIBC_PROBE (mutex_destroy, 1, mutex); + +diff --git a/nptl/pthread_mutex_getprioceiling.c b/nptl/pthread_mutex_getprioceiling.c +index bfadd553a224e6cb..ef1eebea5d6ad3e0 100644 +--- a/nptl/pthread_mutex_getprioceiling.c ++++ b/nptl/pthread_mutex_getprioceiling.c +@@ -22,9 +22,7 @@ + + + int +-pthread_mutex_getprioceiling (mutex, prioceiling) +- const pthread_mutex_t *mutex; +- int *prioceiling; ++pthread_mutex_getprioceiling (const pthread_mutex_t *mutex, int *prioceiling) + { + if (__builtin_expect ((mutex->__data.__kind + & PTHREAD_MUTEX_PRIO_PROTECT_NP) == 0, 0)) +diff --git a/nptl/pthread_mutexattr_destroy.c b/nptl/pthread_mutexattr_destroy.c +index b354a8403f196005..ce4711bd556f4a52 100644 +--- a/nptl/pthread_mutexattr_destroy.c ++++ b/nptl/pthread_mutexattr_destroy.c +@@ -20,8 +20,7 @@ + + + int +-__pthread_mutexattr_destroy (attr) +- pthread_mutexattr_t *attr; ++__pthread_mutexattr_destroy (pthread_mutexattr_t *attr) + { + return 0; + } +diff --git a/nptl/pthread_mutexattr_getprotocol.c b/nptl/pthread_mutexattr_getprotocol.c +index 8e91eed268565b37..2a2bb60d34ea9e1a 100644 +--- a/nptl/pthread_mutexattr_getprotocol.c ++++ b/nptl/pthread_mutexattr_getprotocol.c +@@ -21,9 +21,7 @@ + + + int +-pthread_mutexattr_getprotocol (attr, protocol) +- const pthread_mutexattr_t *attr; +- int *protocol; ++pthread_mutexattr_getprotocol (const pthread_mutexattr_t *attr, int *protocol) + { + const struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_mutexattr_getpshared.c b/nptl/pthread_mutexattr_getpshared.c +index d28f37061082e9c7..bdf763a3c295b763 100644 +--- a/nptl/pthread_mutexattr_getpshared.c ++++ b/nptl/pthread_mutexattr_getpshared.c +@@ -20,9 +20,7 @@ + + + int +-pthread_mutexattr_getpshared (attr, pshared) +- const pthread_mutexattr_t *attr; +- int *pshared; ++pthread_mutexattr_getpshared (const pthread_mutexattr_t *attr, int *pshared) + { + const struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_mutexattr_getrobust.c b/nptl/pthread_mutexattr_getrobust.c +index a52fbcd558b5b034..ff5de6528f2616f3 100644 +--- a/nptl/pthread_mutexattr_getrobust.c ++++ b/nptl/pthread_mutexattr_getrobust.c +@@ -20,9 +20,7 @@ + + + int +-pthread_mutexattr_getrobust (attr, robustness) +- const pthread_mutexattr_t *attr; +- int *robustness; ++pthread_mutexattr_getrobust (const pthread_mutexattr_t *attr, int *robustness) + { + const struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_mutexattr_gettype.c b/nptl/pthread_mutexattr_gettype.c +index 3f27f669ff5f44da..923dc706a1653014 100644 +--- a/nptl/pthread_mutexattr_gettype.c ++++ b/nptl/pthread_mutexattr_gettype.c +@@ -20,9 +20,7 @@ + + + int +-pthread_mutexattr_gettype (attr, kind) +- const pthread_mutexattr_t *attr; +- int *kind; ++pthread_mutexattr_gettype (const pthread_mutexattr_t *attr, int *kind) + { + const struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_mutexattr_init.c b/nptl/pthread_mutexattr_init.c +index cc251841fff1c164..314092d76a20264a 100644 +--- a/nptl/pthread_mutexattr_init.c ++++ b/nptl/pthread_mutexattr_init.c +@@ -21,8 +21,7 @@ + + + int +-__pthread_mutexattr_init (attr) +- pthread_mutexattr_t *attr; ++__pthread_mutexattr_init (pthread_mutexattr_t *attr) + { + if (sizeof (struct pthread_mutexattr) != sizeof (pthread_mutexattr_t)) + memset (attr, '\0', sizeof (*attr)); +diff --git a/nptl/pthread_mutexattr_setprioceiling.c b/nptl/pthread_mutexattr_setprioceiling.c +index 2939d033d4a34957..19e98ae35767c3dd 100644 +--- a/nptl/pthread_mutexattr_setprioceiling.c ++++ b/nptl/pthread_mutexattr_setprioceiling.c +@@ -22,9 +22,7 @@ + + + int +-pthread_mutexattr_setprioceiling (attr, prioceiling) +- pthread_mutexattr_t *attr; +- int prioceiling; ++pthread_mutexattr_setprioceiling (pthread_mutexattr_t *attr, int prioceiling) + { + if (__sched_fifo_min_prio == -1) + __init_sched_fifo_prio (); +diff --git a/nptl/pthread_mutexattr_setprotocol.c b/nptl/pthread_mutexattr_setprotocol.c +index aec598c1561ae280..f2885ca1252a46aa 100644 +--- a/nptl/pthread_mutexattr_setprotocol.c ++++ b/nptl/pthread_mutexattr_setprotocol.c +@@ -22,9 +22,7 @@ + + + int +-pthread_mutexattr_setprotocol (attr, protocol) +- pthread_mutexattr_t *attr; +- int protocol; ++pthread_mutexattr_setprotocol (pthread_mutexattr_t *attr, int protocol) + { + if (protocol != PTHREAD_PRIO_NONE + && protocol != PTHREAD_PRIO_INHERIT +diff --git a/nptl/pthread_mutexattr_setpshared.c b/nptl/pthread_mutexattr_setpshared.c +index ce16b38e2b5313b6..38063a8804ab0768 100644 +--- a/nptl/pthread_mutexattr_setpshared.c ++++ b/nptl/pthread_mutexattr_setpshared.c +@@ -21,9 +21,7 @@ + + + int +-pthread_mutexattr_setpshared (attr, pshared) +- pthread_mutexattr_t *attr; +- int pshared; ++pthread_mutexattr_setpshared (pthread_mutexattr_t *attr, int pshared) + { + struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_mutexattr_setrobust.c b/nptl/pthread_mutexattr_setrobust.c +index bfca2227f2f14d8a..8893e28e80a7c89d 100644 +--- a/nptl/pthread_mutexattr_setrobust.c ++++ b/nptl/pthread_mutexattr_setrobust.c +@@ -21,9 +21,7 @@ + + + int +-pthread_mutexattr_setrobust (attr, robustness) +- pthread_mutexattr_t *attr; +- int robustness; ++pthread_mutexattr_setrobust (pthread_mutexattr_t *attr, int robustness) + { + if (robustness != PTHREAD_MUTEX_STALLED_NP + && __builtin_expect (robustness != PTHREAD_MUTEX_ROBUST_NP, 0)) +diff --git a/nptl/pthread_mutexattr_settype.c b/nptl/pthread_mutexattr_settype.c +index 4a25046d1e9b1655..20521e3693856c9d 100644 +--- a/nptl/pthread_mutexattr_settype.c ++++ b/nptl/pthread_mutexattr_settype.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_mutexattr_settype (attr, kind) +- pthread_mutexattr_t *attr; +- int kind; ++__pthread_mutexattr_settype (pthread_mutexattr_t *attr, int kind) + { + struct pthread_mutexattr *iattr; + +diff --git a/nptl/pthread_rwlock_destroy.c b/nptl/pthread_rwlock_destroy.c +index 78abe5ecef1c2f4e..e9ecbd8abd87a175 100644 +--- a/nptl/pthread_rwlock_destroy.c ++++ b/nptl/pthread_rwlock_destroy.c +@@ -21,8 +21,7 @@ + + + int +-__pthread_rwlock_destroy (rwlock) +- pthread_rwlock_t *rwlock; ++__pthread_rwlock_destroy (pthread_rwlock_t *rwlock) + { + LIBC_PROBE (rwlock_destroy, 1, rwlock); + +diff --git a/nptl/pthread_rwlockattr_destroy.c b/nptl/pthread_rwlockattr_destroy.c +index a9dd2caac8f362ec..2c3e2ef553ec142a 100644 +--- a/nptl/pthread_rwlockattr_destroy.c ++++ b/nptl/pthread_rwlockattr_destroy.c +@@ -20,8 +20,7 @@ + + + int +-pthread_rwlockattr_destroy (attr) +- pthread_rwlockattr_t *attr; ++pthread_rwlockattr_destroy (pthread_rwlockattr_t *attr) + { + /* Nothing to do. For now. */ + +diff --git a/nptl/pthread_rwlockattr_getkind_np.c b/nptl/pthread_rwlockattr_getkind_np.c +index 94117c4ad190e1fa..b42548c0fe90adc5 100644 +--- a/nptl/pthread_rwlockattr_getkind_np.c ++++ b/nptl/pthread_rwlockattr_getkind_np.c +@@ -20,9 +20,7 @@ + + + int +-pthread_rwlockattr_getkind_np (attr, pref) +- const pthread_rwlockattr_t *attr; +- int *pref; ++pthread_rwlockattr_getkind_np (const pthread_rwlockattr_t *attr, int *pref) + { + *pref = ((const struct pthread_rwlockattr *) attr)->lockkind; + +diff --git a/nptl/pthread_rwlockattr_getpshared.c b/nptl/pthread_rwlockattr_getpshared.c +index 7136248e6a7ed947..79d6642a23ea0a43 100644 +--- a/nptl/pthread_rwlockattr_getpshared.c ++++ b/nptl/pthread_rwlockattr_getpshared.c +@@ -20,9 +20,7 @@ + + + int +-pthread_rwlockattr_getpshared (attr, pshared) +- const pthread_rwlockattr_t *attr; +- int *pshared; ++pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *attr, int *pshared) + { + *pshared = ((const struct pthread_rwlockattr *) attr)->pshared; + +diff --git a/nptl/pthread_rwlockattr_init.c b/nptl/pthread_rwlockattr_init.c +index b5f186d405a2f350..37b7ac72a959bc61 100644 +--- a/nptl/pthread_rwlockattr_init.c ++++ b/nptl/pthread_rwlockattr_init.c +@@ -20,8 +20,7 @@ + + + int +-pthread_rwlockattr_init (attr) +- pthread_rwlockattr_t *attr; ++pthread_rwlockattr_init (pthread_rwlockattr_t *attr) + { + struct pthread_rwlockattr *iattr; + +diff --git a/nptl/pthread_rwlockattr_setkind_np.c b/nptl/pthread_rwlockattr_setkind_np.c +index 111207efd0430f6d..78e126a230f9b432 100644 +--- a/nptl/pthread_rwlockattr_setkind_np.c ++++ b/nptl/pthread_rwlockattr_setkind_np.c +@@ -21,9 +21,7 @@ + + + int +-pthread_rwlockattr_setkind_np (attr, pref) +- pthread_rwlockattr_t *attr; +- int pref; ++pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *attr, int pref) + { + struct pthread_rwlockattr *iattr; + +diff --git a/nptl/pthread_rwlockattr_setpshared.c b/nptl/pthread_rwlockattr_setpshared.c +index 4173cf83e7327295..d306840c10ff4c49 100644 +--- a/nptl/pthread_rwlockattr_setpshared.c ++++ b/nptl/pthread_rwlockattr_setpshared.c +@@ -21,9 +21,7 @@ + + + int +-pthread_rwlockattr_setpshared (attr, pshared) +- pthread_rwlockattr_t *attr; +- int pshared; ++pthread_rwlockattr_setpshared (pthread_rwlockattr_t *attr, int pshared) + { + struct pthread_rwlockattr *iattr; + +diff --git a/nptl/pthread_setcancelstate.c b/nptl/pthread_setcancelstate.c +index cce59d27d730e551..05fdfffb873aace0 100644 +--- a/nptl/pthread_setcancelstate.c ++++ b/nptl/pthread_setcancelstate.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_setcancelstate (state, oldstate) +- int state; +- int *oldstate; ++__pthread_setcancelstate (int state, int *oldstate) + { + volatile struct pthread *self; + +diff --git a/nptl/pthread_setcanceltype.c b/nptl/pthread_setcanceltype.c +index 45e5f732d8699738..569795f838c51f93 100644 +--- a/nptl/pthread_setcanceltype.c ++++ b/nptl/pthread_setcanceltype.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_setcanceltype (type, oldtype) +- int type; +- int *oldtype; ++__pthread_setcanceltype (int type, int *oldtype) + { + volatile struct pthread *self; + +diff --git a/nptl/pthread_setconcurrency.c b/nptl/pthread_setconcurrency.c +index 790638dac8d3413e..c17d459013383292 100644 +--- a/nptl/pthread_setconcurrency.c ++++ b/nptl/pthread_setconcurrency.c +@@ -25,8 +25,7 @@ int __concurrency_level; + + + int +-pthread_setconcurrency (level) +- int level; ++pthread_setconcurrency (int level) + { + if (level < 0) + return EINVAL; +diff --git a/nptl/pthread_setschedprio.c b/nptl/pthread_setschedprio.c +index f5f8f48fab513c40..2b1fddf93dc0d001 100644 +--- a/nptl/pthread_setschedprio.c ++++ b/nptl/pthread_setschedprio.c +@@ -25,9 +25,7 @@ + + + int +-pthread_setschedprio (threadid, prio) +- pthread_t threadid; +- int prio; ++pthread_setschedprio (pthread_t threadid, int prio) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/pthread_setspecific.c b/nptl/pthread_setspecific.c +index ec0cc9d95ab76e00..584c7625a28e12ae 100644 +--- a/nptl/pthread_setspecific.c ++++ b/nptl/pthread_setspecific.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_setspecific (key, value) +- pthread_key_t key; +- const void *value; ++__pthread_setspecific (pthread_key_t key, const void *value) + { + struct pthread *self; + unsigned int idx1st; +diff --git a/nptl/pthread_spin_destroy.c b/nptl/pthread_spin_destroy.c +index 6e7450608ef57470..8a297c3af493714e 100644 +--- a/nptl/pthread_spin_destroy.c ++++ b/nptl/pthread_spin_destroy.c +@@ -20,8 +20,7 @@ + + + int +-pthread_spin_destroy (lock) +- pthread_spinlock_t *lock; ++pthread_spin_destroy (pthread_spinlock_t *lock) + { + /* Nothing to do. */ + return 0; +diff --git a/nptl/pthread_tryjoin.c b/nptl/pthread_tryjoin.c +index 7b3ad2bc74c4095f..61a0950e0498063c 100644 +--- a/nptl/pthread_tryjoin.c ++++ b/nptl/pthread_tryjoin.c +@@ -24,9 +24,7 @@ + + + int +-pthread_tryjoin_np (threadid, thread_return) +- pthread_t threadid; +- void **thread_return; ++pthread_tryjoin_np (pthread_t threadid, void **thread_return) + { + struct pthread *self; + struct pthread *pd = (struct pthread *) threadid; +diff --git a/nptl/sem_close.c b/nptl/sem_close.c +index d23065916fcd5db3..98baec97ca4db66a 100644 +--- a/nptl/sem_close.c ++++ b/nptl/sem_close.c +@@ -40,8 +40,7 @@ walker (const void *inodep, const VISIT which, const int depth) + + + int +-sem_close (sem) +- sem_t *sem; ++sem_close (sem_t *sem) + { + int result = 0; + +diff --git a/nptl/sem_destroy.c b/nptl/sem_destroy.c +index f5fb7782d8aa9e62..80f9baa67afefe95 100644 +--- a/nptl/sem_destroy.c ++++ b/nptl/sem_destroy.c +@@ -22,8 +22,7 @@ + + + int +-__new_sem_destroy (sem) +- sem_t *sem; ++__new_sem_destroy (sem_t *sem) + { + /* XXX Check for valid parameter. */ + +diff --git a/nptl/sem_init.c b/nptl/sem_init.c +index 1863fb9c525f2438..8ef4f4174b4e3b23 100644 +--- a/nptl/sem_init.c ++++ b/nptl/sem_init.c +@@ -70,10 +70,7 @@ versioned_symbol (libpthread, __new_sem_init, sem_init, GLIBC_2_1); + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1) + int + attribute_compat_text_section +-__old_sem_init (sem, pshared, value) +- sem_t *sem; +- int pshared; +- unsigned int value; ++__old_sem_init (sem_t *sem, int pshared, unsigned int value) + { + /* Parameter sanity check. */ + if (__builtin_expect (value > SEM_VALUE_MAX, 0)) +diff --git a/nptl/sigaction.c b/nptl/sigaction.c +index baf382ba982aa474..d8e3a8dacbacca1f 100644 +--- a/nptl/sigaction.c ++++ b/nptl/sigaction.c +@@ -29,10 +29,7 @@ + + + int +-__sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + if (__builtin_expect (sig == SIGCANCEL || sig == SIGSETXID, 0)) + { +diff --git a/nptl/sysdeps/unix/sysv/linux/unregister-atfork.c b/nptl/sysdeps/unix/sysv/linux/unregister-atfork.c +index ed006c12238174fb..f7a85faf0e5c6626 100644 +--- a/nptl/sysdeps/unix/sysv/linux/unregister-atfork.c ++++ b/nptl/sysdeps/unix/sysv/linux/unregister-atfork.c +@@ -23,8 +23,7 @@ + + + void +-__unregister_atfork (dso_handle) +- void *dso_handle; ++__unregister_atfork (void *dso_handle) + { + /* Check whether there is any entry in the list which we have to + remove. It is likely that this is not the case so don't bother +diff --git a/posix/_exit.c b/posix/_exit.c +index ef2b7d719ed26509..d3facbbaf995f1e4 100644 +--- a/posix/_exit.c ++++ b/posix/_exit.c +@@ -22,8 +22,7 @@ + terminate program execution, using the low-order 8 bits of the + given integer as status. */ + void +-_exit (status) +- int status; ++_exit (int status) + { + status &= 0xff; + abort (); +diff --git a/posix/alarm.c b/posix/alarm.c +index 3fda9b0c854d78da..a1077238a4ae709d 100644 +--- a/posix/alarm.c ++++ b/posix/alarm.c +@@ -26,8 +26,7 @@ + to 0 and check its value after calling `alarm', and this might tell you. + The signal may come late due to processor scheduling. */ + unsigned int +-alarm (seconds) +- unsigned int seconds; ++alarm (unsigned int seconds) + { + __set_errno (ENOSYS); + return 0; +diff --git a/posix/confstr.c b/posix/confstr.c +index 0233ea94707ee627..5e3deabba2908026 100644 +--- a/posix/confstr.c ++++ b/posix/confstr.c +@@ -29,10 +29,7 @@ + of BUF with the value corresponding to NAME and zero-terminate BUF. + Return the number of bytes required to hold NAME's entire value. */ + size_t +-confstr (name, buf, len) +- int name; +- char *buf; +- size_t len; ++confstr (int name, char *buf, size_t len) + { + const char *string = ""; + size_t string_len = 1; +diff --git a/posix/fpathconf.c b/posix/fpathconf.c +index 01a08cab8292ebed..98f52f1e337ffd8f 100644 +--- a/posix/fpathconf.c ++++ b/posix/fpathconf.c +@@ -22,9 +22,7 @@ + + /* Get file-specific information about descriptor FD. */ + long int +-__fpathconf (fd, name) +- int fd; +- int name; ++__fpathconf (int fd, int name) + { + if (fd < 0) + { +diff --git a/posix/getgroups.c b/posix/getgroups.c +index eed9152eaab5abbf..f7e8a35e1cd90f63 100644 +--- a/posix/getgroups.c ++++ b/posix/getgroups.c +@@ -26,9 +26,7 @@ + the calling process is in. Otherwise, fill in the group IDs + of its supplementary groups in LIST and return the number written. */ + int +-__getgroups (size, list) +- int size; +- gid_t *list; ++__getgroups (int size, gid_t *list) + { + #if defined (NGROUPS_MAX) && NGROUPS_MAX == 0 + /* The system has no supplementary groups. */ +diff --git a/posix/getpgid.c b/posix/getpgid.c +index fd1bc5a01aa389f7..18c66e510bfe904f 100644 +--- a/posix/getpgid.c ++++ b/posix/getpgid.c +@@ -20,8 +20,7 @@ + + /* Get the process group ID of process PID. */ + pid_t +-__getpgid (pid) +- pid_t pid; ++__getpgid (pid_t pid) + { + return pid; + } +diff --git a/posix/group_member.c b/posix/group_member.c +index 7809229d26800b89..1567664791b3919e 100644 +--- a/posix/group_member.c ++++ b/posix/group_member.c +@@ -26,8 +26,7 @@ + #endif + + int +-__group_member (gid) +- gid_t gid; ++__group_member (gid_t gid) + { + int n, size; + gid_t *groups; +diff --git a/posix/pathconf.c b/posix/pathconf.c +index 6f48b0b575e939fe..e1ca8dc50d746669 100644 +--- a/posix/pathconf.c ++++ b/posix/pathconf.c +@@ -22,9 +22,7 @@ + + /* Get file-specific information about PATH. */ + long int +-__pathconf (path, name) +- const char *path; +- int name; ++__pathconf (const char *path, int name) + { + if (path == NULL) + { +diff --git a/posix/sched_getaffinity.c b/posix/sched_getaffinity.c +index 8641b4eac7dc3a74..27d739e52167b09f 100644 +--- a/posix/sched_getaffinity.c ++++ b/posix/sched_getaffinity.c +@@ -22,10 +22,7 @@ + + /* Retrieve the CPU affinity mask for a particular process. */ + int +-sched_getaffinity (pid, cpusetsize, cpuset) +- pid_t pid; +- size_t cpusetsize; +- cpu_set_t *cpuset; ++sched_getaffinity (pid_t pid, size_t cpusetsize, cpu_set_t *cpuset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/sched_setaffinity.c b/posix/sched_setaffinity.c +index 3cc9bb72cfb5e2bc..43e595e37f890081 100644 +--- a/posix/sched_setaffinity.c ++++ b/posix/sched_setaffinity.c +@@ -22,10 +22,7 @@ + + /* Retrieve the CPU affinity mask for a particular process. */ + int +-sched_setaffinity (pid, cpusetsize, cpuset) +- pid_t pid; +- size_t cpusetsize; +- const cpu_set_t *cpuset; ++sched_setaffinity (pid_t pid, size_t cpusetsize, const cpu_set_t *cpuset) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/setgid.c b/posix/setgid.c +index 3e384aecdd3ded4a..b16f1f3581375d0f 100644 +--- a/posix/setgid.c ++++ b/posix/setgid.c +@@ -24,8 +24,7 @@ + and effective group IDs, and the saved set-group-ID to GID; + if not, the effective group ID is set to GID. */ + int +-__setgid (gid) +- gid_t gid; ++__setgid (gid_t gid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/setpgid.c b/posix/setpgid.c +index 146fb745b80d1abc..921e11285035ca08 100644 +--- a/posix/setpgid.c ++++ b/posix/setpgid.c +@@ -22,9 +22,7 @@ + If PID is zero, the current process's process group ID is set. + If PGID is zero, the process ID of the process is used. */ + int +-__setpgid (pid, pgid) +- int pid; +- int pgid; ++__setpgid (int pid, int pgid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/setuid.c b/posix/setuid.c +index 5892d23579e4b066..99e98b748266c358 100644 +--- a/posix/setuid.c ++++ b/posix/setuid.c +@@ -24,8 +24,7 @@ + and effective user IDs, and the saved set-user-ID to UID; + if not, the effective user ID is set to UID. */ + int +-__setuid (uid) +- uid_t uid; ++__setuid (uid_t uid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/sleep.c b/posix/sleep.c +index d7ca5f9c896dbac8..dddf25be40b6f432 100644 +--- a/posix/sleep.c ++++ b/posix/sleep.c +@@ -28,8 +28,7 @@ + signal afterwards is undefined. There is no return value to indicate + error, but if `sleep' returns SECONDS, it probably didn't work. */ + unsigned int +-__sleep (seconds) +- unsigned int seconds; ++__sleep (unsigned int seconds) + { + __set_errno (ENOSYS); + return seconds; +diff --git a/posix/sysconf.c b/posix/sysconf.c +index 8428f79ab3474067..1ca8e430fa91989d 100644 +--- a/posix/sysconf.c ++++ b/posix/sysconf.c +@@ -29,8 +29,7 @@ + + /* Get the value of the system variable NAME. */ + long int +-__sysconf (name) +- int name; ++__sysconf (int name) + { + switch (name) + { +diff --git a/posix/times.c b/posix/times.c +index e6f60030064919b3..30c1835caca9939f 100644 +--- a/posix/times.c ++++ b/posix/times.c +@@ -24,8 +24,7 @@ + Return the elapsed real time, or (clock_t) -1 for errors. + All times are in CLK_TCKths of a second. */ + clock_t +-__times (buffer) +- struct tms *buffer; ++__times (struct tms *buffer) + { + if (buffer == NULL) + { +diff --git a/posix/uname.c b/posix/uname.c +index ee00cb2e53b10b05..5d44be9eeb1be114 100644 +--- a/posix/uname.c ++++ b/posix/uname.c +@@ -25,8 +25,7 @@ + + /* Put information about the system in NAME. */ + int +-__uname (name) +- struct utsname *name; ++__uname (struct utsname *name) + { + int save; + +diff --git a/posix/waitid.c b/posix/waitid.c +index fd2e083eabbdc626..06147be5344b013f 100644 +--- a/posix/waitid.c ++++ b/posix/waitid.c +@@ -22,11 +22,7 @@ + #include + + int +-__waitid (idtype, id, infop, options) +- idtype_t idtype; +- id_t id; +- siginfo_t *infop; +- int options; ++__waitid (idtype_t idtype, id_t id, siginfo_t *infop, int options) + { + __set_errno (ENOSYS); + return -1; +diff --git a/pwd/getpw.c b/pwd/getpw.c +index 72c3e96bb129b8cb..430ac71d5f6aded6 100644 +--- a/pwd/getpw.c ++++ b/pwd/getpw.c +@@ -29,9 +29,7 @@ + int __getpw (__uid_t uid, char *buf); + + int +-__getpw (uid, buf) +- __uid_t uid; +- char *buf; ++__getpw (__uid_t uid, char *buf) + { + size_t buflen; + char *tmpbuf; +diff --git a/resource/getpriority.c b/resource/getpriority.c +index 6809c5cf0113d252..dca49b3c9288c021 100644 +--- a/resource/getpriority.c ++++ b/resource/getpriority.c +@@ -23,9 +23,7 @@ + or user (as specified by WHO) is used. A lower priority number means higher + priority. Priorities range from PRIO_MIN to PRIO_MAX. */ + int +-getpriority (which, who) +- enum __priority_which which; +- id_t who; ++getpriority (enum __priority_which which, id_t who) + { + __set_errno (ENOSYS); + return -1; +diff --git a/resource/getrusage.c b/resource/getrusage.c +index 93cf4c95e22d9003..27a473d1148081a4 100644 +--- a/resource/getrusage.c ++++ b/resource/getrusage.c +@@ -21,9 +21,7 @@ + /* Return resource usage information on process indicated by WHO + and put it in *USAGE. Returns 0 for success, -1 for failure. */ + int +-__getrusage (who, usage) +- enum __rusage_who who; +- struct rusage *usage; ++__getrusage (enum __rusage_who who, struct rusage *usage) + { + __set_errno (ENOSYS); + return -1; +diff --git a/resource/nice.c b/resource/nice.c +index febf7c066f49cb9c..0fc6d84c823ab313 100644 +--- a/resource/nice.c ++++ b/resource/nice.c +@@ -21,8 +21,7 @@ + /* Increment the scheduling priority of the calling process by INCR. + The superuser may use a negative INCR to decrement the priority. */ + int +-nice (incr) +- int incr; ++nice (int incr) + { + __set_errno (ENOSYS); + return -1; +diff --git a/resource/setpriority.c b/resource/setpriority.c +index 5a5b6cc4410f740b..dd474075b216d94b 100644 +--- a/resource/setpriority.c ++++ b/resource/setpriority.c +@@ -21,10 +21,7 @@ + /* Set the priority of all processes specified by WHICH and WHO + to PRIO. Returns 0 on success, -1 on errors. */ + int +-setpriority (which, who, prio) +- enum __priority_which which; +- id_t who; +- int prio; ++setpriority (enum __priority_which which, id_t who, int prio) + { + __set_errno (ENOSYS); + return -1; +diff --git a/resource/setrlimit64.c b/resource/setrlimit64.c +index 7ad38ef1495f10b4..8b18727de3c99d93 100644 +--- a/resource/setrlimit64.c ++++ b/resource/setrlimit64.c +@@ -23,9 +23,7 @@ + Only the super-user can increase hard limits. + Return 0 if successful, -1 if not (and sets errno). */ + int +-setrlimit64 (resource, rlimits) +- enum __rlimit_resource resource; +- const struct rlimit64 *rlimits; ++setrlimit64 (enum __rlimit_resource resource, const struct rlimit64 *rlimits) + { + struct rlimit rlimits32; + +diff --git a/resource/vlimit.c b/resource/vlimit.c +index 9ab3f6a2ee0d1798..4a102e26cbfdbbb2 100644 +--- a/resource/vlimit.c ++++ b/resource/vlimit.c +@@ -26,9 +26,7 @@ + /* Set the soft limit for RESOURCE to be VALUE. + Returns 0 for success, -1 for failure. */ + int +-vlimit (resource, value) +- enum __vlimit_resource resource; +- int value; ++vlimit (enum __vlimit_resource resource, int value) + { + if (resource >= LIM_CPU && resource <= LIM_MAXRSS) + { +diff --git a/resource/vtimes.c b/resource/vtimes.c +index 3d2459059d530ecd..36630996ec31e56f 100644 +--- a/resource/vtimes.c ++++ b/resource/vtimes.c +@@ -53,9 +53,7 @@ vtimes_one (struct vtimes *vt, enum __rusage_who who) + *CURRENT. If CHILD is not NULL, write statistics for all terminated child + processes into *CHILD. Returns 0 for success, -1 for failure. */ + int +-vtimes (current, child) +- struct vtimes *current; +- struct vtimes *child; ++vtimes (struct vtimes *current, struct vtimes *child) + { + if (vtimes_one (current, RUSAGE_SELF) < 0 + || vtimes_one (child, RUSAGE_CHILDREN) < 0) +diff --git a/rt/aio_error.c b/rt/aio_error.c +index 268dbdd1fcba6653..44c61e682c31cef9 100644 +--- a/rt/aio_error.c ++++ b/rt/aio_error.c +@@ -30,8 +30,7 @@ + + + int +-aio_error (aiocbp) +- const struct aiocb *aiocbp; ++aio_error (const struct aiocb *aiocbp) + { + return aiocbp->__error_code; + } +diff --git a/rt/aio_return.c b/rt/aio_return.c +index a43c195085d3afb4..3d58113f7a6e42ad 100644 +--- a/rt/aio_return.c ++++ b/rt/aio_return.c +@@ -30,8 +30,7 @@ + + + ssize_t +-aio_return (aiocbp) +- struct aiocb *aiocbp; ++aio_return (struct aiocb *aiocbp) + { + return aiocbp->__return_value; + } +diff --git a/rt/aio_sigqueue.c b/rt/aio_sigqueue.c +index 28431468d058246e..520b9e5d178594f7 100644 +--- a/rt/aio_sigqueue.c ++++ b/rt/aio_sigqueue.c +@@ -22,10 +22,7 @@ + #include + + int +-__aio_sigqueue (sig, val, caller_pid) +- int sig; +- const union sigval val; +- pid_t caller_pid; ++__aio_sigqueue (int sig, const union sigval val, pid_t caller_pid) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/kill.c b/signal/kill.c +index da6b49fbd8b5d99b..c974565552bbfb5d 100644 +--- a/signal/kill.c ++++ b/signal/kill.c +@@ -23,9 +23,7 @@ + send SIG to all processes in the current process's process group. + If PID is < -1, send SIG to all processes in process group - PID. */ + int +-__kill (pid, sig) +- int pid; +- int sig; ++__kill (int pid, int sig) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/killpg.c b/signal/killpg.c +index 36bc5baef014da23..a4f8c0d7129ba06f 100644 +--- a/signal/killpg.c ++++ b/signal/killpg.c +@@ -23,9 +23,7 @@ + If PGRP is zero, send SIG to all processes in + the current process's process group. */ + int +-killpg (pgrp, sig) +- __pid_t pgrp; +- int sig; ++killpg (__pid_t pgrp, int sig) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/raise.c b/signal/raise.c +index d8d0914665da1485..f0f1ddb8bc2903af 100644 +--- a/signal/raise.c ++++ b/signal/raise.c +@@ -20,8 +20,7 @@ + + /* Raise the signal SIG. */ + int +-raise (sig) +- int sig; ++raise (int sig) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigaction.c b/signal/sigaction.c +index 743724dbce4deeed..dede189626cd6f7d 100644 +--- a/signal/sigaction.c ++++ b/signal/sigaction.c +@@ -22,10 +22,7 @@ + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + if (sig <= 0 || sig >= NSIG) + { +diff --git a/signal/sigaddset.c b/signal/sigaddset.c +index aaa0f56d110a2256..318d95f85395fb63 100644 +--- a/signal/sigaddset.c ++++ b/signal/sigaddset.c +@@ -19,9 +19,7 @@ + + /* Add SIGNO to SET. */ + int +-sigaddset (set, signo) +- sigset_t *set; +- int signo; ++sigaddset (sigset_t *set, int signo) + { + if (set == NULL || signo <= 0 || signo >= NSIG) + { +diff --git a/signal/sigaltstack.c b/signal/sigaltstack.c +index a540aedb447cc2db..4de58146fcb1bcd2 100644 +--- a/signal/sigaltstack.c ++++ b/signal/sigaltstack.c +@@ -21,9 +21,7 @@ + /* Run signals handlers on the stack specified by SS (if not NULL). + If OSS is not NULL, it is filled in with the old signal stack status. */ + int +-sigaltstack (ss, oss) +- const struct sigaltstack *ss; +- struct sigaltstack *oss; ++sigaltstack (const struct sigaltstack *ss, struct sigaltstack *oss) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigandset.c b/signal/sigandset.c +index 3dcf3a7dfc847d61..1162f1fec62b4b15 100644 +--- a/signal/sigandset.c ++++ b/signal/sigandset.c +@@ -22,10 +22,7 @@ + + /* Combine sets LEFT and RIGHT by logical AND and place result in DEST. */ + int +-sigandset (dest, left, right) +- sigset_t *dest; +- const sigset_t *left; +- const sigset_t *right; ++sigandset (sigset_t *dest, const sigset_t *left, const sigset_t *right) + { + if (dest == NULL || left == NULL || right == NULL) + { +diff --git a/signal/sigblock.c b/signal/sigblock.c +index 7294629541041008..c985f870403ef52c 100644 +--- a/signal/sigblock.c ++++ b/signal/sigblock.c +@@ -20,8 +20,7 @@ + + /* Block signals in MASK, returning the old mask. */ + int +-__sigblock (mask) +- int mask; ++__sigblock (int mask) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigdelset.c b/signal/sigdelset.c +index 6da57c149ba9a296..ad456db891fb5c62 100644 +--- a/signal/sigdelset.c ++++ b/signal/sigdelset.c +@@ -19,9 +19,7 @@ + + /* Add SIGNO to SET. */ + int +-sigdelset (set, signo) +- sigset_t *set; +- int signo; ++sigdelset (sigset_t *set, int signo) + { + if (set == NULL || signo <= 0 || signo >= NSIG) + { +diff --git a/signal/sigempty.c b/signal/sigempty.c +index a71ff5248258041e..4418d4134f9bcfbc 100644 +--- a/signal/sigempty.c ++++ b/signal/sigempty.c +@@ -21,8 +21,7 @@ + + /* Clear all signals from SET. */ + int +-sigemptyset (set) +- sigset_t *set; ++sigemptyset (sigset_t *set) + { + if (set == NULL) + { +diff --git a/signal/sigfillset.c b/signal/sigfillset.c +index cba40ed5e7f4b193..dbef43004403a2cc 100644 +--- a/signal/sigfillset.c ++++ b/signal/sigfillset.c +@@ -21,8 +21,7 @@ + + /* Set all signals in SET. */ + int +-sigfillset (set) +- sigset_t *set; ++sigfillset (sigset_t *set) + { + if (set == NULL) + { +diff --git a/signal/sighold.c b/signal/sighold.c +index 7970beb299e7989f..b0ec219bfc8b9f6f 100644 +--- a/signal/sighold.c ++++ b/signal/sighold.c +@@ -22,8 +22,7 @@ + #include + + int +-sighold (sig) +- int sig; ++sighold (int sig) + { + sigset_t set; + +diff --git a/signal/sigignore.c b/signal/sigignore.c +index 637dc94895fe05b7..ef38064fe0295f19 100644 +--- a/signal/sigignore.c ++++ b/signal/sigignore.c +@@ -21,8 +21,7 @@ + + /* Set the disposition for SIG to SIG_IGN. */ + int +-sigignore (sig) +- int sig; ++sigignore (int sig) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigintr.c b/signal/sigintr.c +index 44959509d072782c..edac44e9ff09cb97 100644 +--- a/signal/sigintr.c ++++ b/signal/sigintr.c +@@ -22,9 +22,7 @@ + (causing them to fail with EINTR); if INTERRUPT is zero, make system + calls be restarted after signal SIG. */ + int +-siginterrupt (sig, interrupt) +- int sig; +- int interrupt; ++siginterrupt (int sig, int interrupt) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigisempty.c b/signal/sigisempty.c +index 587f2c736828c59c..9d31665653673d68 100644 +--- a/signal/sigisempty.c ++++ b/signal/sigisempty.c +@@ -22,8 +22,7 @@ + + /* Test whether SET is empty. */ + int +-sigisemptyset (set) +- const sigset_t *set; ++sigisemptyset (const sigset_t *set) + { + if (set == NULL) + { +diff --git a/signal/sigismem.c b/signal/sigismem.c +index 5627f4bb527ed50b..66b802eba660eec9 100644 +--- a/signal/sigismem.c ++++ b/signal/sigismem.c +@@ -19,9 +19,7 @@ + + /* Return 1 if SIGNO is in SET, 0 if not. */ + int +-sigismember (set, signo) +- const sigset_t *set; +- int signo; ++sigismember (const sigset_t *set, int signo) + { + if (set == NULL || signo <= 0 || signo >= NSIG) + { +diff --git a/signal/signal.c b/signal/signal.c +index bc78d6f5c0c69d83..a0f573ffd6faccae 100644 +--- a/signal/signal.c ++++ b/signal/signal.c +@@ -22,9 +22,7 @@ + /* Set the handler for the signal SIG to HANDLER, + returning the old handler, or SIG_ERR on error. */ + __sighandler_t +-signal (sig, handler) +- int sig; +- __sighandler_t handler; ++signal (int sig, __sighandler_t handler) + { + __set_errno (ENOSYS); + return SIG_ERR; +diff --git a/signal/sigorset.c b/signal/sigorset.c +index 876983403bb80c2d..3d214f72cb9e2e7f 100644 +--- a/signal/sigorset.c ++++ b/signal/sigorset.c +@@ -22,10 +22,7 @@ + + /* Combine sets LEFT and RIGHT by logical OR and place result in DEST. */ + int +-sigorset (dest, left, right) +- sigset_t *dest; +- const sigset_t *left; +- const sigset_t *right; ++sigorset (sigset_t *dest, const sigset_t *left, const sigset_t *right) + { + if (dest == NULL || left == NULL || right == NULL) + { +diff --git a/signal/sigpause.c b/signal/sigpause.c +index 78e61fc96056c67c..feca1a30ec86e5da 100644 +--- a/signal/sigpause.c ++++ b/signal/sigpause.c +@@ -21,9 +21,7 @@ + #undef sigpause + + int +-__sigpause (sig_or_mask, is_sig) +- int sig_or_mask; +- int is_sig; ++__sigpause (int sig_or_mask, int is_sig) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigpending.c b/signal/sigpending.c +index 7b48bfebd7fc2851..299bcbfa42d1ad12 100644 +--- a/signal/sigpending.c ++++ b/signal/sigpending.c +@@ -22,8 +22,7 @@ + + /* Store in SET all signals that are blocked and pending. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + if (set == NULL) + { +diff --git a/signal/sigprocmask.c b/signal/sigprocmask.c +index dbe30828a02c38cb..d72b36c299df7f8a 100644 +--- a/signal/sigprocmask.c ++++ b/signal/sigprocmask.c +@@ -23,10 +23,7 @@ + according to HOW, which may be SIG_BLOCK, SIG_UNBLOCK or SIG_SETMASK. + If OSET is not NULL, store the old set of blocked signals in *OSET. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + switch (how) + { +diff --git a/signal/sigrelse.c b/signal/sigrelse.c +index 103ebecf01a54027..1be215f47348dba5 100644 +--- a/signal/sigrelse.c ++++ b/signal/sigrelse.c +@@ -22,8 +22,7 @@ + #include + + int +-sigrelse (sig) +- int sig; ++sigrelse (int sig) + { + sigset_t set; + +diff --git a/signal/sigreturn.c b/signal/sigreturn.c +index 901404ca86076e65..c1bcef5dbc67488b 100644 +--- a/signal/sigreturn.c ++++ b/signal/sigreturn.c +@@ -19,8 +19,7 @@ + #include + + int +-__sigreturn (context) +- struct sigcontext *context; ++__sigreturn (struct sigcontext *context) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigset.c b/signal/sigset.c +index a87cbcef7ab0cb55..9e363525e36a9257 100644 +--- a/signal/sigset.c ++++ b/signal/sigset.c +@@ -21,9 +21,7 @@ + + /* Set the disposition for SIG. */ + __sighandler_t +-sigset (sig, disp) +- int sig; +- __sighandler_t disp; ++sigset (int sig, __sighandler_t disp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigsetmask.c b/signal/sigsetmask.c +index 495f30e88eca897a..b44dee62279bbcd3 100644 +--- a/signal/sigsetmask.c ++++ b/signal/sigsetmask.c +@@ -19,8 +19,7 @@ + #include + + int +-__sigsetmask (mask) +- int mask; ++__sigsetmask (int mask) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigstack.c b/signal/sigstack.c +index 9b6f2b1d9b43249f..e48c95e9123c89b0 100644 +--- a/signal/sigstack.c ++++ b/signal/sigstack.c +@@ -21,9 +21,7 @@ + /* Run signals handlers on the stack specified by SS (if not NULL). + If OSS is not NULL, it is filled in with the old signal stack status. */ + int +-sigstack (ss, oss) +- struct sigstack *ss; +- struct sigstack *oss; ++sigstack (struct sigstack *ss, struct sigstack *oss) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sigsuspend.c b/signal/sigsuspend.c +index 35be5c6d0c801061..ff9574ee2c985390 100644 +--- a/signal/sigsuspend.c ++++ b/signal/sigsuspend.c +@@ -22,8 +22,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-__sigsuspend (set) +- const sigset_t *set; ++__sigsuspend (const sigset_t *set) + { + __set_errno (ENOSYS); + return -1; +diff --git a/signal/sysv_signal.c b/signal/sysv_signal.c +index aaf940b857650eb7..f62b40835ff1bfd9 100644 +--- a/signal/sysv_signal.c ++++ b/signal/sysv_signal.c +@@ -21,9 +21,7 @@ + /* Set the handler for the signal SIG to HANDLER, + returning the old handler, or SIG_ERR on error. */ + __sighandler_t +-__sysv_signal (sig, handler) +- int sig; +- __sighandler_t handler; ++__sysv_signal (int sig, __sighandler_t handler) + { + /* Check signal extents to protect __sigismember. */ + if (handler == SIG_ERR || sig < 1 || sig >= NSIG) +diff --git a/socket/accept.c b/socket/accept.c +index c1837956da958f50..39345703549c6ee8 100644 +--- a/socket/accept.c ++++ b/socket/accept.c +@@ -24,10 +24,7 @@ + peer and *ADDR_LEN to the address's actual length, and return the + new socket's descriptor, or -1 for errors. */ + int +-accept (fd, addr, addr_len) +- int fd; +- __SOCKADDR_ARG addr; +- socklen_t *addr_len; ++accept (int fd, __SOCKADDR_ARG addr, socklen_t *addr_len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/accept4.c b/socket/accept4.c +index d65482c11649b0c9..0f551224f7daa2e1 100644 +--- a/socket/accept4.c ++++ b/socket/accept4.c +@@ -25,11 +25,7 @@ + new socket's descriptor, or -1 for errors. The operation can be influenced + by the FLAGS parameter. */ + int +-__libc_accept4 (fd, addr, addr_len, flags) +- int fd; +- __SOCKADDR_ARG addr; +- socklen_t *addr_len; +- int flags; ++__libc_accept4 (int fd, __SOCKADDR_ARG addr, socklen_t *addr_len, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/bind.c b/socket/bind.c +index a1d6fc652168b7c1..93a79bb41774b349 100644 +--- a/socket/bind.c ++++ b/socket/bind.c +@@ -20,10 +20,7 @@ + + /* Give the socket FD the local address ADDR (which is LEN bytes long). */ + int +-__bind (fd, addr, len) +- int fd; +- __CONST_SOCKADDR_ARG addr; +- socklen_t len; ++__bind (int fd, __CONST_SOCKADDR_ARG addr, socklen_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/connect.c b/socket/connect.c +index 4f421f8f3e3f74d4..7059f867e228a72e 100644 +--- a/socket/connect.c ++++ b/socket/connect.c +@@ -23,10 +23,7 @@ + and the only address from which to accept transmissions. + Return 0 on success, -1 for errors. */ + int +-__connect (fd, addr, len) +- int fd; +- __CONST_SOCKADDR_ARG addr; +- socklen_t len; ++__connect (int fd, __CONST_SOCKADDR_ARG addr, socklen_t len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/getpeername.c b/socket/getpeername.c +index 72e44234ffcbbebb..955f644510526d51 100644 +--- a/socket/getpeername.c ++++ b/socket/getpeername.c +@@ -21,10 +21,7 @@ + /* Put the address of the peer connected to socket FD into *ADDR + (which is *LEN bytes long), and its actual length into *LEN. */ + int +-getpeername (fd, addr, len) +- int fd; +- __SOCKADDR_ARG addr; +- socklen_t *len; ++getpeername (int fd, __SOCKADDR_ARG addr, socklen_t *len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/getsockname.c b/socket/getsockname.c +index 14df9bce5bcdd110..8452f7415ff76912 100644 +--- a/socket/getsockname.c ++++ b/socket/getsockname.c +@@ -20,10 +20,7 @@ + + /* Put the local address of FD into *ADDR and its length in *LEN. */ + int +-__getsockname (fd, addr, len) +- int fd; +- __SOCKADDR_ARG addr; +- socklen_t *len; ++__getsockname (int fd, __SOCKADDR_ARG addr, socklen_t *len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/getsockopt.c b/socket/getsockopt.c +index f172f20df92101a3..6ca2d2a9a2ef982a 100644 +--- a/socket/getsockopt.c ++++ b/socket/getsockopt.c +@@ -22,12 +22,7 @@ + into OPTVAL (which is *OPTLEN bytes long), and set *OPTLEN to the value's + actual length. Returns 0 on success, -1 for errors. */ + int +-getsockopt (fd, level, optname, optval, optlen) +- int fd; +- int level; +- int optname; +- void *optval; +- socklen_t *optlen; ++getsockopt (int fd, int level, int optname, void *optval, socklen_t *optlen) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/listen.c b/socket/listen.c +index f657d8790568db92..36fd015c8145ce70 100644 +--- a/socket/listen.c ++++ b/socket/listen.c +@@ -22,9 +22,7 @@ + N connection requests will be queued before further requests are refused. + Returns 0 on success, -1 for errors. */ + int +-__listen (fd, n) +- int fd; +- int n; ++__listen (int fd, int n) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/recv.c b/socket/recv.c +index 6efeb4d92aa1e8e7..f9396511d72e9d90 100644 +--- a/socket/recv.c ++++ b/socket/recv.c +@@ -21,11 +21,7 @@ + /* Read N bytes into BUF from socket FD. + Returns the number read or -1 for errors. */ + ssize_t +-__recv (fd, buf, n, flags) +- int fd; +- void *buf; +- size_t n; +- int flags; ++__recv (int fd, void *buf, size_t n, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/recvmsg.c b/socket/recvmsg.c +index 0afcc0faf5240e3e..ffab5cbf86eb4fdf 100644 +--- a/socket/recvmsg.c ++++ b/socket/recvmsg.c +@@ -21,10 +21,7 @@ + /* Receive a message as described by MESSAGE from socket FD. + Returns the number of bytes read or -1 for errors. */ + ssize_t +-__recvmsg (fd, message, flags) +- int fd; +- struct msghdr *message; +- int flags; ++__recvmsg (int fd, struct msghdr *message, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/send.c b/socket/send.c +index 1f5220db24c3f34a..c46b3f51ab971906 100644 +--- a/socket/send.c ++++ b/socket/send.c +@@ -20,11 +20,7 @@ + + /* Send N bytes of BUF to socket FD. Returns the number sent or -1. */ + ssize_t +-__send (fd, buf, n, flags) +- int fd; +- const __ptr_t buf; +- size_t n; +- int flags; ++__send (int fd, const __ptr_t buf, size_t n, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/sendmsg.c b/socket/sendmsg.c +index 8fce470ad70251da..b6dc994ea0eaf21e 100644 +--- a/socket/sendmsg.c ++++ b/socket/sendmsg.c +@@ -21,10 +21,7 @@ + /* Send a message described MESSAGE on socket FD. + Returns the number of bytes sent, or -1 for errors. */ + ssize_t +-__sendmsg (fd, message, flags) +- int fd; +- const struct msghdr *message; +- int flags; ++__sendmsg (int fd, const struct msghdr *message, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/shutdown.c b/socket/shutdown.c +index 5c35cc3b3d1aa7ab..049577995d38b083 100644 +--- a/socket/shutdown.c ++++ b/socket/shutdown.c +@@ -25,9 +25,7 @@ + 2 = No more receptions or transmissions. + Returns 0 on success, -1 for errors. */ + int +-shutdown (fd, how) +- int fd; +- int how; ++shutdown (int fd, int how) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/sockatmark.c b/socket/sockatmark.c +index 7970961ee45dc552..6f4f19f6e42bf925 100644 +--- a/socket/sockatmark.c ++++ b/socket/sockatmark.c +@@ -20,8 +20,7 @@ + + /* Determine wheter socket is at a out-of-band mark. */ + int +-sockatmark (fd) +- int fd; ++sockatmark (int fd) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/socket.c b/socket/socket.c +index 8cb014edb70b5ee5..af813793c03367e6 100644 +--- a/socket/socket.c ++++ b/socket/socket.c +@@ -22,10 +22,7 @@ + protocol PROTOCOL. If PROTOCOL is zero, one is chosen automatically. + Returns a file descriptor for the new socket, or -1 for errors. */ + int +-__socket (domain, type, protocol) +- int domain; +- int type; +- int protocol; ++__socket (int domain, int type, int protocol) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdio-common/ctermid.c b/stdio-common/ctermid.c +index e78c3d083cb0103c..e212aa702a57a698 100644 +--- a/stdio-common/ctermid.c ++++ b/stdio-common/ctermid.c +@@ -23,8 +23,7 @@ + If S is not NULL, the name is copied into it (it should be at + least L_ctermid bytes long), otherwise a static buffer is used. */ + char * +-ctermid (s) +- char *s; ++ctermid (char *s) + { + __set_errno (ENOSYS); + return NULL; +diff --git a/stdio-common/cuserid.c b/stdio-common/cuserid.c +index 68056dcfc8dcd807..e8b7f699a09abf9c 100644 +--- a/stdio-common/cuserid.c ++++ b/stdio-common/cuserid.c +@@ -22,8 +22,7 @@ + If S is not NULL, it points to a buffer of at least L_cuserid bytes + into which the name is copied; otherwise, a static buffer is used. */ + char * +-cuserid (s) +- char *s; ++cuserid (char *s) + { + __set_errno (ENOSYS); + return NULL; +diff --git a/stdio-common/printf-prs.c b/stdio-common/printf-prs.c +index 32f08bac16c5d170..9e81dce0a338cc1c 100644 +--- a/stdio-common/printf-prs.c ++++ b/stdio-common/printf-prs.c +@@ -56,10 +56,7 @@ + + + size_t +-parse_printf_format (fmt, n, argtypes) +- const char *fmt; +- size_t n; +- int *argtypes; ++parse_printf_format (const char *fmt, size_t n, int *argtypes) + { + size_t nargs; /* Number of arguments. */ + size_t max_ref_arg; /* Highest index used in a positional arg. */ +diff --git a/stdio-common/remove.c b/stdio-common/remove.c +index 8563b7187503c4fa..2bce30b24f6b44a5 100644 +--- a/stdio-common/remove.c ++++ b/stdio-common/remove.c +@@ -20,8 +20,7 @@ + #include + + int +-remove (file) +- const char *file; ++remove (const char *file) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdio-common/rename.c b/stdio-common/rename.c +index 2b3cbcfa14b16fe0..81f77f217e247f22 100644 +--- a/stdio-common/rename.c ++++ b/stdio-common/rename.c +@@ -21,9 +21,7 @@ + + /* Rename the file OLD to NEW. */ + int +-rename (old, new) +- const char *old; +- const char *new; ++rename (const char *old, const char *new) + { + if (old == NULL || new == NULL) + { +diff --git a/stdio-common/renameat.c b/stdio-common/renameat.c +index ab2cf428f27fdd0e..a3f161cc8c392320 100644 +--- a/stdio-common/renameat.c ++++ b/stdio-common/renameat.c +@@ -22,11 +22,7 @@ + + /* Rename the file OLD relative to OLDFD to NEW relative to NEWFD. */ + int +-renameat (oldfd, old, newfd, new) +- int oldfd; +- const char *old; +- int newfd; +- const char *new; ++renameat (int oldfd, const char *old, int newfd, const char *new) + { + if ((oldfd < 0 && oldfd != AT_FDCWD) || (newfd < 0 && newfd != AT_FDCWD)) + { +diff --git a/stdio-common/tempname.c b/stdio-common/tempname.c +index 30b9fd44550f6924..d600e3708d86be6c 100644 +--- a/stdio-common/tempname.c ++++ b/stdio-common/tempname.c +@@ -46,11 +46,7 @@ stub_warning (__path_search) + */ + + int +-__gen_tempname (tmpl, suffixlen, flags, kind) +- char *tmpl; +- int suffixlen; +- int flags; +- int kind; ++__gen_tempname (char *tmpl, int suffixlen, int flags, int kind) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdio-common/xbug.c b/stdio-common/xbug.c +index 64ba314cbefec6e6..06f74aff005927f3 100644 +--- a/stdio-common/xbug.c ++++ b/stdio-common/xbug.c +@@ -14,18 +14,16 @@ void ReadFile (Buffer *buffer, FILE *input); + + #define INIT_BUFFER_SIZE 10000 + +-void InitBuffer(b) +- Buffer *b; ++void ++InitBuffer (Buffer *b) + { + b->room = INIT_BUFFER_SIZE; + b->used = 0; + b->buff = (char *)malloc(INIT_BUFFER_SIZE*sizeof(char)); + } + +-void AppendToBuffer(b, str, len) +- Buffer *b; +- const char *str; +- int len; ++void ++AppendToBuffer (Buffer *b, const char *str, int len) + { + while (b->used + len > b->room) { + b->buff = (char *)realloc(b->buff, 2*b->room*(sizeof(char))); +@@ -35,9 +33,8 @@ void AppendToBuffer(b, str, len) + b->used += len; + } + +-void ReadFile(buffer, input) +- Buffer *buffer; +- FILE *input; ++void ++ReadFile (Buffer *buffer, FILE *input) + { + char buf[BUFSIZ + 1]; + int bytes; +diff --git a/stdlib/a64l.c b/stdlib/a64l.c +index cb9487583b3714fe..60b8ef1b7ef653ea 100644 +--- a/stdlib/a64l.c ++++ b/stdlib/a64l.c +@@ -36,8 +36,7 @@ static const char a64l_table[TABLE_SIZE] = + + + long int +-a64l (string) +- const char *string; ++a64l (const char *string) + { + const char *ptr = string; + unsigned long int result = 0ul; +diff --git a/stdlib/drand48_r.c b/stdlib/drand48_r.c +index 936adb5e06276b84..8efccbc1454899a4 100644 +--- a/stdlib/drand48_r.c ++++ b/stdlib/drand48_r.c +@@ -21,9 +21,7 @@ + #include + + int +-drand48_r (buffer, result) +- struct drand48_data *buffer; +- double *result; ++drand48_r (struct drand48_data *buffer, double *result) + { + return __erand48_r (buffer->__x, buffer, result); + } +diff --git a/stdlib/getcontext.c b/stdlib/getcontext.c +index b197438e424787ca..df4e243443983fd9 100644 +--- a/stdlib/getcontext.c ++++ b/stdlib/getcontext.c +@@ -19,8 +19,7 @@ + #include + + int +-getcontext (ucp) +- ucontext_t *ucp; ++getcontext (ucontext_t *ucp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdlib/getenv.c b/stdlib/getenv.c +index 8398dab7d419bed1..8bd0e359ee9051c0 100644 +--- a/stdlib/getenv.c ++++ b/stdlib/getenv.c +@@ -30,8 +30,7 @@ + two characters which we can access. By doing this we can avoid using the + `strncmp' most of the time. */ + char * +-getenv (name) +- const char *name; ++getenv (const char *name) + { + size_t len = strlen (name); + char **ep; +diff --git a/stdlib/l64a.c b/stdlib/l64a.c +index 8594bc9075419096..51bd39aef7e5337a 100644 +--- a/stdlib/l64a.c ++++ b/stdlib/l64a.c +@@ -32,8 +32,7 @@ static const char conv_table[64] = + }; + + char * +-l64a (n) +- long int n; ++l64a (long int n) + { + unsigned long int m = (unsigned long int) n; + static char result[7]; +diff --git a/stdlib/llabs.c b/stdlib/llabs.c +index caa45ebe09045a96..93a1b60c646dd63e 100644 +--- a/stdlib/llabs.c ++++ b/stdlib/llabs.c +@@ -23,8 +23,7 @@ + + /* Return the absolute value of I. */ + long long int +-llabs (i) +- long long int i; ++llabs (long long int i) + { + return i < 0 ? -i : i; + } +diff --git a/stdlib/lldiv.c b/stdlib/lldiv.c +index c7f49d3af3b1a75c..73baeee142ffa638 100644 +--- a/stdlib/lldiv.c ++++ b/stdlib/lldiv.c +@@ -21,9 +21,7 @@ + + /* Return the `lldiv_t' representation of NUMER over DENOM. */ + lldiv_t +-lldiv (numer, denom) +- long long int numer; +- long long int denom; ++lldiv (long long int numer, long long int denom) + { + lldiv_t result; + +diff --git a/stdlib/lrand48_r.c b/stdlib/lrand48_r.c +index aa9f205132faef34..99c05933466a0769 100644 +--- a/stdlib/lrand48_r.c ++++ b/stdlib/lrand48_r.c +@@ -19,9 +19,7 @@ + #include + + int +-lrand48_r (buffer, result) +- struct drand48_data *buffer; +- long int *result; ++lrand48_r (struct drand48_data *buffer, long int *result) + { + /* Be generous for the arguments, detect some errors. */ + if (buffer == NULL) +diff --git a/stdlib/mrand48_r.c b/stdlib/mrand48_r.c +index 725903afb4fb0a8a..c3f7865d75b9a93c 100644 +--- a/stdlib/mrand48_r.c ++++ b/stdlib/mrand48_r.c +@@ -19,9 +19,7 @@ + #include + + int +-mrand48_r (buffer, result) +- struct drand48_data *buffer; +- long int *result; ++mrand48_r (struct drand48_data *buffer, long int *result) + { + /* Be generous for the arguments, detect some errors. */ + if (buffer == NULL) +diff --git a/stdlib/putenv.c b/stdlib/putenv.c +index a9d3146261a42d0d..166b488ad306fd25 100644 +--- a/stdlib/putenv.c ++++ b/stdlib/putenv.c +@@ -49,8 +49,7 @@ extern char *alloca (); + + /* Put STRING, which is of the form "NAME=VALUE", in the environment. */ + int +-putenv (string) +- char *string; ++putenv (char *string) + { + const char *const name_end = strchr (string, '='); + +diff --git a/stdlib/random.c b/stdlib/random.c +index 537555c90098d426..618c990216b63b1b 100644 +--- a/stdlib/random.c ++++ b/stdlib/random.c +@@ -205,8 +205,7 @@ __libc_lock_define_initialized (static, lock) + introduced by the L.C.R.N.G. Note that the initialization of randtbl[] + for default usage relies on values produced by this routine. */ + void +-__srandom (x) +- unsigned int x; ++__srandom (unsigned int x) + { + __libc_lock_lock (lock); + (void) __srandom_r (x, &unsafe_state); +@@ -228,10 +227,7 @@ weak_alias (__srandom, srand) + setstate so that it doesn't matter when initstate is called. + Returns a pointer to the old state. */ + char * +-__initstate (seed, arg_state, n) +- unsigned int seed; +- char *arg_state; +- size_t n; ++__initstate (unsigned int seed, char *arg_state, size_t n) + { + int32_t *ostate; + +@@ -257,8 +253,7 @@ weak_alias (__initstate, initstate) + same state as the current state + Returns a pointer to the old state information. */ + char * +-__setstate (arg_state) +- char *arg_state; ++__setstate (char *arg_state) + { + int32_t *ostate; + +diff --git a/stdlib/random_r.c b/stdlib/random_r.c +index a8e211ad4c17784f..5fdf56275601075d 100644 +--- a/stdlib/random_r.c ++++ b/stdlib/random_r.c +@@ -158,9 +158,7 @@ static const struct random_poly_info random_poly_info = + introduced by the L.C.R.N.G. Note that the initialization of randtbl[] + for default usage relies on values produced by this routine. */ + int +-__srandom_r (seed, buf) +- unsigned int seed; +- struct random_data *buf; ++__srandom_r (unsigned int seed, struct random_data *buf) + { + int type; + int32_t *state; +@@ -297,9 +295,7 @@ weak_alias (__initstate_r, initstate_r) + same state as the current state + Returns 0 on success, non-zero on failure. */ + int +-__setstate_r (arg_state, buf) +- char *arg_state; +- struct random_data *buf; ++__setstate_r (char *arg_state, struct random_data *buf) + { + int32_t *new_state = 1 + (int32_t *) arg_state; + int type; +@@ -357,9 +353,7 @@ weak_alias (__setstate_r, setstate_r) + pointer if the front one has wrapped. Returns a 31-bit random number. */ + + int +-__random_r (buf, result) +- struct random_data *buf; +- int32_t *result; ++__random_r (struct random_data *buf, int32_t *result) + { + int32_t *state; + +diff --git a/stdlib/secure-getenv.c b/stdlib/secure-getenv.c +index 7634faea84a0d07e..f47bf22b3180587b 100644 +--- a/stdlib/secure-getenv.c ++++ b/stdlib/secure-getenv.c +@@ -24,8 +24,7 @@ + what values to accept from the environment. This special version + checks for SUID or SGID first before doing any work. */ + char * +-__libc_secure_getenv (name) +- const char *name; ++__libc_secure_getenv (const char *name) + { + return __libc_enable_secure ? NULL : getenv (name); + } +diff --git a/stdlib/setcontext.c b/stdlib/setcontext.c +index 470f238c148902a9..5f148c7c942919c2 100644 +--- a/stdlib/setcontext.c ++++ b/stdlib/setcontext.c +@@ -19,8 +19,7 @@ + #include + + int +-setcontext (ucp) +- const ucontext_t *ucp; ++setcontext (const ucontext_t *ucp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdlib/setenv.c b/stdlib/setenv.c +index 56b9bc67d93cbcc0..1a4d3c203e90ff83 100644 +--- a/stdlib/setenv.c ++++ b/stdlib/setenv.c +@@ -293,10 +293,7 @@ __add_to_environ (name, value, combined, replace) + } + + int +-setenv (name, value, replace) +- const char *name; +- const char *value; +- int replace; ++setenv (const char *name, const char *value, int replace) + { + if (name == NULL || *name == '\0' || strchr (name, '=') != NULL) + { +@@ -308,8 +305,7 @@ setenv (name, value, replace) + } + + int +-unsetenv (name) +- const char *name; ++unsetenv (const char *name) + { + size_t len; + char **ep; +diff --git a/stdlib/srand48.c b/stdlib/srand48.c +index ab670ab39244df91..548ebcfb3fce4dda 100644 +--- a/stdlib/srand48.c ++++ b/stdlib/srand48.c +@@ -20,8 +20,7 @@ + + + void +-srand48 (seedval) +- long seedval; ++srand48 (long seedval) + { + (void) __srand48_r (seedval, &__libc_drand48_data); + } +diff --git a/stdlib/srand48_r.c b/stdlib/srand48_r.c +index a164cee6c254f063..e121ba8a2cafac89 100644 +--- a/stdlib/srand48_r.c ++++ b/stdlib/srand48_r.c +@@ -20,9 +20,7 @@ + #include + + int +-__srand48_r (seedval, buffer) +- long int seedval; +- struct drand48_data *buffer; ++__srand48_r (long int seedval, struct drand48_data *buffer) + { + /* The standards say we only have 32 bits. */ + if (sizeof (long int) > 4) +diff --git a/stdlib/swapcontext.c b/stdlib/swapcontext.c +index ee3acb478c160ebb..e7c1f25c10b8a243 100644 +--- a/stdlib/swapcontext.c ++++ b/stdlib/swapcontext.c +@@ -19,9 +19,7 @@ + #include + + int +-swapcontext (oucp, ucp) +- ucontext_t *oucp; +- const ucontext_t *ucp; ++swapcontext (ucontext_t *oucp, const ucontext_t *ucp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdlib/system.c b/stdlib/system.c +index 9bc7e82c6f203b51..9a65b4411df37d1e 100644 +--- a/stdlib/system.c ++++ b/stdlib/system.c +@@ -21,8 +21,7 @@ + + /* Execute LINE as a shell command. */ + int +-__libc_system (line) +- const char *line; ++__libc_system (const char *line) + { + if (line == NULL) + return 0; /* This indicates no command processor. */ +diff --git a/stdlib/tst-strtod.c b/stdlib/tst-strtod.c +index 1cfb1da8963d7155..6292c34764e7ed81 100644 +--- a/stdlib/tst-strtod.c ++++ b/stdlib/tst-strtod.c +@@ -182,9 +182,7 @@ main (int argc, char ** argv) + } + + static void +-expand (dst, c) +- char *dst; +- int c; ++expand (char *dst, int c) + { + if (isprint (c)) + { +diff --git a/stdlib/tst-strtol.c b/stdlib/tst-strtol.c +index 448102a2d9652ee3..5b80622e07bc71dc 100644 +--- a/stdlib/tst-strtol.c ++++ b/stdlib/tst-strtol.c +@@ -611,9 +611,7 @@ do_test (void) + } + + static void +-expand (dst, c) +- char *dst; +- int c; ++expand (char *dst, int c) + { + if (isprint (c)) + { +diff --git a/stdlib/tst-strtoll.c b/stdlib/tst-strtoll.c +index 93f1a56a56956bdb..de39ee3a5e12d287 100644 +--- a/stdlib/tst-strtoll.c ++++ b/stdlib/tst-strtoll.c +@@ -386,9 +386,7 @@ do_test (void) + } + + static void +-expand (dst, c) +- char *dst; +- int c; ++expand (char *dst, int c) + { + if (isprint (c)) + { +diff --git a/streams/fattach.c b/streams/fattach.c +index 9c84127c18751f34..e54b9be2d71ca8e4 100644 +--- a/streams/fattach.c ++++ b/streams/fattach.c +@@ -19,9 +19,7 @@ + #include + + int +-fattach (fildes, path) +- int fildes; +- const char *path; ++fattach (int fildes, const char *path) + { + __set_errno (ENOSYS); + return -1; +diff --git a/streams/fdetach.c b/streams/fdetach.c +index 04637367340ed2c8..ba88d46e39f5ebd8 100644 +--- a/streams/fdetach.c ++++ b/streams/fdetach.c +@@ -19,8 +19,7 @@ + #include + + int +-fdetach (path) +- const char *path; ++fdetach (const char *path) + { + __set_errno (ENOSYS); + return -1; +diff --git a/streams/getmsg.c b/streams/getmsg.c +index 2da0ab6eb3355722..e587ada24e73f14a 100644 +--- a/streams/getmsg.c ++++ b/streams/getmsg.c +@@ -19,11 +19,7 @@ + #include + + int +-getmsg (fildes, ctlptr, dataptr, flagsp) +- int fildes; +- struct strbuf *ctlptr; +- struct strbuf *dataptr; +- int *flagsp; ++getmsg (int fildes, struct strbuf *ctlptr, struct strbuf *dataptr, int *flagsp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/streams/isastream.c b/streams/isastream.c +index 9b9209b855b44ad9..80a9872bfe6116e8 100644 +--- a/streams/isastream.c ++++ b/streams/isastream.c +@@ -20,8 +20,7 @@ + #include + + int +-isastream (fildes) +- int fildes; ++isastream (int fildes) + { + /* In general we do not have a STREAMS implementation and therefore + return 0. But for invalid file descriptors we have to return an +diff --git a/string/ffs.c b/string/ffs.c +index 0d2bfb3959e7d88c..f002094a7c2550b1 100644 +--- a/string/ffs.c ++++ b/string/ffs.c +@@ -24,8 +24,7 @@ + + /* Find the first bit set in I. */ + int +-__ffs (i) +- int i; ++__ffs (int i) + { + static const unsigned char table[] = + { +diff --git a/string/ffsll.c b/string/ffsll.c +index 664306c6a1106da9..2005d89cef68866b 100644 +--- a/string/ffsll.c ++++ b/string/ffsll.c +@@ -24,8 +24,7 @@ + + /* Find the first bit set in I. */ + int +-ffsll (i) +- long long int i; ++ffsll (long long int i) + { + unsigned long long int x = i & -i; + +diff --git a/string/memcmp.c b/string/memcmp.c +index 4a3ef588d36df1a4..2600c9d8038043a6 100644 +--- a/string/memcmp.c ++++ b/string/memcmp.c +@@ -122,10 +122,7 @@ static int memcmp_common_alignment (long, long, size_t) __THROW; + objects (not LEN bytes!). Both SRCP1 and SRCP2 should be aligned for + memory operations on `op_t's. */ + static int +-memcmp_common_alignment (srcp1, srcp2, len) +- long int srcp1; +- long int srcp2; +- size_t len; ++memcmp_common_alignment (long int srcp1, long int srcp2, size_t len) + { + op_t a0, a1; + op_t b0, b1; +@@ -209,10 +206,7 @@ static int memcmp_not_common_alignment (long, long, size_t) __THROW; + `op_t' objects (not LEN bytes!). SRCP2 should be aligned for memory + operations on `op_t', but SRCP1 *should be unaligned*. */ + static int +-memcmp_not_common_alignment (srcp1, srcp2, len) +- long int srcp1; +- long int srcp2; +- size_t len; ++memcmp_not_common_alignment (long int srcp1, long int srcp2, size_t len) + { + op_t a0, a1, a2, a3; + op_t b0, b1, b2, b3; +@@ -312,10 +306,7 @@ memcmp_not_common_alignment (srcp1, srcp2, len) + } + + int +-MEMCMP (s1, s2, len) +- const __ptr_t s1; +- const __ptr_t s2; +- size_t len; ++MEMCMP (const __ptr_t s1, const __ptr_t s2, size_t len) + { + op_t a0; + op_t b0; +diff --git a/string/memcpy.c b/string/memcpy.c +index fa1ec24eaca527c4..33852df8fc3ebb51 100644 +--- a/string/memcpy.c ++++ b/string/memcpy.c +@@ -24,10 +24,7 @@ + #undef memcpy + + void * +-memcpy (dstpp, srcpp, len) +- void *dstpp; +- const void *srcpp; +- size_t len; ++memcpy (void *dstpp, const void *srcpp, size_t len) + { + unsigned long int dstp = (long int) dstpp; + unsigned long int srcp = (long int) srcpp; +diff --git a/string/memmove.c b/string/memmove.c +index 51bff31c0530ba91..0cc4dd57b272a2d8 100644 +--- a/string/memmove.c ++++ b/string/memmove.c +@@ -41,10 +41,7 @@ + + rettype + inhibit_loop_to_libcall +-MEMMOVE (a1, a2, len) +- a1const void *a1; +- a2const void *a2; +- size_t len; ++MEMMOVE (a1const void *a1, a2const void *a2, size_t len) + { + unsigned long int dstp = (long int) dest; + unsigned long int srcp = (long int) src; +diff --git a/string/memset.c b/string/memset.c +index eb83c1b5a81badde..2acc230f79293a3a 100644 +--- a/string/memset.c ++++ b/string/memset.c +@@ -22,10 +22,7 @@ + + void * + inhibit_loop_to_libcall +-memset (dstpp, c, len) +- void *dstpp; +- int c; +- size_t len; ++memset (void *dstpp, int c, size_t len) + { + long int dstp = (long int) dstpp; + +diff --git a/string/rawmemchr.c b/string/rawmemchr.c +index 0e4f192ad1a322dd..add5dfb68a38cc9a 100644 +--- a/string/rawmemchr.c ++++ b/string/rawmemchr.c +@@ -53,9 +53,7 @@ + + /* Find the first occurrence of C in S. */ + __ptr_t +-RAWMEMCHR (s, c_in) +- const __ptr_t s; +- int c_in; ++RAWMEMCHR (const __ptr_t s, int c_in) + { + const unsigned char *char_ptr; + const unsigned long int *longword_ptr; +diff --git a/string/strchrnul.c b/string/strchrnul.c +index 39540a3719fb0b91..00446c2469f18c77 100644 +--- a/string/strchrnul.c ++++ b/string/strchrnul.c +@@ -33,9 +33,7 @@ + + /* Find the first occurrence of C in S or the final NUL byte. */ + char * +-STRCHRNUL (s, c_in) +- const char *s; +- int c_in; ++STRCHRNUL (const char *s, int c_in) + { + const unsigned char *char_ptr; + const unsigned long int *longword_ptr; +diff --git a/string/strerror.c b/string/strerror.c +index 9d5b7ae280288c9e..6cee0b588c0908c3 100644 +--- a/string/strerror.c ++++ b/string/strerror.c +@@ -26,8 +26,7 @@ + libc_freeres_ptr (static char *buf); + + char * +-strerror (errnum) +- int errnum; ++strerror (int errnum) + { + char *ret = __strerror_r (errnum, NULL, 0); + int saved_errno; +diff --git a/string/strndup.c b/string/strndup.c +index f4caef41952b9e17..8bc93491ac359244 100644 +--- a/string/strndup.c ++++ b/string/strndup.c +@@ -37,9 +37,7 @@ char *malloc (); + #endif + + char * +-__strndup (s, n) +- const char *s; +- size_t n; ++__strndup (const char *s, size_t n) + { + size_t len = __strnlen (s, n); + char *new = (char *) malloc (len + 1); +diff --git a/string/strverscmp.c b/string/strverscmp.c +index d41664296e2f8b88..3d6f730b234bff9f 100644 +--- a/string/strverscmp.c ++++ b/string/strverscmp.c +@@ -39,9 +39,7 @@ + */ + + int +-__strverscmp (s1, s2) +- const char *s1; +- const char *s2; ++__strverscmp (const char *s1, const char *s2) + { + const unsigned char *p1 = (const unsigned char *) s1; + const unsigned char *p2 = (const unsigned char *) s2; +diff --git a/sunrpc/clnt_raw.c b/sunrpc/clnt_raw.c +index 4004c6b6a8e7665a..6653ee42fbc9edbe 100644 +--- a/sunrpc/clnt_raw.c ++++ b/sunrpc/clnt_raw.c +@@ -223,10 +223,7 @@ clntraw_geterr (CLIENT *cl, struct rpc_err *err) + + + static bool_t +-clntraw_freeres (cl, xdr_res, res_ptr) +- CLIENT *cl; +- xdrproc_t xdr_res; +- caddr_t res_ptr; ++clntraw_freeres (CLIENT *cl, xdrproc_t xdr_res, caddr_t res_ptr) + { + struct clntraw_private_s *clp = clntraw_private; + XDR *xdrs = &clp->xdr_stream; +diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c +index b46905fb06eb2a49..901820397dd56cd6 100644 +--- a/sunrpc/clnt_tcp.c ++++ b/sunrpc/clnt_tcp.c +@@ -332,9 +332,7 @@ call_again: + } + + static void +-clnttcp_geterr (h, errp) +- CLIENT *h; +- struct rpc_err *errp; ++clnttcp_geterr (CLIENT *h, struct rpc_err *errp) + { + struct ct_data *ct = + (struct ct_data *) h->cl_private; +@@ -343,10 +341,7 @@ clnttcp_geterr (h, errp) + } + + static bool_t +-clnttcp_freeres (cl, xdr_res, res_ptr) +- CLIENT *cl; +- xdrproc_t xdr_res; +- caddr_t res_ptr; ++clnttcp_freeres (CLIENT *cl, xdrproc_t xdr_res, caddr_t res_ptr) + { + struct ct_data *ct = (struct ct_data *) cl->cl_private; + XDR *xdrs = &(ct->ct_xdrs); +diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c +index 2ad81972561aa6b0..084669dea6819e7c 100644 +--- a/sunrpc/clnt_unix.c ++++ b/sunrpc/clnt_unix.c +@@ -317,10 +317,7 @@ clntunix_geterr (CLIENT *h, struct rpc_err *errp) + } + + static bool_t +-clntunix_freeres (cl, xdr_res, res_ptr) +- CLIENT *cl; +- xdrproc_t xdr_res; +- caddr_t res_ptr; ++clntunix_freeres (CLIENT *cl, xdrproc_t xdr_res, caddr_t res_ptr) + { + struct ct_data *ct = (struct ct_data *) cl->cl_private; + XDR *xdrs = &(ct->ct_xdrs); +diff --git a/sunrpc/pmap_prot.c b/sunrpc/pmap_prot.c +index 8df41dc5f2690554..0919d0917ddb454c 100644 +--- a/sunrpc/pmap_prot.c ++++ b/sunrpc/pmap_prot.c +@@ -38,9 +38,7 @@ + + + bool_t +-xdr_pmap (xdrs, regs) +- XDR *xdrs; +- struct pmap *regs; ++xdr_pmap (XDR *xdrs, struct pmap *regs) + { + + if (xdr_u_long (xdrs, ®s->pm_prog) && +diff --git a/sunrpc/pmap_prot2.c b/sunrpc/pmap_prot2.c +index 57b08001780118f8..01f158d6b80c4044 100644 +--- a/sunrpc/pmap_prot2.c ++++ b/sunrpc/pmap_prot2.c +@@ -76,9 +76,7 @@ + * this sounds like a job for xdr_reference! + */ + bool_t +-xdr_pmaplist (xdrs, rp) +- XDR *xdrs; +- struct pmaplist **rp; ++xdr_pmaplist (XDR *xdrs, struct pmaplist **rp) + { + /* + * more_elements is pre-computed in case the direction is +diff --git a/sunrpc/pmap_rmt.c b/sunrpc/pmap_rmt.c +index fd8de85589e32c8e..c0adc5b49ac4c54f 100644 +--- a/sunrpc/pmap_rmt.c ++++ b/sunrpc/pmap_rmt.c +@@ -144,9 +144,7 @@ libc_hidden_nolink_sunrpc (xdr_rmtcall_args, GLIBC_2_0) + * written for XDR_DECODE direction only + */ + bool_t +-xdr_rmtcallres (xdrs, crp) +- XDR *xdrs; +- struct rmtcallres *crp; ++xdr_rmtcallres (XDR *xdrs, struct rmtcallres *crp) + { + caddr_t port_ptr; + +diff --git a/sunrpc/rpc_prot.c b/sunrpc/rpc_prot.c +index dc24f3673ba5b9fc..f47c6befe423b8b8 100644 +--- a/sunrpc/rpc_prot.c ++++ b/sunrpc/rpc_prot.c +@@ -130,9 +130,7 @@ static const struct xdr_discrim reply_dscrm[3] = + * XDR a reply message + */ + bool_t +-xdr_replymsg (xdrs, rmsg) +- XDR *xdrs; +- struct rpc_msg *rmsg; ++xdr_replymsg (XDR *xdrs, struct rpc_msg *rmsg) + { + if (xdr_u_long (xdrs, &(rmsg->rm_xid)) && + xdr_enum (xdrs, (enum_t *) & (rmsg->rm_direction)) && +@@ -151,9 +149,7 @@ libc_hidden_nolink_sunrpc (xdr_replymsg, GLIBC_2_0) + * The rm_xid is not really static, but the user can easily munge on the fly. + */ + bool_t +-xdr_callhdr (xdrs, cmsg) +- XDR *xdrs; +- struct rpc_msg *cmsg; ++xdr_callhdr (XDR *xdrs, struct rpc_msg *cmsg) + { + + cmsg->rm_direction = CALL; +diff --git a/sunrpc/rpcinfo.c b/sunrpc/rpcinfo.c +index e490a7ee12bae739..2b55eb4a9c99f090 100644 +--- a/sunrpc/rpcinfo.c ++++ b/sunrpc/rpcinfo.c +@@ -201,10 +201,7 @@ main (int argc, char **argv) + } + + static void +-udpping (portnum, argc, argv) +- u_short portnum; +- int argc; +- char **argv; ++udpping (u_short portnum, int argc, char **argv) + { + struct timeval to; + struct sockaddr_in addr; +@@ -356,10 +353,7 @@ udpping (portnum, argc, argv) + } + + static void +-tcpping (portnum, argc, argv) +- u_short portnum; +- int argc; +- char **argv; ++tcpping (u_short portnum, int argc, char **argv) + { + struct timeval to; + struct sockaddr_in addr; +@@ -505,10 +499,7 @@ tcpping (portnum, argc, argv) + * a good error message. + */ + static int +-pstatus (client, prognum, vers) +- register CLIENT *client; +- u_long prognum; +- u_long vers; ++pstatus (register CLIENT *client, u_long prognum, u_long vers) + { + struct rpc_err rpcerr; + +@@ -527,9 +518,7 @@ pstatus (client, prognum, vers) + } + + static void +-pmapdump (argc, argv) +- int argc; +- char **argv; ++pmapdump (int argc, char **argv) + { + struct sockaddr_in server_addr; + register struct hostent *hp; +@@ -624,9 +613,7 @@ reply_proc (res, who) + } + + static void +-brdcst (argc, argv) +- int argc; +- char **argv; ++brdcst (int argc, char **argv) + { + enum clnt_stat rpc_stat; + u_long prognum, vers; +@@ -651,9 +638,7 @@ brdcst (argc, argv) + } + + static void +-deletereg (argc, argv) +- int argc; +- char **argv; ++deletereg (int argc, char **argv) + { + u_long prog_num, version_num; + +@@ -700,8 +685,7 @@ print_version (void) + } + + static u_long +-getprognum (arg) +- char *arg; ++getprognum (char *arg) + { + register struct rpcent *rpc; + register u_long prognum; +@@ -725,8 +709,7 @@ getprognum (arg) + } + + static u_long +-getvers (arg) +- char *arg; ++getvers (char *arg) + { + register u_long vers; + +@@ -735,9 +718,7 @@ getvers (arg) + } + + static void +-get_inet_address (addr, host) +- struct sockaddr_in *addr; +- char *host; ++get_inet_address (struct sockaddr_in *addr, char *host) + { + register struct hostent *hp; + +diff --git a/sunrpc/svc_raw.c b/sunrpc/svc_raw.c +index 7d885574afb3fc34..99bfdfebe87484cb 100644 +--- a/sunrpc/svc_raw.c ++++ b/sunrpc/svc_raw.c +@@ -97,9 +97,7 @@ svcraw_stat (SVCXPRT *xprt) + } + + static bool_t +-svcraw_recv (xprt, msg) +- SVCXPRT *xprt; +- struct rpc_msg *msg; ++svcraw_recv (SVCXPRT *xprt, struct rpc_msg *msg) + { + struct svcraw_private_s *srp = svcraw_private; + XDR *xdrs; +diff --git a/sunrpc/svc_udp.c b/sunrpc/svc_udp.c +index 3324e2a13e65df8c..e99c97680676f509 100644 +--- a/sunrpc/svc_udp.c ++++ b/sunrpc/svc_udp.c +@@ -205,8 +205,7 @@ libc_hidden_nolink_sunrpc (svcudp_bufcreate, GLIBC_2_0) + #endif + + SVCXPRT * +-svcudp_create (sock) +- int sock; ++svcudp_create (int sock) + { + return svcudp_bufcreate (sock, UDPMSGSIZE, UDPMSGSIZE); + } +@@ -217,17 +216,14 @@ libc_hidden_nolink_sunrpc (svcudp_create, GLIBC_2_0) + #endif + + static enum xprt_stat +-svcudp_stat (xprt) +- SVCXPRT *xprt; ++svcudp_stat (SVCXPRT *xprt) + { + + return XPRT_IDLE; + } + + static bool_t +-svcudp_recv (xprt, msg) +- SVCXPRT *xprt; +- struct rpc_msg *msg; ++svcudp_recv (SVCXPRT *xprt, struct rpc_msg *msg) + { + struct svcudp_data *su = su_data (xprt); + XDR *xdrs = &(su->su_xdrs); +@@ -329,9 +325,7 @@ again: + } + + static bool_t +-svcudp_reply (xprt, msg) +- SVCXPRT *xprt; +- struct rpc_msg *msg; ++svcudp_reply (SVCXPRT *xprt, struct rpc_msg *msg) + { + struct svcudp_data *su = su_data (xprt); + XDR *xdrs = &(su->su_xdrs); +@@ -375,20 +369,14 @@ svcudp_reply (xprt, msg) + } + + static bool_t +-svcudp_getargs (xprt, xdr_args, args_ptr) +- SVCXPRT *xprt; +- xdrproc_t xdr_args; +- caddr_t args_ptr; ++svcudp_getargs (SVCXPRT *xprt, xdrproc_t xdr_args, caddr_t args_ptr) + { + + return (*xdr_args) (&(su_data (xprt)->su_xdrs), args_ptr); + } + + static bool_t +-svcudp_freeargs (xprt, xdr_args, args_ptr) +- SVCXPRT *xprt; +- xdrproc_t xdr_args; +- caddr_t args_ptr; ++svcudp_freeargs (SVCXPRT *xprt, xdrproc_t xdr_args, caddr_t args_ptr) + { + XDR *xdrs = &(su_data (xprt)->su_xdrs); + +@@ -397,8 +385,7 @@ svcudp_freeargs (xprt, xdr_args, args_ptr) + } + + static void +-svcudp_destroy (xprt) +- SVCXPRT *xprt; ++svcudp_destroy (SVCXPRT *xprt) + { + struct svcudp_data *su = su_data (xprt); + +diff --git a/sunrpc/xdr.c b/sunrpc/xdr.c +index d0afd34466f73def..9f1f7d417521044d 100644 +--- a/sunrpc/xdr.c ++++ b/sunrpc/xdr.c +@@ -589,11 +589,7 @@ libc_hidden_nolink_sunrpc (xdr_opaque, GLIBC_2_0) + * If *cpp is NULL maxsize bytes are allocated + */ + bool_t +-xdr_bytes (xdrs, cpp, sizep, maxsize) +- XDR *xdrs; +- char **cpp; +- u_int *sizep; +- u_int maxsize; ++xdr_bytes (XDR *xdrs, char **cpp, u_int *sizep, u_int maxsize) + { + char *sp = *cpp; /* sp is the actual string pointer */ + u_int nodesize; +@@ -655,9 +651,7 @@ libc_hidden_nolink_sunrpc (xdr_bytes, GLIBC_2_0) + * Implemented here due to commonality of the object. + */ + bool_t +-xdr_netobj (xdrs, np) +- XDR *xdrs; +- struct netobj *np; ++xdr_netobj (XDR *xdrs, struct netobj *np) + { + + return xdr_bytes (xdrs, &np->n_bytes, &np->n_len, MAX_NETOBJ_SZ); +@@ -732,10 +726,7 @@ libc_hidden_nolink_sunrpc (xdr_union, GLIBC_2_0) + * of the string as specified by a protocol. + */ + bool_t +-xdr_string (xdrs, cpp, maxsize) +- XDR *xdrs; +- char **cpp; +- u_int maxsize; ++xdr_string (XDR *xdrs, char **cpp, u_int maxsize) + { + char *sp = *cpp; /* sp is the actual string pointer */ + /* Initialize to silence the compiler. It is not really needed because SIZE +@@ -816,9 +807,7 @@ libc_hidden_nolink_sunrpc (xdr_string, GLIBC_2_0) + * routines like clnt_call + */ + bool_t +-xdr_wrapstring (xdrs, cpp) +- XDR *xdrs; +- char **cpp; ++xdr_wrapstring (XDR *xdrs, char **cpp) + { + if (xdr_string (xdrs, cpp, LASTUNSIGNED)) + { +diff --git a/sunrpc/xdr_float.c b/sunrpc/xdr_float.c +index 78e8f3bd2da567f2..4ce8ae7a9c314e97 100644 +--- a/sunrpc/xdr_float.c ++++ b/sunrpc/xdr_float.c +@@ -80,9 +80,7 @@ static struct sgl_limits { + #endif /* vax */ + + bool_t +-xdr_float(xdrs, fp) +- XDR *xdrs; +- float *fp; ++xdr_float (XDR *xdrs, float *fp) + { + #ifdef vax + struct ieee_single is; +@@ -201,9 +199,7 @@ static struct dbl_limits { + + + bool_t +-xdr_double(xdrs, dp) +- XDR *xdrs; +- double *dp; ++xdr_double (XDR *xdrs, double *dp) + { + #ifdef vax + struct ieee_double id; +diff --git a/sunrpc/xdr_mem.c b/sunrpc/xdr_mem.c +index ba7661aa549b7792..8b9858959476ad8b 100644 +--- a/sunrpc/xdr_mem.c ++++ b/sunrpc/xdr_mem.c +@@ -172,9 +172,7 @@ xdrmem_getpos (const XDR *xdrs) + * xdrs modified + */ + static bool_t +-xdrmem_setpos (xdrs, pos) +- XDR *xdrs; +- u_int pos; ++xdrmem_setpos (XDR *xdrs, u_int pos) + { + caddr_t newaddr = xdrs->x_base + pos; + caddr_t lastaddr = xdrs->x_private + xdrs->x_handy; +diff --git a/sunrpc/xdr_ref.c b/sunrpc/xdr_ref.c +index 8fb4584a75c4fd54..a7d9264ed6be6fe2 100644 +--- a/sunrpc/xdr_ref.c ++++ b/sunrpc/xdr_ref.c +@@ -113,11 +113,7 @@ libc_hidden_nolink_sunrpc (xdr_reference, GLIBC_2_0) + * + */ + bool_t +-xdr_pointer (xdrs, objpp, obj_size, xdr_obj) +- XDR *xdrs; +- char **objpp; +- u_int obj_size; +- xdrproc_t xdr_obj; ++xdr_pointer (XDR *xdrs, char **objpp, u_int obj_size, xdrproc_t xdr_obj) + { + + bool_t more_data; +diff --git a/sysvipc/ftok.c b/sysvipc/ftok.c +index bc9a44d631a51966..f93c97b9795a97f1 100644 +--- a/sysvipc/ftok.c ++++ b/sysvipc/ftok.c +@@ -20,9 +20,7 @@ + #include + + key_t +-ftok (pathname, proj_id) +- const char *pathname; +- int proj_id; ++ftok (const char *pathname, int proj_id) + { + struct stat64 st; + key_t key; +diff --git a/sysvipc/msgctl.c b/sysvipc/msgctl.c +index 16a4f9514016bb23..4905749f9cc2f48e 100644 +--- a/sysvipc/msgctl.c ++++ b/sysvipc/msgctl.c +@@ -23,10 +23,7 @@ + objects. */ + + int +-msgctl (msqid, cmd, buf) +- int msqid; +- int cmd; +- struct msqid_ds *buf; ++msgctl (int msqid, int cmd, struct msqid_ds *buf) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/msgget.c b/sysvipc/msgget.c +index 859c4459627d31d7..5dbb05f358e9689c 100644 +--- a/sysvipc/msgget.c ++++ b/sysvipc/msgget.c +@@ -23,9 +23,7 @@ + parameter describes how to proceed with clashing of key values. */ + + int +-msgget (key, msgflg) +- key_t key; +- int msgflg; ++msgget (key_t key, int msgflg) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/msgrcv.c b/sysvipc/msgrcv.c +index d49a6a764d3033fb..99f7cccab12de037 100644 +--- a/sysvipc/msgrcv.c ++++ b/sysvipc/msgrcv.c +@@ -26,12 +26,7 @@ + in buffer overflow or queue underflow. */ + + ssize_t +-msgrcv (msqid, msgp, msgsz, msgtyp, msgflg) +- int msqid; +- void *msgp; +- size_t msgsz; +- long msgtyp; +- int msgflg; ++msgrcv (int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/msgsnd.c b/sysvipc/msgsnd.c +index cf067fa2af8253c5..2c691a8f8dc011b7 100644 +--- a/sysvipc/msgsnd.c ++++ b/sysvipc/msgsnd.c +@@ -26,11 +26,7 @@ + when the limit of the message queue length is reached. */ + + int +-msgsnd (msqid, msgp, msgsz, msgflg) +- int msqid; +- const void *msgp; +- size_t msgsz; +- int msgflg; ++msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/semget.c b/sysvipc/semget.c +index dbac3a388aa864ec..4639b42915b4cd6d 100644 +--- a/sysvipc/semget.c ++++ b/sysvipc/semget.c +@@ -23,10 +23,7 @@ + KEY. */ + + int +-semget (key, nsems, semflg) +- key_t key; +- int nsems; +- int semflg; ++semget (key_t key, int nsems, int semflg) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/semop.c b/sysvipc/semop.c +index 298c8c0695356177..ef3657ec86fdbe0e 100644 +--- a/sysvipc/semop.c ++++ b/sysvipc/semop.c +@@ -22,10 +22,7 @@ + /* Perform user-defined atomical operation of array of semaphores. */ + + int +-semop (semid, sops, nsops) +- int semid; +- struct sembuf *sops; +- size_t nsops; ++semop (int semid, struct sembuf *sops, size_t nsops) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/shmat.c b/sysvipc/shmat.c +index bcd31765d1756256..c5816fbd997e6b7f 100644 +--- a/sysvipc/shmat.c ++++ b/sysvipc/shmat.c +@@ -24,10 +24,7 @@ + and where the segment is attached. */ + + void * +-shmat (shmid, shmaddr, shmflg) +- int shmid; +- const void *shmaddr; +- int shmflg; ++shmat (int shmid, const void *shmaddr, int shmflg) + { + __set_errno (ENOSYS); + return (void *) -1; +diff --git a/sysvipc/shmctl.c b/sysvipc/shmctl.c +index 9ffec7dc87fa1a48..b59318a4cffd0dd8 100644 +--- a/sysvipc/shmctl.c ++++ b/sysvipc/shmctl.c +@@ -22,10 +22,7 @@ + /* Provide operations to control over shared memory segments. */ + + int +-shmctl (shmid, cmd, buf) +- int shmid; +- int cmd; +- struct shmid_ds *buf; ++shmctl (int shmid, int cmd, struct shmid_ds *buf) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/shmdt.c b/sysvipc/shmdt.c +index 8a400460164cc300..a2af7f281a7f96d2 100644 +--- a/sysvipc/shmdt.c ++++ b/sysvipc/shmdt.c +@@ -23,8 +23,7 @@ + from the caller's data segment. */ + + int +-shmdt (shmaddr) +- const void *shmaddr; ++shmdt (const void *shmaddr) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysvipc/shmget.c b/sysvipc/shmget.c +index 650603b8f088521e..2b96e1855e3b85f1 100644 +--- a/sysvipc/shmget.c ++++ b/sysvipc/shmget.c +@@ -23,10 +23,7 @@ + which is associated with KEY. */ + + int +-shmget (key, size, shmflg) +- key_t key; +- size_t size; +- int shmflg; ++shmget (key_t key, size_t size, int shmflg) + { + __set_errno (ENOSYS); + return -1; +diff --git a/termios/cfmakeraw.c b/termios/cfmakeraw.c +index 41cb0992b3d65d71..5103a1a36981f48e 100644 +--- a/termios/cfmakeraw.c ++++ b/termios/cfmakeraw.c +@@ -19,8 +19,7 @@ + + /* Set *T to indicate raw mode. */ + void +-cfmakeraw (t) +- struct termios *t; ++cfmakeraw (struct termios *t) + { + t->c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON); + t->c_oflag &= ~OPOST; +diff --git a/termios/speed.c b/termios/speed.c +index a76ffcc965d78148..665a6caa3eb42f7b 100644 +--- a/termios/speed.c ++++ b/termios/speed.c +@@ -22,25 +22,21 @@ + + /* Return the output baud rate stored in *TERMIOS_P. */ + speed_t +-cfgetospeed (termios_p) +- const struct termios *termios_p; ++cfgetospeed (const struct termios *termios_p) + { + return termios_p->__ospeed; + } + + /* Return the input baud rate stored in *TERMIOS_P. */ + speed_t +-cfgetispeed (termios_p) +- const struct termios *termios_p; ++cfgetispeed (const struct termios *termios_p) + { + return termios_p->__ispeed; + } + + /* Set the output baud rate stored in *TERMIOS_P to SPEED. */ + int +-cfsetospeed (termios_p, speed) +- struct termios *termios_p; +- speed_t speed; ++cfsetospeed (struct termios *termios_p, speed_t speed) + { + if (termios_p == NULL) + { +@@ -55,9 +51,7 @@ libc_hidden_def (cfsetospeed) + + /* Set the input baud rate stored in *TERMIOS_P to SPEED. */ + int +-cfsetispeed (termios_p, speed) +- struct termios *termios_p; +- speed_t speed; ++cfsetispeed (struct termios *termios_p, speed_t speed) + { + if (termios_p == NULL) + { +diff --git a/termios/tcflow.c b/termios/tcflow.c +index 8b064ea3b28f52e9..88f1234118da5dbf 100644 +--- a/termios/tcflow.c ++++ b/termios/tcflow.c +@@ -20,9 +20,7 @@ + + /* Suspend or restart transmission on FD. */ + int +-tcflow (fd, action) +- int fd; +- int action; ++tcflow (int fd, int action) + { + if (fd < 0) + { +diff --git a/termios/tcflush.c b/termios/tcflush.c +index 5888411ac33c424b..7ac4f7c483d48fc6 100644 +--- a/termios/tcflush.c ++++ b/termios/tcflush.c +@@ -20,9 +20,7 @@ + + /* Flush pending data on FD. */ + int +-tcflush (fd, queue_selector) +- int fd; +- int queue_selector; ++tcflush (int fd, int queue_selector) + { + switch (queue_selector) + { +diff --git a/termios/tcgetattr.c b/termios/tcgetattr.c +index 1ec2aa949731e0d1..42b768520f863c55 100644 +--- a/termios/tcgetattr.c ++++ b/termios/tcgetattr.c +@@ -21,9 +21,7 @@ + + /* Put the state of FD into *TERMIOS_P. */ + int +-__tcgetattr (fd, termios_p) +- int fd; +- struct termios *termios_p; ++__tcgetattr (int fd, struct termios *termios_p) + { + if (fd < 0) + { +diff --git a/termios/tcgetpgrp.c b/termios/tcgetpgrp.c +index b013ec65d0fe1b2c..73fbd8fbc66b19b5 100644 +--- a/termios/tcgetpgrp.c ++++ b/termios/tcgetpgrp.c +@@ -21,8 +21,7 @@ + + /* Return the foreground process group ID of FD. */ + pid_t +-tcgetpgrp (fd) +- int fd; ++tcgetpgrp (int fd) + { + if (fd < 0) + { +diff --git a/termios/tcgetsid.c b/termios/tcgetsid.c +index aac3c89d57a84707..f57fe94ddf30c038 100644 +--- a/termios/tcgetsid.c ++++ b/termios/tcgetsid.c +@@ -23,8 +23,7 @@ + + /* Return the session ID of FD. */ + pid_t +-tcgetsid (fd) +- int fd; ++tcgetsid (int fd) + { + pid_t pgrp; + pid_t sid; +diff --git a/termios/tcsendbrk.c b/termios/tcsendbrk.c +index 5e6805df29aca6bf..d5fe774605c0f48c 100644 +--- a/termios/tcsendbrk.c ++++ b/termios/tcsendbrk.c +@@ -20,9 +20,7 @@ + + /* Send zero bits on FD. */ + int +-tcsendbreak (fd, duration) +- int fd; +- int duration; ++tcsendbreak (int fd, int duration) + { + if (fd < 0) + { +diff --git a/termios/tcsetpgrp.c b/termios/tcsetpgrp.c +index dea5e96aecd88f98..4dfdd35a7bdc39fb 100644 +--- a/termios/tcsetpgrp.c ++++ b/termios/tcsetpgrp.c +@@ -21,9 +21,7 @@ + + /* Set the foreground process group ID of FD set PGRP_ID. */ + int +-tcsetpgrp (fd, pgrp_id) +- int fd; +- pid_t pgrp_id; ++tcsetpgrp (int fd, pid_t pgrp_id) + { + if (fd < 0) + { +diff --git a/time/adjtime.c b/time/adjtime.c +index 1c005c977ca70452..a31144bb76a137f6 100644 +--- a/time/adjtime.c ++++ b/time/adjtime.c +@@ -23,9 +23,7 @@ + of time adjustment remaining to be done from the last `__adjtime' call. + This call is restricted to the super-user. */ + int +-__adjtime (delta, olddelta) +- const struct timeval *delta; +- struct timeval *olddelta; ++__adjtime (const struct timeval *delta, struct timeval *olddelta) + { + __set_errno (ENOSYS); + return -1; +diff --git a/time/dysize.c b/time/dysize.c +index eb04e3239b282897..8ea445725e6868f4 100644 +--- a/time/dysize.c ++++ b/time/dysize.c +@@ -18,8 +18,7 @@ + #include + + int +-dysize (year) +- int year; ++dysize (int year) + { + return __isleap (year) ? 366 : 365; + } +diff --git a/time/ftime.c b/time/ftime.c +index f9076c5a6caa6782..cb8b366dcf0f7342 100644 +--- a/time/ftime.c ++++ b/time/ftime.c +@@ -20,8 +20,7 @@ + #include + + int +-ftime (timebuf) +- struct timeb *timebuf; ++ftime (struct timeb *timebuf) + { + int save = errno; + struct tm tp; +diff --git a/time/getitimer.c b/time/getitimer.c +index fc0ebf8bfa99e56a..43db5e4ffea4e17b 100644 +--- a/time/getitimer.c ++++ b/time/getitimer.c +@@ -22,9 +22,7 @@ + /* Set *VALUE to the current setting of timer WHICH. + Return 0 on success, -1 on errors. */ + int +-__getitimer (which, value) +- enum __itimer_which which; +- struct itimerval *value; ++__getitimer (enum __itimer_which which, struct itimerval *value) + { + if (value == NULL) + { +diff --git a/time/gettimeofday.c b/time/gettimeofday.c +index 4528a6a289bdbd83..b7f779cf2c9cc0f8 100644 +--- a/time/gettimeofday.c ++++ b/time/gettimeofday.c +@@ -22,9 +22,7 @@ + putting it into *TV and *TZ. If TZ is NULL, *TZ is not filled. + Returns 0 on success, -1 on errors. */ + int +-__gettimeofday (tv, tz) +- struct timeval *tv; +- struct timezone *tz; ++__gettimeofday (struct timeval *tv, struct timezone *tz) + { + __set_errno (ENOSYS); + return -1; +diff --git a/time/gmtime.c b/time/gmtime.c +index 6baa71af21517382..8f04a3c9e1d4ec9f 100644 +--- a/time/gmtime.c ++++ b/time/gmtime.c +@@ -21,9 +21,7 @@ + /* Return the `struct tm' representation of *T in UTC, + using *TP to store the result. */ + struct tm * +-__gmtime_r (t, tp) +- const time_t *t; +- struct tm *tp; ++__gmtime_r (const time_t *t, struct tm *tp) + { + return __tz_convert (t, 0, tp); + } +@@ -33,8 +31,7 @@ weak_alias (__gmtime_r, gmtime_r) + + /* Return the `struct tm' representation of *T in UTC. */ + struct tm * +-gmtime (t) +- const time_t *t; ++gmtime (const time_t *t) + { + return __tz_convert (t, 0, &_tmbuf); + } +diff --git a/time/localtime.c b/time/localtime.c +index e0ba956756075293..04596812d09f71c3 100644 +--- a/time/localtime.c ++++ b/time/localtime.c +@@ -25,9 +25,7 @@ struct tm _tmbuf; + /* Return the `struct tm' representation of *T in local time, + using *TP to store the result. */ + struct tm * +-__localtime_r (t, tp) +- const time_t *t; +- struct tm *tp; ++__localtime_r (const time_t *t, struct tm *tp) + { + return __tz_convert (t, 1, tp); + } +@@ -36,8 +34,7 @@ weak_alias (__localtime_r, localtime_r) + + /* Return the `struct tm' representation of *T in local time. */ + struct tm * +-localtime (t) +- const time_t *t; ++localtime (const time_t *t) + { + return __tz_convert (t, 1, &_tmbuf); + } +diff --git a/time/offtime.c b/time/offtime.c +index 56c49f02016ff532..9f1f405bd39cb9b4 100644 +--- a/time/offtime.c ++++ b/time/offtime.c +@@ -26,10 +26,7 @@ + and store year, yday, mon, mday, wday, hour, min, sec into *TP. + Return nonzero if successful. */ + int +-__offtime (t, offset, tp) +- const time_t *t; +- long int offset; +- struct tm *tp; ++__offtime (const time_t *t, long int offset, struct tm *tp) + { + time_t days, rem, y; + const unsigned short int *ip; +diff --git a/time/settimeofday.c b/time/settimeofday.c +index c1ceec0b611dea48..5eaba2bd86711264 100644 +--- a/time/settimeofday.c ++++ b/time/settimeofday.c +@@ -21,9 +21,7 @@ + /* Set the current time of day and timezone information. + This call is restricted to the super-user. */ + int +-__settimeofday (tv, tz) +- const struct timeval *tv; +- const struct timezone *tz; ++__settimeofday (const struct timeval *tv, const struct timezone *tz) + { + __set_errno (ENOSYS); + return -1; +diff --git a/time/stime.c b/time/stime.c +index 1ea1c17da53fac9b..129bfa6001a98937 100644 +--- a/time/stime.c ++++ b/time/stime.c +@@ -22,8 +22,7 @@ + /* Set the system clock to *WHEN. */ + + int +-stime (when) +- const time_t *when; ++stime (const time_t *when) + { + if (when == NULL) + { +diff --git a/time/strftime_l.c b/time/strftime_l.c +index 21303c9735baeb5f..873605720b837b15 100644 +--- a/time/strftime_l.c ++++ b/time/strftime_l.c +@@ -366,9 +366,7 @@ memcpy_uppcase (dest, src, len LOCALE_PARAM) + # define tm_diff ftime_tm_diff + static int tm_diff (const struct tm *, const struct tm *) __THROW; + static int +-tm_diff (a, b) +- const struct tm *a; +- const struct tm *b; ++tm_diff (const struct tm *a, const struct tm *b) + { + /* Compute intervening leap days correctly even if year is negative. + Take care to avoid int overflow in leap day calculations, +@@ -403,9 +401,7 @@ static int iso_week_days (int, int) __THROW; + __inline__ + #endif + static int +-iso_week_days (yday, wday) +- int yday; +- int wday; ++iso_week_days (int yday, int wday) + { + /* Add enough to the first operand of % to make it nonnegative. */ + int big_enough_multiple_of_7 = (-YDAY_MINIMUM / 7 + 2) * 7; +diff --git a/time/strptime.c b/time/strptime.c +index a8ead3fdb18b346a..ef008074e03fee0a 100644 +--- a/time/strptime.c ++++ b/time/strptime.c +@@ -28,10 +28,7 @@ + + + char * +-strptime (buf, format, tm) +- const char *buf; +- const char *format; +- struct tm *tm; ++strptime (const char *buf, const char *format, struct tm *tm) + { + return __strptime_internal (buf, format, tm, NULL, _NL_CURRENT_LOCALE); + } +diff --git a/time/time.c b/time/time.c +index 15dbb69212ac3cba..be488a191f8b3453 100644 +--- a/time/time.c ++++ b/time/time.c +@@ -20,8 +20,7 @@ + + /* Return the time now, and store it in *TIMER if not NULL. */ + time_t +-time (timer) +- time_t *timer; ++time (time_t *timer) + { + __set_errno (ENOSYS); + +diff --git a/time/timespec_get.c b/time/timespec_get.c +index 0928515145e4a866..af7293050eb6f9d7 100644 +--- a/time/timespec_get.c ++++ b/time/timespec_get.c +@@ -20,9 +20,7 @@ + + /* Set TS to calendar time based in time base BASE. */ + int +-timespec_get (ts, base) +- struct timespec *ts; +- int base; ++timespec_get (struct timespec *ts, int base) + { + switch (base) + { +diff --git a/wcsmbs/btowc.c b/wcsmbs/btowc.c +index d71b1afc4de10553..3925bd27b8f2f1ce 100644 +--- a/wcsmbs/btowc.c ++++ b/wcsmbs/btowc.c +@@ -29,8 +29,7 @@ + + + wint_t +-__btowc (c) +- int c; ++__btowc (int c) + { + const struct gconv_fcts *fcts; + +diff --git a/wcsmbs/mbrlen.c b/wcsmbs/mbrlen.c +index 57ab3e4d7630de7a..4e6b6de24fad6805 100644 +--- a/wcsmbs/mbrlen.c ++++ b/wcsmbs/mbrlen.c +@@ -24,10 +24,7 @@ static mbstate_t internal; + + + size_t +-__mbrlen (s, n, ps) +- const char *s; +- size_t n; +- mbstate_t *ps; ++__mbrlen (const char *s, size_t n, mbstate_t *ps) + { + return __mbrtowc (NULL, s, n, ps ?: &internal); + } +diff --git a/wcsmbs/mbsinit.c b/wcsmbs/mbsinit.c +index 1d3d7430e95bcd73..992d3ef5a4f9d72d 100644 +--- a/wcsmbs/mbsinit.c ++++ b/wcsmbs/mbsinit.c +@@ -31,8 +31,7 @@ + value collected so far. Especially, we don't have different shift + states. */ + int +-__mbsinit (ps) +- const mbstate_t *ps; ++__mbsinit (const mbstate_t *ps) + { + return ps == NULL || ps->__count == 0; + } +diff --git a/wcsmbs/mbsrtowcs.c b/wcsmbs/mbsrtowcs.c +index 6a90dff3b95711ce..63327420e72b92b9 100644 +--- a/wcsmbs/mbsrtowcs.c ++++ b/wcsmbs/mbsrtowcs.c +@@ -24,11 +24,7 @@ + static mbstate_t state; + + size_t +-__mbsrtowcs (dst, src, len, ps) +- wchar_t *dst; +- const char **src; +- size_t len; +- mbstate_t *ps; ++__mbsrtowcs (wchar_t *dst, const char **src, size_t len, mbstate_t *ps) + { + return __mbsrtowcs_l (dst, src, len, ps ?: &state, _NL_CURRENT_LOCALE); + } +diff --git a/wcsmbs/wcpcpy.c b/wcsmbs/wcpcpy.c +index f67ba6286e4e7058..86ed9962ed937031 100644 +--- a/wcsmbs/wcpcpy.c ++++ b/wcsmbs/wcpcpy.c +@@ -27,9 +27,7 @@ + /* Copy SRC to DEST, returning the address of the terminating L'\0' in + DEST. */ + wchar_t * +-__wcpcpy (dest, src) +- wchar_t *dest; +- const wchar_t *src; ++__wcpcpy (wchar_t *dest, const wchar_t *src) + { + wchar_t *wcp = (wchar_t *) dest - 1; + wint_t c; +diff --git a/wcsmbs/wcpncpy.c b/wcsmbs/wcpncpy.c +index 6337a878ef0f4516..63e6c529d04ad4ed 100644 +--- a/wcsmbs/wcpncpy.c ++++ b/wcsmbs/wcpncpy.c +@@ -25,10 +25,7 @@ + /* Copy no more than N wide-characters of SRC to DEST, returning the + address of the last character written into DEST. */ + wchar_t * +-__wcpncpy (dest, src, n) +- wchar_t *dest; +- const wchar_t *src; +- size_t n; ++__wcpncpy (wchar_t *dest, const wchar_t *src, size_t n) + { + wint_t c; + wchar_t *const s = dest; +diff --git a/wcsmbs/wcscat.c b/wcsmbs/wcscat.c +index 89366e1437465988..856b3ea708f7803a 100644 +--- a/wcsmbs/wcscat.c ++++ b/wcsmbs/wcscat.c +@@ -24,9 +24,7 @@ + + /* Append SRC on the end of DEST. */ + wchar_t * +-__wcscat (dest, src) +- wchar_t *dest; +- const wchar_t *src; ++__wcscat (wchar_t *dest, const wchar_t *src) + { + wchar_t *s1 = dest; + const wchar_t *s2 = src; +diff --git a/wcsmbs/wcschrnul.c b/wcsmbs/wcschrnul.c +index 48eaf7b011e3a690..5ceed6e2434b42ab 100644 +--- a/wcsmbs/wcschrnul.c ++++ b/wcsmbs/wcschrnul.c +@@ -23,9 +23,7 @@ + + /* Find the first occurrence of WC in WCS. */ + wchar_t * +-__wcschrnul (wcs, wc) +- const wchar_t *wcs; +- const wchar_t wc; ++__wcschrnul (const wchar_t *wcs, const wchar_t wc) + { + while (*wcs != L'\0') + if (*wcs == wc) +diff --git a/wcsmbs/wcscmp.c b/wcsmbs/wcscmp.c +index 2fd8cc0dffe252e0..bc35fea8f7d6ede8 100644 +--- a/wcsmbs/wcscmp.c ++++ b/wcsmbs/wcscmp.c +@@ -26,9 +26,7 @@ + greater than zero if S1 is lexicographically less than, + equal to or greater than S2. */ + int +-WCSCMP (s1, s2) +- const wchar_t *s1; +- const wchar_t *s2; ++WCSCMP (const wchar_t *s1, const wchar_t *s2) + { + wchar_t c1, c2; + +diff --git a/wcsmbs/wcscpy.c b/wcsmbs/wcscpy.c +index cec1249051cf4151..23ec49686921575a 100644 +--- a/wcsmbs/wcscpy.c ++++ b/wcsmbs/wcscpy.c +@@ -25,9 +25,7 @@ + + /* Copy SRC to DEST. */ + wchar_t * +-WCSCPY (dest, src) +- wchar_t *dest; +- const wchar_t *src; ++WCSCPY (wchar_t *dest, const wchar_t *src) + { + wint_t c; + wchar_t *wcp; +diff --git a/wcsmbs/wcscspn.c b/wcsmbs/wcscspn.c +index cf4205fd5e56baee..026d0cb1e19265f0 100644 +--- a/wcsmbs/wcscspn.c ++++ b/wcsmbs/wcscspn.c +@@ -25,9 +25,7 @@ + /* Return the length of the maximum initial segment + of WCS which contains only wide-characters not in REJECT. */ + size_t +-wcscspn (wcs, reject) +- const wchar_t *wcs; +- const wchar_t *reject; ++wcscspn (const wchar_t *wcs, const wchar_t *reject) + { + size_t count = 0; + +diff --git a/wcsmbs/wcsdup.c b/wcsmbs/wcsdup.c +index af1c28cd94f03d73..325693a06d32a4df 100644 +--- a/wcsmbs/wcsdup.c ++++ b/wcsmbs/wcsdup.c +@@ -23,8 +23,7 @@ + + /* Duplicate S, returning an identical malloc'd string. */ + wchar_t * +-wcsdup (s) +- const wchar_t *s; ++wcsdup (const wchar_t *s) + { + size_t len = (__wcslen (s) + 1) * sizeof (wchar_t); + void *new = malloc (len); +diff --git a/wcsmbs/wcslen.c b/wcsmbs/wcslen.c +index d14ab04b416538f2..95785429b8900a06 100644 +--- a/wcsmbs/wcslen.c ++++ b/wcsmbs/wcslen.c +@@ -24,8 +24,7 @@ + #endif + + size_t +-__wcslen (s) +- const wchar_t *s; ++__wcslen (const wchar_t *s) + { + size_t len = 0; + +diff --git a/wcsmbs/wcsncat.c b/wcsmbs/wcsncat.c +index 21a3a1e0a997a684..d96b5376eea20850 100644 +--- a/wcsmbs/wcsncat.c ++++ b/wcsmbs/wcsncat.c +@@ -24,10 +24,7 @@ + + /* Append no more than N wide-character of SRC onto DEST. */ + wchar_t * +-WCSNCAT (dest, src, n) +- wchar_t *dest; +- const wchar_t *src; +- size_t n; ++WCSNCAT (wchar_t *dest, const wchar_t *src, size_t n) + { + wchar_t c; + wchar_t * const s = dest; +diff --git a/wcsmbs/wcsncmp.c b/wcsmbs/wcsncmp.c +index 1522b6f9c0ff2198..c4026a02be0b2a33 100644 +--- a/wcsmbs/wcsncmp.c ++++ b/wcsmbs/wcsncmp.c +@@ -27,10 +27,7 @@ + if S1 is lexicographically less than, equal to or + greater than S2. */ + int +-WCSNCMP (s1, s2, n) +- const wchar_t *s1; +- const wchar_t *s2; +- size_t n; ++WCSNCMP (const wchar_t *s1, const wchar_t *s2, size_t n) + { + wchar_t c1 = L'\0'; + wchar_t c2 = L'\0'; +diff --git a/wcsmbs/wcsncpy.c b/wcsmbs/wcsncpy.c +index 2e3cebedf5a876d0..f352d3df51f866fe 100644 +--- a/wcsmbs/wcsncpy.c ++++ b/wcsmbs/wcsncpy.c +@@ -24,10 +24,7 @@ + + /* Copy no more than N wide-characters of SRC to DEST. */ + wchar_t * +-__wcsncpy (dest, src, n) +- wchar_t *dest; +- const wchar_t *src; +- size_t n; ++__wcsncpy (wchar_t *dest, const wchar_t *src, size_t n) + { + wint_t c; + wchar_t *const s = dest; +diff --git a/wcsmbs/wcsnlen.c b/wcsmbs/wcsnlen.c +index e80392055cf8b835..00ac2a399f0b3432 100644 +--- a/wcsmbs/wcsnlen.c ++++ b/wcsmbs/wcsnlen.c +@@ -24,9 +24,7 @@ + + /* Return length of string S at most maxlen. */ + size_t +-__wcsnlen (s, maxlen) +- const wchar_t *s; +- size_t maxlen; ++__wcsnlen (const wchar_t *s, size_t maxlen) + { + size_t len = 0; + +diff --git a/wcsmbs/wcspbrk.c b/wcsmbs/wcspbrk.c +index ee880709d826fde8..fc8259c14c7f2a6f 100644 +--- a/wcsmbs/wcspbrk.c ++++ b/wcsmbs/wcspbrk.c +@@ -24,9 +24,7 @@ + + /* Find the first occurrence in WCS of any wide-character in ACCEPT. */ + wchar_t * +-wcspbrk (wcs, accept) +- const wchar_t *wcs; +- const wchar_t *accept; ++wcspbrk (const wchar_t *wcs, const wchar_t *accept) + { + while (*wcs != L'\0') + if (wcschr (accept, *wcs) == NULL) +diff --git a/wcsmbs/wcsrchr.c b/wcsmbs/wcsrchr.c +index b1771a7e8a7ee8a9..916333e204219b85 100644 +--- a/wcsmbs/wcsrchr.c ++++ b/wcsmbs/wcsrchr.c +@@ -24,9 +24,7 @@ + + /* Find the last occurrence of WC in WCS. */ + wchar_t * +-WCSRCHR (wcs, wc) +- const wchar_t *wcs; +- const wchar_t wc; ++WCSRCHR (const wchar_t *wcs, const wchar_t wc) + { + const wchar_t *retval = NULL; + +diff --git a/wcsmbs/wcsspn.c b/wcsmbs/wcsspn.c +index 4c2db0ffc360e906..3f68a64b5ae852b4 100644 +--- a/wcsmbs/wcsspn.c ++++ b/wcsmbs/wcsspn.c +@@ -25,9 +25,7 @@ + /* Return the length of the maximum initial segment + of WCS which contains only wide-characters in ACCEPT. */ + size_t +-wcsspn (wcs, accept) +- const wchar_t *wcs; +- const wchar_t *accept; ++wcsspn (const wchar_t *wcs, const wchar_t *accept) + { + const wchar_t *p; + const wchar_t *a; +diff --git a/wcsmbs/wcsstr.c b/wcsmbs/wcsstr.c +index d4a42df01ce1214c..14d8505b635cb686 100644 +--- a/wcsmbs/wcsstr.c ++++ b/wcsmbs/wcsstr.c +@@ -29,9 +29,7 @@ + #include + + wchar_t * +-wcsstr (haystack, needle) +- const wchar_t *haystack; +- const wchar_t *needle; ++wcsstr (const wchar_t *haystack, const wchar_t *needle) + { + wchar_t b, c; + +diff --git a/wcsmbs/wcstok.c b/wcsmbs/wcstok.c +index 2977981fe9f6f2cd..ecab52fd4e84dbad 100644 +--- a/wcsmbs/wcstok.c ++++ b/wcsmbs/wcstok.c +@@ -23,10 +23,7 @@ + /* Parse WCS into tokens separated by characters in DELIM. If WCS is + NULL, the last string wcstok() was called with is used. */ + wchar_t * +-wcstok (wcs, delim, save_ptr) +- wchar_t *wcs; +- const wchar_t *delim; +- wchar_t **save_ptr; ++wcstok (wchar_t *wcs, const wchar_t *delim, wchar_t **save_ptr) + { + wchar_t *result; + +diff --git a/wcsmbs/wctob.c b/wcsmbs/wctob.c +index 72f7373be10ae720..91a017e87b064fb4 100644 +--- a/wcsmbs/wctob.c ++++ b/wcsmbs/wctob.c +@@ -27,8 +27,7 @@ + + + int +-wctob (c) +- wint_t c; ++wctob (wint_t c) + { + unsigned char buf[MB_LEN_MAX]; + struct __gconv_step_data data; +diff --git a/wcsmbs/wmemchr.c b/wcsmbs/wmemchr.c +index b8726838a2951d6e..4b7d96bef57c089e 100644 +--- a/wcsmbs/wmemchr.c ++++ b/wcsmbs/wmemchr.c +@@ -23,10 +23,7 @@ + #endif + + wchar_t * +-wmemchr (s, c, n) +- const wchar_t *s; +- wchar_t c; +- size_t n; ++wmemchr (const wchar_t *s, wchar_t c, size_t n) + { + /* For performance reasons unfold the loop four times. */ + while (n >= 4) +diff --git a/wcsmbs/wmemcmp.c b/wcsmbs/wmemcmp.c +index bb0a900dc8a5ec49..94901f12b059ee0e 100644 +--- a/wcsmbs/wmemcmp.c ++++ b/wcsmbs/wmemcmp.c +@@ -23,10 +23,7 @@ + #endif + + int +-WMEMCMP (s1, s2, n) +- const wchar_t *s1; +- const wchar_t *s2; +- size_t n; ++WMEMCMP (const wchar_t *s1, const wchar_t *s2, size_t n) + { + wchar_t c1; + wchar_t c2; +diff --git a/wcsmbs/wmemcpy.c b/wcsmbs/wmemcpy.c +index 51bfab3523e81314..5e4d25cba92caa1b 100644 +--- a/wcsmbs/wmemcpy.c ++++ b/wcsmbs/wmemcpy.c +@@ -21,10 +21,7 @@ + + + wchar_t * +-__wmemcpy (s1, s2, n) +- wchar_t *s1; +- const wchar_t *s2; +- size_t n; ++__wmemcpy (wchar_t *s1, const wchar_t *s2, size_t n) + { + return (wchar_t *) memcpy ((char *) s1, (char *) s2, n * sizeof (wchar_t)); + } +diff --git a/wcsmbs/wmemmove.c b/wcsmbs/wmemmove.c +index a3f7fe7cbf1ad3e9..e46d4b3c510b148e 100644 +--- a/wcsmbs/wmemmove.c ++++ b/wcsmbs/wmemmove.c +@@ -21,10 +21,7 @@ + + + wchar_t * +-__wmemmove (s1, s2, n) +- wchar_t *s1; +- const wchar_t *s2; +- size_t n; ++__wmemmove (wchar_t *s1, const wchar_t *s2, size_t n) + { + return (wchar_t *) memmove ((char *) s1, (char *) s2, n * sizeof (wchar_t)); + } +diff --git a/wcsmbs/wmempcpy.c b/wcsmbs/wmempcpy.c +index 32ccef2c46e66841..023c7a2c6ad9ba6d 100644 +--- a/wcsmbs/wmempcpy.c ++++ b/wcsmbs/wmempcpy.c +@@ -21,10 +21,7 @@ + + + wchar_t * +-__wmempcpy (s1, s2, n) +- wchar_t *s1; +- const wchar_t *s2; +- size_t n; ++__wmempcpy (wchar_t *s1, const wchar_t *s2, size_t n) + { + return (wchar_t *) __mempcpy ((char *) s1, (char *) s2, + n * sizeof (wchar_t)); +diff --git a/wcsmbs/wmemset.c b/wcsmbs/wmemset.c +index afc26c7c48f34f3d..42dbd3ba1cc43163 100644 +--- a/wcsmbs/wmemset.c ++++ b/wcsmbs/wmemset.c +@@ -23,10 +23,7 @@ + #endif + + wchar_t * +-wmemset (s, c, n) +- wchar_t *s; +- wchar_t c; +- size_t n; ++wmemset (wchar_t *s, wchar_t c, size_t n) + { + wchar_t *wp = s; + +diff --git a/wctype/wcfuncs.c b/wctype/wcfuncs.c +index a6101066506ee952..1f854c353e19898c 100644 +--- a/wctype/wcfuncs.c ++++ b/wctype/wcfuncs.c +@@ -69,8 +69,7 @@ libc_hidden_weak (iswxdigit) + + #undef towlower + wint_t +-towlower (wc) +- wint_t wc; ++towlower (wint_t wc) + { + size_t i = _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MAP_OFFSET) + __TOW_tolower; + const char *desc = _NL_CURRENT (LC_CTYPE, i); +@@ -80,8 +79,7 @@ libc_hidden_def (towlower) + + #undef towupper + wint_t +-towupper (wc) +- wint_t wc; ++towupper (wint_t wc) + { + size_t i = _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MAP_OFFSET) + __TOW_toupper; + const char *desc = _NL_CURRENT (LC_CTYPE, i); diff --git a/SOURCES/glibc-rh1505492-prototypes-12.patch b/SOURCES/glibc-rh1505492-prototypes-12.patch new file mode 100644 index 0000000..76ac99e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-12.patch @@ -0,0 +1,3646 @@ +commit bd2260a2069993cdb14cffcbb2b0dc04b9888aee +Author: Joseph Myers +Date: Mon Oct 19 12:04:33 2015 +0000 + + Convert 231 sysdeps function definitions to prototype style. + + This mostly automatically-generated patch converts 231 sysdeps + function definitions in glibc from old-style K&R to prototype-style. + + For __aio_sigqueue and __gai_sigqueue I had to add internal_function + to the definitions as noted by Florian in + to keep + the functions compiling on x86 after conversion to prototype + definitions. Otherwise, the patch is automatically generated with all + the same exclusions and caveats as in + except + that it's a patch for sysdeps files. + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). Also tested for arm, + mips64 and powerpc32 that installed stripped shared libraries are + unchanged by the patch. + + * sysdeps/arm/backtrace.c (__backtrace): Convert to + prototype-style function definition. + * sysdeps/i386/backtrace.c (__backtrace): Likewise. + * sysdeps/i386/ffs.c (__ffs): Likewise. + * sysdeps/i386/i686/ffs.c (__ffs): Likewise. + * sysdeps/ia64/nptl/pthread_spin_lock.c (pthread_spin_lock): + Likewise. + * sysdeps/ia64/nptl/pthread_spin_trylock.c (pthread_spin_trylock): + Likewise. + * sysdeps/ieee754/ldbl-128/e_log2l.c (__ieee754_log2l): Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_log2l.c (__ieee754_log2l): + Likewise. + * sysdeps/m68k/ffs.c (__ffs): Likewise. + * sysdeps/m68k/m680x0/fpu/e_acos.c (FUNC): Likewise. + * sysdeps/m68k/m680x0/fpu/e_fmod.c (FUNC): Likewise. + * sysdeps/mach/adjtime.c (__adjtime): Likewise. + * sysdeps/mach/gettimeofday.c (__gettimeofday): Likewise. + * sysdeps/mach/hurd/_exit.c (_exit): Likewise. + * sysdeps/mach/hurd/access.c (__access): Likewise. + * sysdeps/mach/hurd/adjtime.c (__adjtime): Likewise. + * sysdeps/mach/hurd/chdir.c (__chdir): Likewise. + * sysdeps/mach/hurd/chmod.c (__chmod): Likewise. + * sysdeps/mach/hurd/chown.c (__chown): Likewise. + * sysdeps/mach/hurd/cthreads.c (cthread_keycreate): Likewise. + (cthread_getspecific): Likewise. + (cthread_setspecific): Likewise. + (__libc_getspecific): Likewise. + * sysdeps/mach/hurd/euidaccess.c (__euidaccess): Likewise. + * sysdeps/mach/hurd/faccessat.c (faccessat): Likewise. + * sysdeps/mach/hurd/fchdir.c (__fchdir): Likewise. + * sysdeps/mach/hurd/fchmod.c (__fchmod): Likewise. + * sysdeps/mach/hurd/fchmodat.c (fchmodat): Likewise. + * sysdeps/mach/hurd/fchown.c (__fchown): Likewise. + * sysdeps/mach/hurd/fchownat.c (fchownat): Likewise. + * sysdeps/mach/hurd/flock.c (__flock): Likewise. + * sysdeps/mach/hurd/fsync.c (fsync): Likewise. + * sysdeps/mach/hurd/ftruncate.c (__ftruncate): Likewise. + * sysdeps/mach/hurd/getgroups.c (__getgroups): Likewise. + * sysdeps/mach/hurd/gethostname.c (__gethostname): Likewise. + * sysdeps/mach/hurd/getitimer.c (__getitimer): Likewise. + * sysdeps/mach/hurd/getlogin_r.c (__getlogin_r): Likewise. + * sysdeps/mach/hurd/getpgid.c (__getpgid): Likewise. + * sysdeps/mach/hurd/getrusage.c (__getrusage): Likewise. + * sysdeps/mach/hurd/getsockname.c (__getsockname): Likewise. + * sysdeps/mach/hurd/group_member.c (__group_member): Likewise. + * sysdeps/mach/hurd/isatty.c (__isatty): Likewise. + * sysdeps/mach/hurd/lchown.c (__lchown): Likewise. + * sysdeps/mach/hurd/link.c (__link): Likewise. + * sysdeps/mach/hurd/linkat.c (linkat): Likewise. + * sysdeps/mach/hurd/listen.c (__listen): Likewise. + * sysdeps/mach/hurd/mkdir.c (__mkdir): Likewise. + * sysdeps/mach/hurd/mkdirat.c (mkdirat): Likewise. + * sysdeps/mach/hurd/openat.c (__openat): Likewise. + * sysdeps/mach/hurd/poll.c (__poll): Likewise. + * sysdeps/mach/hurd/readlink.c (__readlink): Likewise. + * sysdeps/mach/hurd/readlinkat.c (readlinkat): Likewise. + * sysdeps/mach/hurd/recv.c (__recv): Likewise. + * sysdeps/mach/hurd/rename.c (rename): Likewise. + * sysdeps/mach/hurd/renameat.c (renameat): Likewise. + * sysdeps/mach/hurd/revoke.c (revoke): Likewise. + * sysdeps/mach/hurd/rewinddir.c (__rewinddir): Likewise. + * sysdeps/mach/hurd/rmdir.c (__rmdir): Likewise. + * sysdeps/mach/hurd/seekdir.c (seekdir): Likewise. + * sysdeps/mach/hurd/send.c (__send): Likewise. + * sysdeps/mach/hurd/setdomain.c (setdomainname): Likewise. + * sysdeps/mach/hurd/setegid.c (setegid): Likewise. + * sysdeps/mach/hurd/seteuid.c (seteuid): Likewise. + * sysdeps/mach/hurd/setgid.c (__setgid): Likewise. + * sysdeps/mach/hurd/setgroups.c (setgroups): Likewise. + * sysdeps/mach/hurd/sethostid.c (sethostid): Likewise. + * sysdeps/mach/hurd/sethostname.c (sethostname): Likewise. + * sysdeps/mach/hurd/setlogin.c (setlogin): Likewise. + * sysdeps/mach/hurd/setpgid.c (__setpgid): Likewise. + * sysdeps/mach/hurd/setregid.c (__setregid): Likewise. + * sysdeps/mach/hurd/setreuid.c (__setreuid): Likewise. + * sysdeps/mach/hurd/settimeofday.c (__settimeofday): Likewise. + * sysdeps/mach/hurd/setuid.c (__setuid): Likewise. + * sysdeps/mach/hurd/shutdown.c (shutdown): Likewise. + * sysdeps/mach/hurd/sigaction.c (__sigaction): Likewise. + * sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Likewise. + * sysdeps/mach/hurd/sigpending.c (sigpending): Likewise. + * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Likewise. + * sysdeps/mach/hurd/sigsuspend.c (__sigsuspend): Likewise. + * sysdeps/mach/hurd/socket.c (__socket): Likewise. + * sysdeps/mach/hurd/symlink.c (__symlink): Likewise. + * sysdeps/mach/hurd/symlinkat.c (symlinkat): Likewise. + * sysdeps/mach/hurd/telldir.c (telldir): Likewise. + * sysdeps/mach/hurd/truncate.c (__truncate): Likewise. + * sysdeps/mach/hurd/umask.c (__umask): Likewise. + * sysdeps/mach/hurd/unlink.c (__unlink): Likewise. + * sysdeps/mach/hurd/unlinkat.c (unlinkat): Likewise. + * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise. + * sysdeps/posix/alarm.c (alarm): Likewise. + * sysdeps/posix/cuserid.c (cuserid): Likewise. + * sysdeps/posix/dirfd.c (dirfd): Likewise. + * sysdeps/posix/dup.c (__dup): Likewise. + * sysdeps/posix/dup2.c (__dup2): Likewise. + * sysdeps/posix/euidaccess.c (euidaccess): Likewise. + (main): Likewise. + * sysdeps/posix/flock.c (__flock): Likewise. + * sysdeps/posix/fpathconf.c (__fpathconf): Likewise. + * sysdeps/posix/getcwd.c (__getcwd): Likewise. + * sysdeps/posix/gethostname.c (__gethostname): Likewise. + * sysdeps/posix/gettimeofday.c (__gettimeofday): Likewise. + * sysdeps/posix/isatty.c (__isatty): Likewise. + * sysdeps/posix/killpg.c (killpg): Likewise. + * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise. + * sysdeps/posix/mkfifoat.c (mkfifoat): Likewise. + * sysdeps/posix/raise.c (raise): Likewise. + * sysdeps/posix/remove.c (remove): Likewise. + * sysdeps/posix/rename.c (rename): Likewise. + * sysdeps/posix/rewinddir.c (__rewinddir): Likewise. + * sysdeps/posix/seekdir.c (seekdir): Likewise. + * sysdeps/posix/sigblock.c (__sigblock): Likewise. + * sysdeps/posix/sigignore.c (sigignore): Likewise. + * sysdeps/posix/sigintr.c (siginterrupt): Likewise. + * sysdeps/posix/signal.c (__bsd_signal): Likewise. + * sysdeps/posix/sigset.c (sigset): Likewise. + * sysdeps/posix/sigsuspend.c (__sigsuspend): Likewise. + * sysdeps/posix/sysconf.c (__sysconf): Likewise. + * sysdeps/posix/sysv_signal.c (__sysv_signal): Likewise. + * sysdeps/posix/time.c (time): Likewise. + * sysdeps/posix/ttyname.c (getttyname): Likewise. + (ttyname): Likewise. + * sysdeps/posix/ttyname_r.c (__ttyname_r): Likewise. + * sysdeps/posix/utime.c (utime): Likewise. + * sysdeps/powerpc/fpu/s_isnan.c (__isnan): Likewise. + * sysdeps/powerpc/nptl/pthread_spin_lock.c (pthread_spin_lock): + Likewise. + * sysdeps/powerpc/nptl/pthread_spin_trylock.c + (pthread_spin_trylock): Likewise. + * sysdeps/pthread/aio_error.c (aio_error): Likewise. + * sysdeps/pthread/aio_read.c (aio_read): Likewise. + * sysdeps/pthread/aio_read64.c (aio_read64): Likewise. + * sysdeps/pthread/aio_write.c (aio_write): Likewise. + * sysdeps/pthread/aio_write64.c (aio_write64): Likewise. + * sysdeps/pthread/flockfile.c (__flockfile): Likewise. + * sysdeps/pthread/ftrylockfile.c (__ftrylockfile): Likewise. + * sysdeps/pthread/funlockfile.c (__funlockfile): Likewise. + * sysdeps/pthread/timer_create.c (timer_create): Likewise. + * sysdeps/pthread/timer_getoverr.c (timer_getoverrun): Likewise. + * sysdeps/pthread/timer_gettime.c (timer_gettime): Likewise. + * sysdeps/s390/ffs.c (__ffs): Likewise. + * sysdeps/s390/nptl/pthread_spin_lock.c (pthread_spin_lock): + Likewise. + * sysdeps/s390/nptl/pthread_spin_trylock.c (pthread_spin_trylock): + Likewise. + * sysdeps/sh/nptl/pthread_spin_lock.c (pthread_spin_lock): + Likewise. + * sysdeps/sparc/nptl/pthread_barrier_destroy.c + (pthread_barrier_destroy): Likewise. + * sysdeps/sparc/nptl/pthread_barrier_wait.c + (__pthread_barrier_wait): Likewise. + * sysdeps/sparc/sparc32/e_sqrt.c (__ieee754_sqrt): Likewise. + * sysdeps/sparc/sparc32/pthread_barrier_wait.c + (__pthread_barrier_wait): Likewise. + * sysdeps/sparc/sparc32/sem_init.c (__old_sem_init): Likewise. + * sysdeps/tile/memcmp.c (memcmp_common_alignment): Likewise. + (memcmp_not_common_alignment): Likewise. + (MEMCMP): Likewise. + * sysdeps/tile/wordcopy.c (_wordcopy_fwd_aligned): Likewise. + (_wordcopy_fwd_dest_aligned): Likewise. + (_wordcopy_bwd_aligned): Likewise. + (_wordcopy_bwd_dest_aligned): Likewise. + * sysdeps/unix/bsd/ftime.c (ftime): Likewise. + * sysdeps/unix/bsd/gtty.c (gtty): Likewise. + * sysdeps/unix/bsd/stty.c (stty): Likewise. + * sysdeps/unix/bsd/tcflow.c (tcflow): Likewise. + * sysdeps/unix/bsd/tcflush.c (tcflush): Likewise. + * sysdeps/unix/bsd/tcgetattr.c (__tcgetattr): Likewise. + * sysdeps/unix/bsd/tcgetpgrp.c (tcgetpgrp): Likewise. + * sysdeps/unix/bsd/tcsendbrk.c (tcsendbreak): Likewise. + * sysdeps/unix/bsd/tcsetattr.c (tcsetattr): Likewise. + * sysdeps/unix/bsd/tcsetpgrp.c (tcsetpgrp): Likewise. + * sysdeps/unix/bsd/ualarm.c (ualarm): Likewise. + * sysdeps/unix/bsd/wait3.c (__wait3): Likewise. + * sysdeps/unix/getlogin_r.c (__getlogin_r): Likewise. + * sysdeps/unix/sockatmark.c (sockatmark): Likewise. + * sysdeps/unix/stime.c (stime): Likewise. + * sysdeps/unix/sysv/linux/_exit.c (_exit): Likewise. + * sysdeps/unix/sysv/linux/aio_sigqueue.c (__aio_sigqueue): + Likewise. Use internal_function. + * sysdeps/unix/sysv/linux/arm/sigaction.c (__libc_sigaction): + Convert to prototype-style function definition. + * sysdeps/unix/sysv/linux/faccessat.c (faccessat): Likewise. + * sysdeps/unix/sysv/linux/fchmodat.c (fchmodat): Likewise. + * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Likewise. + * sysdeps/unix/sysv/linux/gai_sigqueue.c (__gai_sigqueue): + Likewise. Use internal_function. + * sysdeps/unix/sysv/linux/gethostid.c (sethostid): Convert to + prototype-style function definition + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): + Likewise. + (__getlogin_r): Likewise. + * sysdeps/unix/sysv/linux/getpt.c (__posix_openpt): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c + (__pthread_cond_broadcast): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c + (__pthread_cond_destroy): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c + (__pthread_cond_init): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c + (__pthread_cond_signal): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c + (__pthread_cond_wait): Likewise. + * sysdeps/unix/sysv/linux/i386/getmsg.c (getmsg): Likewise. + * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Likewise. + * sysdeps/unix/sysv/linux/ia64/sigaction.c (__libc_sigaction): + Likewise. + * sysdeps/unix/sysv/linux/ia64/sigpending.c (sigpending): + Likewise. + * sysdeps/unix/sysv/linux/ia64/sigprocmask.c (__sigprocmask): + Likewise. + * sysdeps/unix/sysv/linux/mips/sigaction.c (__libc_sigaction): + Likewise. + * sysdeps/unix/sysv/linux/msgget.c (msgget): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c + (__ftruncate64): Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c + (truncate64): Likewise. + * sysdeps/unix/sysv/linux/pt-raise.c (raise): Likewise. + * sysdeps/unix/sysv/linux/pthread_getcpuclockid.c + (pthread_getcpuclockid): Likewise. + * sysdeps/unix/sysv/linux/pthread_getname.c (pthread_getname_np): + Likewise. + * sysdeps/unix/sysv/linux/pthread_setname.c (pthread_setname_np): + Likewise. + * sysdeps/unix/sysv/linux/pthread_sigmask.c (pthread_sigmask): + Likewise. + * sysdeps/unix/sysv/linux/pthread_sigqueue.c (pthread_sigqueue): + Likewise. + * sysdeps/unix/sysv/linux/raise.c (raise): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c + (__libc_sigaction): Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c (sigpending): + Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c + (__sigprocmask): Likewise. + * sysdeps/unix/sysv/linux/semget.c (semget): Likewise. + * sysdeps/unix/sysv/linux/semop.c (semop): Likewise. + * sysdeps/unix/sysv/linux/setrlimit64.c (setrlimit64): Likewise. + * sysdeps/unix/sysv/linux/shmat.c (shmat): Likewise. + * sysdeps/unix/sysv/linux/shmdt.c (shmdt): Likewise. + * sysdeps/unix/sysv/linux/shmget.c (shmget): Likewise. + * sysdeps/unix/sysv/linux/sigaction.c (__libc_sigaction): + Likewise. + * sysdeps/unix/sysv/linux/sigpending.c (sigpending): Likewise. + * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. + * sysdeps/unix/sysv/linux/sigqueue.c (__sigqueue): Likewise. + * sysdeps/unix/sysv/linux/sigstack.c (sigstack): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c (sigpending): + Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c + (__sigprocmask): Likewise. + * sysdeps/unix/sysv/linux/speed.c (cfgetospeed): Likewise. + (cfgetispeed): Likewise. + (cfsetospeed): Likewise. + (cfsetispeed): Likewise. + * sysdeps/unix/sysv/linux/tcflow.c (tcflow): Likewise. + * sysdeps/unix/sysv/linux/tcflush.c (tcflush): Likewise. + * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Likewise. + * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise. + * sysdeps/unix/sysv/linux/time.c (time): Likewise. + * sysdeps/unix/sysv/linux/timer_create.c (timer_create): Likewise. + * sysdeps/unix/sysv/linux/timer_delete.c (timer_delete): Likewise. + * sysdeps/unix/sysv/linux/timer_getoverr.c (timer_getoverrun): + Likewise. + * sysdeps/unix/sysv/linux/timer_gettime.c (timer_gettime): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigpending.c (sigpending): + Likewise. + * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (__sigprocmask): + Likewise. + * sysdeps/x86_64/backtrace.c (__backtrace): Likewise. + +Conflicts: + sysdeps/mach/hurd/getlogin_r.c + (Missing backport of fix for swbz#18527.) + sysdeps/mach/hurd/rewinddir.c + sysdeps/posix/rewinddir.c + (Missing backport of fix for swbz#17584.) + sysdeps/powerpc/nptl/pthread_spin_lock.c + (Applied to nptl/sysdeps/powerpc/pthread_spin_lock.c.) + sysdeps/powerpc/nptl/pthread_spin_trylock.c + (Applied to nptl/sysdeps/powerpc/pthread_spin_trylock.c.) + sysdeps/pthread/aio_error.c + (Missing backport of 1cdf2ea1fa44bae7d400b602399e30d490173bf3, + Fix aio_error thread-safety.) + sysdeps/pthread/flockfile.c + (Applied to nptl/sysdeps/pthread/flockfile.c.) + sysdeps/pthread/ftrylockfile.c + (Applied to nptl/sysdeps/pthread/ftrylockfile.c.) + sysdeps/pthread/funlockfile.c + (Applied to nptl/sysdeps/pthread/funlockfile.c.) + sysdeps/pthread/timer_create.c + (Applied to nptl/sysdeps/pthread/timer_create.c.) + sysdeps/pthread/timer_getoverr.c + (Applied to nptl/sysdeps/pthread/timer_getoverr.c.) + sysdeps/pthread/timer_gettime.c + (Applied to nptl/sysdeps/pthread/timer_gettime.c.) + sysdeps/s390/nptl/pthread_spin_lock.c + (Applied to nptl/sysdeps/s390/pthread_spin_lock.c.) + sysdeps/s390/nptl/pthread_spin_trylock.c + (Applied to nptl/sysdeps/s390/pthread_spin_trylock.c.) + sysdeps/sh/nptl/pthread_spin_lock.c + (Applied to nptl/sysdeps/sh/pthread_spin_lock.c.) + sysdeps/sparc/nptl/pthread_barrier_destroy.c + (Applied to + nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c.) + sysdeps/sparc/nptl/pthread_barrier_wait.c + (Applied to + nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c.) + sysdeps/sparc/sparc32/pthread_barrier_wait.c + (Applied to + nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c.) + sysdeps/sparc/sparc32/sem_init.c + (Applied to nptl/sysdeps/unix/sysv/linux/sparc/sem_init.) + sysdeps/tile/memcmp.c + (Missing backport of d9cd52e64d7b6b0fd56566de87c826cb6fe3677d, + tile: optimize memcmp; file removed manually.) + sysdeps/unix/getlogin_r.c + sysdeps/unix/sysv/linux/getlogin_r.c + (Missing backport of fix for swbz#18527.) + sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c + sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c + sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c + sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c + sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c + (Missing backport of d83f0734e1522a5e5ea2494565f4dcd25a86d6a0, + HPPA: Transition to new non-addon NPTL; files removed manually.) + sysdeps/unix/sysv/linux/pt-raise.c + (Applied to nptl/sysdeps/unix/sysv/linux/pt-raise.c.) + sysdeps/unix/sysv/linux/pthread_getcpuclockid.c + (Applied to nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c.) + sysdeps/unix/sysv/linux/pthread_getname.c + (Applied to nptl/sysdeps/unix/sysv/linux/pthread_getname.c.) + sysdeps/unix/sysv/linux/pthread_setname.c + (Applied to nptl/sysdeps/unix/sysv/linux/pthread_setname.c.) + sysdeps/unix/sysv/linux/pthread_sigmask.c + (Applied to nptl/sysdeps/pthread/pthread_sigmask.c.) + sysdeps/unix/sysv/linux/pthread_sigqueue.c + (Applied to nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c.) + sysdeps/unix/sysv/linux/raise.c + (Applied to nptl/sysdeps/unix/sysv/linux/raise.c.) + sysdeps/unix/sysv/linux/timer_create.c + (Applied to nptl/sysdeps/unix/sysv/linux/timer_create.c.) + sysdeps/unix/sysv/linux/timer_delete.c + (Applied to nptl/sysdeps/unix/sysv/linux/timer_delete.c.) + sysdeps/unix/sysv/linux/timer_getoverr.c + (Applied to nptl/sysdeps/unix/sysv/linux/timer_getoverr.c.) + sysdeps/unix/sysv/linux/timer_gettime.c + (Applied to nptl/sysdeps/unix/sysv/linux/timer_gettime.c.) + +diff --git a/nptl/sysdeps/powerpc/pthread_spin_lock.c b/nptl/sysdeps/powerpc/pthread_spin_lock.c +index 629dad50cdb753a1..f684325c8e09e06e 100644 +--- a/nptl/sysdeps/powerpc/pthread_spin_lock.c ++++ b/nptl/sysdeps/powerpc/pthread_spin_lock.c +@@ -19,8 +19,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_lock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_lock (pthread_spinlock_t *lock) + { + unsigned int __tmp; + +diff --git a/nptl/sysdeps/powerpc/pthread_spin_trylock.c b/nptl/sysdeps/powerpc/pthread_spin_trylock.c +index a7956f8fce4109aa..aeb13416db48440e 100644 +--- a/nptl/sysdeps/powerpc/pthread_spin_trylock.c ++++ b/nptl/sysdeps/powerpc/pthread_spin_trylock.c +@@ -20,8 +20,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_trylock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_trylock (pthread_spinlock_t *lock) + { + unsigned int old; + int err = EBUSY; +diff --git a/nptl/sysdeps/pthread/flockfile.c b/nptl/sysdeps/pthread/flockfile.c +index 538e368a082dcec5..1e7d1f0133ed4f40 100644 +--- a/nptl/sysdeps/pthread/flockfile.c ++++ b/nptl/sysdeps/pthread/flockfile.c +@@ -23,8 +23,7 @@ + + + void +-__flockfile (stream) +- FILE *stream; ++__flockfile (FILE *stream) + { + _IO_lock_lock (*stream->_lock); + } +diff --git a/nptl/sysdeps/pthread/ftrylockfile.c b/nptl/sysdeps/pthread/ftrylockfile.c +index d814258d893afd85..cd78c2812800b223 100644 +--- a/nptl/sysdeps/pthread/ftrylockfile.c ++++ b/nptl/sysdeps/pthread/ftrylockfile.c +@@ -23,8 +23,7 @@ + + + int +-__ftrylockfile (stream) +- FILE *stream; ++__ftrylockfile (FILE *stream) + { + return _IO_lock_trylock (*stream->_lock); + } +diff --git a/nptl/sysdeps/pthread/funlockfile.c b/nptl/sysdeps/pthread/funlockfile.c +index f45479936741a3ea..51530863671da481 100644 +--- a/nptl/sysdeps/pthread/funlockfile.c ++++ b/nptl/sysdeps/pthread/funlockfile.c +@@ -23,8 +23,7 @@ + + + void +-__funlockfile (stream) +- FILE *stream; ++__funlockfile (FILE *stream) + { + _IO_lock_unlock (*stream->_lock); + } +diff --git a/nptl/sysdeps/pthread/pthread_sigmask.c b/nptl/sysdeps/pthread/pthread_sigmask.c +index 8db7d18f4d9c2f3f..83d7d881e98d6af3 100644 +--- a/nptl/sysdeps/pthread/pthread_sigmask.c ++++ b/nptl/sysdeps/pthread/pthread_sigmask.c +@@ -23,10 +23,7 @@ + + + int +-pthread_sigmask (how, newmask, oldmask) +- int how; +- const sigset_t *newmask; +- sigset_t *oldmask; ++pthread_sigmask (int how, const sigset_t *newmask, sigset_t *oldmask) + { + sigset_t local_newmask; + +diff --git a/nptl/sysdeps/pthread/timer_create.c b/nptl/sysdeps/pthread/timer_create.c +index f61c5a3eb6d391b7..90770f121fc2c0fc 100644 +--- a/nptl/sysdeps/pthread/timer_create.c ++++ b/nptl/sysdeps/pthread/timer_create.c +@@ -27,10 +27,7 @@ + + /* Create new per-process timer using CLOCK. */ + int +-timer_create (clock_id, evp, timerid) +- clockid_t clock_id; +- struct sigevent *evp; +- timer_t *timerid; ++timer_create (clockid_t clock_id, struct sigevent *evp, timer_t *timerid) + { + int retval = -1; + struct timer_node *newtimer = NULL; +diff --git a/nptl/sysdeps/pthread/timer_getoverr.c b/nptl/sysdeps/pthread/timer_getoverr.c +index 6d753e30d6839165..010fa73539bae653 100644 +--- a/nptl/sysdeps/pthread/timer_getoverr.c ++++ b/nptl/sysdeps/pthread/timer_getoverr.c +@@ -25,8 +25,7 @@ + + /* Get expiration overrun for timer TIMERID. */ + int +-timer_getoverrun (timerid) +- timer_t timerid; ++timer_getoverrun (timer_t timerid) + { + struct timer_node *timer; + int retval = -1; +diff --git a/nptl/sysdeps/pthread/timer_gettime.c b/nptl/sysdeps/pthread/timer_gettime.c +index 6bd2b84e2d89f069..b48cc8ebf615bf8c 100644 +--- a/nptl/sysdeps/pthread/timer_gettime.c ++++ b/nptl/sysdeps/pthread/timer_gettime.c +@@ -25,9 +25,7 @@ + + /* Get current value of timer TIMERID and store it in VLAUE. */ + int +-timer_gettime (timerid, value) +- timer_t timerid; +- struct itimerspec *value; ++timer_gettime (timer_t timerid, struct itimerspec *value) + { + struct timer_node *timer; + struct timespec now, expiry; +diff --git a/nptl/sysdeps/s390/pthread_spin_lock.c b/nptl/sysdeps/s390/pthread_spin_lock.c +index 17c405a4cce18651..e3d5c1153f387475 100644 +--- a/nptl/sysdeps/s390/pthread_spin_lock.c ++++ b/nptl/sysdeps/s390/pthread_spin_lock.c +@@ -19,8 +19,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_lock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_lock (pthread_spinlock_t *lock) + { + int oldval; + +diff --git a/nptl/sysdeps/s390/pthread_spin_trylock.c b/nptl/sysdeps/s390/pthread_spin_trylock.c +index 4a4e2cb1e7b73f65..f9e307882ab75651 100644 +--- a/nptl/sysdeps/s390/pthread_spin_trylock.c ++++ b/nptl/sysdeps/s390/pthread_spin_trylock.c +@@ -20,8 +20,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_trylock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_trylock (pthread_spinlock_t *lock) + { + int old; + +diff --git a/nptl/sysdeps/sh/pthread_spin_lock.c b/nptl/sysdeps/sh/pthread_spin_lock.c +index 798c124ebbee8a98..48d3fc7eb495ea98 100644 +--- a/nptl/sysdeps/sh/pthread_spin_lock.c ++++ b/nptl/sysdeps/sh/pthread_spin_lock.c +@@ -18,8 +18,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_lock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_lock (pthread_spinlock_t *lock) + { + unsigned int val; + +diff --git a/nptl/sysdeps/unix/sysv/linux/pt-raise.c b/nptl/sysdeps/unix/sysv/linux/pt-raise.c +index 71face45acaacc52..519916a438c96874 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pt-raise.c ++++ b/nptl/sysdeps/unix/sysv/linux/pt-raise.c +@@ -24,8 +24,7 @@ + + + int +-raise (sig) +- int sig; ++raise (int sig) + { + /* raise is an async-safe function. It could be called while the + fork function temporarily invalidated the PID field. Adjust for +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c b/nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c +index 368f2c460517db4f..f2321e056f51e39a 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_getcpuclockid.c +@@ -25,9 +25,7 @@ + + + int +-pthread_getcpuclockid (threadid, clockid) +- pthread_t threadid; +- clockid_t *clockid; ++pthread_getcpuclockid (pthread_t threadid, clockid_t *clockid) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_getname.c b/nptl/sysdeps/unix/sysv/linux/pthread_getname.c +index 2a41e1f94a422cc0..60ed6bf170804cdd 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_getname.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_getname.c +@@ -28,10 +28,7 @@ + + + int +-pthread_getname_np (th, buf, len) +- pthread_t th; +- char *buf; +- size_t len; ++pthread_getname_np (pthread_t th, char *buf, size_t len) + { + const struct pthread *pd = (const struct pthread *) th; + +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_setname.c b/nptl/sysdeps/unix/sysv/linux/pthread_setname.c +index 6ea406329bc6b6c1..7c945ac79da5491c 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_setname.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_setname.c +@@ -28,9 +28,7 @@ + + + int +-pthread_setname_np (th, name) +- pthread_t th; +- const char *name; ++pthread_setname_np (pthread_t th, const char *name) + { + const struct pthread *pd = (const struct pthread *) th; + +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c b/nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c +index 2c0c25773733935f..dc12bb3749333ebc 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_sigqueue.c +@@ -27,10 +27,7 @@ + + + int +-pthread_sigqueue (threadid, signo, value) +- pthread_t threadid; +- int signo; +- const union sigval value; ++pthread_sigqueue (pthread_t threadid, int signo, const union sigval value) + { + #ifdef __NR_rt_tgsigqueueinfo + struct pthread *pd = (struct pthread *) threadid; +diff --git a/nptl/sysdeps/unix/sysv/linux/raise.c b/nptl/sysdeps/unix/sysv/linux/raise.c +index 268ab46d3f3805b8..378f03c7f2fc0195 100644 +--- a/nptl/sysdeps/unix/sysv/linux/raise.c ++++ b/nptl/sysdeps/unix/sysv/linux/raise.c +@@ -25,8 +25,7 @@ + + + int +-raise (sig) +- int sig; ++raise (int sig) + { + struct pthread *pd = THREAD_SELF; + pid_t pid = THREAD_GETMEM (pd, pid); +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c +index c260d2aa0e6fc366..d0c07b939013d417 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c +@@ -21,8 +21,7 @@ + #include + + int +-pthread_barrier_destroy (barrier) +- pthread_barrier_t *barrier; ++pthread_barrier_destroy (pthread_barrier_t *barrier) + { + union sparc_pthread_barrier *ibarrier; + int result = EBUSY; +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c +index 8c5d9a9837360cdd..6ad85d7e232d5701 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c +@@ -23,8 +23,7 @@ + + /* Wait on barrier. */ + int +-pthread_barrier_wait (barrier) +- pthread_barrier_t *barrier; ++pthread_barrier_wait (pthread_barrier_t *barrier) + { + union sparc_pthread_barrier *ibarrier + = (union sparc_pthread_barrier *) barrier; +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c b/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c +index aef2cc52c0daf0ad..ebbcca15cd7a476a 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c +@@ -60,10 +60,7 @@ versioned_symbol (libpthread, __new_sem_init, sem_init, GLIBC_2_1); + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1) + int + attribute_compat_text_section +-__old_sem_init (sem, pshared, value) +- sem_t *sem; +- int pshared; +- unsigned int value; ++__old_sem_init (sem_t *sem, int pshared, unsigned int value) + { + /* Parameter sanity check. */ + if (__builtin_expect (value > SEM_VALUE_MAX, 0)) +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c +index 157f34973984a4eb..9e8d993ad7f1d5a0 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c +@@ -23,8 +23,7 @@ + + /* Wait on barrier. */ + int +-pthread_barrier_wait (barrier) +- pthread_barrier_t *barrier; ++pthread_barrier_wait (pthread_barrier_t *barrier) + { + union sparc_pthread_barrier *ibarrier + = (union sparc_pthread_barrier *) barrier; +diff --git a/nptl/sysdeps/unix/sysv/linux/timer_create.c b/nptl/sysdeps/unix/sysv/linux/timer_create.c +index c2865fb4f3f1729e..5a2cacb73c34bd4f 100644 +--- a/nptl/sysdeps/unix/sysv/linux/timer_create.c ++++ b/nptl/sysdeps/unix/sysv/linux/timer_create.c +@@ -36,10 +36,7 @@ + + + int +-timer_create (clock_id, evp, timerid) +- clockid_t clock_id; +- struct sigevent *evp; +- timer_t *timerid; ++timer_create (clockid_t clock_id, struct sigevent *evp, timer_t *timerid) + { + #undef timer_create + { +diff --git a/nptl/sysdeps/unix/sysv/linux/timer_delete.c b/nptl/sysdeps/unix/sysv/linux/timer_delete.c +index 598be8343ef6edf1..f76d9eadd7d13a0a 100644 +--- a/nptl/sysdeps/unix/sysv/linux/timer_delete.c ++++ b/nptl/sysdeps/unix/sysv/linux/timer_delete.c +@@ -30,8 +30,7 @@ + + + int +-timer_delete (timerid) +- timer_t timerid; ++timer_delete (timer_t timerid) + { + #undef timer_delete + struct timer *kt = (struct timer *) timerid; +diff --git a/nptl/sysdeps/unix/sysv/linux/timer_getoverr.c b/nptl/sysdeps/unix/sysv/linux/timer_getoverr.c +index 6d48d4c14df23d6c..b80715e995918868 100644 +--- a/nptl/sysdeps/unix/sysv/linux/timer_getoverr.c ++++ b/nptl/sysdeps/unix/sysv/linux/timer_getoverr.c +@@ -29,8 +29,7 @@ + + + int +-timer_getoverrun (timerid) +- timer_t timerid; ++timer_getoverrun (timer_t timerid) + { + #undef timer_getoverrun + struct timer *kt = (struct timer *) timerid; +diff --git a/nptl/sysdeps/unix/sysv/linux/timer_gettime.c b/nptl/sysdeps/unix/sysv/linux/timer_gettime.c +index 6d9933a99c2ccb2b..deee74a238e91aca 100644 +--- a/nptl/sysdeps/unix/sysv/linux/timer_gettime.c ++++ b/nptl/sysdeps/unix/sysv/linux/timer_gettime.c +@@ -30,9 +30,7 @@ + + + int +-timer_gettime (timerid, value) +- timer_t timerid; +- struct itimerspec *value; ++timer_gettime (timer_t timerid, struct itimerspec *value) + { + #undef timer_gettime + struct timer *kt = (struct timer *) timerid; +diff --git a/sysdeps/arm/backtrace.c b/sysdeps/arm/backtrace.c +index 3d839e628c1ff89b..ce7a0ceda42486e5 100644 +--- a/sysdeps/arm/backtrace.c ++++ b/sysdeps/arm/backtrace.c +@@ -87,9 +87,7 @@ backtrace_helper (struct _Unwind_Context *ctx, void *a) + } + + int +-__backtrace (array, size) +- void **array; +- int size; ++__backtrace (void **array, int size) + { + struct trace_arg arg = { .array = array, .size = size, .cnt = -1 }; + #ifdef SHARED +diff --git a/sysdeps/i386/backtrace.c b/sysdeps/i386/backtrace.c +index 13c7856249a2a1ea..c226814c17790e31 100644 +--- a/sysdeps/i386/backtrace.c ++++ b/sysdeps/i386/backtrace.c +@@ -109,9 +109,7 @@ struct layout + + + int +-__backtrace (array, size) +- void **array; +- int size; ++__backtrace (void **array, int size) + { + struct trace_arg arg = { .array = array, .size = size, .cnt = -1 }; + #ifdef SHARED +diff --git a/sysdeps/i386/ffs.c b/sysdeps/i386/ffs.c +index f53bdd1c160cd800..35fa6e91f0628269 100644 +--- a/sysdeps/i386/ffs.c ++++ b/sysdeps/i386/ffs.c +@@ -26,8 +26,7 @@ + #ifdef __GNUC__ + + int +-__ffs (x) +- int x; ++__ffs (int x) + { + int cnt; + int tmp; +diff --git a/sysdeps/i386/i686/ffs.c b/sysdeps/i386/i686/ffs.c +index 452adbf288bdd342..aca1c5b69402877a 100644 +--- a/sysdeps/i386/i686/ffs.c ++++ b/sysdeps/i386/i686/ffs.c +@@ -26,8 +26,7 @@ + #ifdef __GNUC__ + + int +-__ffs (x) +- int x; ++__ffs (int x) + { + int cnt; + int tmp; +diff --git a/sysdeps/ia64/nptl/pthread_spin_lock.c b/sysdeps/ia64/nptl/pthread_spin_lock.c +index 42b37882f5cb3da5..cfe71160c5716bf0 100644 +--- a/sysdeps/ia64/nptl/pthread_spin_lock.c ++++ b/sysdeps/ia64/nptl/pthread_spin_lock.c +@@ -19,8 +19,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_lock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_lock (pthread_spinlock_t *lock) + { + int *p = (int *) lock; + +diff --git a/sysdeps/ia64/nptl/pthread_spin_trylock.c b/sysdeps/ia64/nptl/pthread_spin_trylock.c +index 9efd3b586be3bbe2..020d79e4aae8788d 100644 +--- a/sysdeps/ia64/nptl/pthread_spin_trylock.c ++++ b/sysdeps/ia64/nptl/pthread_spin_trylock.c +@@ -20,8 +20,7 @@ + #include "pthreadP.h" + + int +-pthread_spin_trylock (lock) +- pthread_spinlock_t *lock; ++pthread_spin_trylock (pthread_spinlock_t *lock) + { + return __sync_val_compare_and_swap ((int *) lock, 0, 1) == 0 ? 0 : EBUSY; + } +diff --git a/sysdeps/ieee754/ldbl-128/e_log2l.c b/sysdeps/ieee754/ldbl-128/e_log2l.c +index 6c7da0e44b9e1997..ebb75a0754feed8b 100644 +--- a/sysdeps/ieee754/ldbl-128/e_log2l.c ++++ b/sysdeps/ieee754/ldbl-128/e_log2l.c +@@ -171,8 +171,7 @@ deval (long double x, const long double *p, int n) + + + long double +-__ieee754_log2l (x) +- long double x; ++__ieee754_log2l (long double x) + { + long double z; + long double y; +diff --git a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c +index 323ded0c0fa5e2e1..ad05678057f9072b 100644 +--- a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c ++++ b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c +@@ -171,8 +171,7 @@ deval (long double x, const long double *p, int n) + + + long double +-__ieee754_log2l (x) +- long double x; ++__ieee754_log2l (long double x) + { + long double z; + long double y; +diff --git a/sysdeps/m68k/ffs.c b/sysdeps/m68k/ffs.c +index 3f45a03eaf624db1..2625596ed561feb6 100644 +--- a/sysdeps/m68k/ffs.c ++++ b/sysdeps/m68k/ffs.c +@@ -26,8 +26,7 @@ + #if defined (__GNUC__) && defined (__mc68020__) + + int +-__ffs (x) +- int x; ++__ffs (int x) + { + int cnt; + +diff --git a/sysdeps/m68k/m680x0/fpu/e_acos.c b/sysdeps/m68k/m680x0/fpu/e_acos.c +index f8a0a352a12260f0..94057e55be048a5b 100644 +--- a/sysdeps/m68k/m680x0/fpu/e_acos.c ++++ b/sysdeps/m68k/m680x0/fpu/e_acos.c +@@ -28,8 +28,7 @@ + #endif + + float_type +-FUNC (x) +- float_type x; ++FUNC (float_type x) + { + return __m81_u(FUNC)(x); + } +diff --git a/sysdeps/m68k/m680x0/fpu/e_fmod.c b/sysdeps/m68k/m680x0/fpu/e_fmod.c +index 671e3b83a404131d..db997ff08a88bded 100644 +--- a/sysdeps/m68k/m680x0/fpu/e_fmod.c ++++ b/sysdeps/m68k/m680x0/fpu/e_fmod.c +@@ -28,9 +28,7 @@ + #endif + + float_type +-FUNC (x, y) +- float_type x; +- float_type y; ++FUNC (float_type x, float_type y) + { + return __m81_u(FUNC)(x, y); + } +diff --git a/sysdeps/mach/adjtime.c b/sysdeps/mach/adjtime.c +index dc043bbe085689af..3f31861cf5849068 100644 +--- a/sysdeps/mach/adjtime.c ++++ b/sysdeps/mach/adjtime.c +@@ -24,9 +24,7 @@ + of time adjustment remaining to be done from the last `__adjtime' call. + This call is restricted to the super-user. */ + int +-__adjtime (delta, olddelta) +- const struct timeval *delta; +- struct timeval *olddelta; ++__adjtime (const struct timeval *delta, struct timeval *olddelta) + { + error_t err; + mach_port_t hostpriv; +diff --git a/sysdeps/mach/gettimeofday.c b/sysdeps/mach/gettimeofday.c +index 293a77595b417dfa..f1d783c53dfce0b8 100644 +--- a/sysdeps/mach/gettimeofday.c ++++ b/sysdeps/mach/gettimeofday.c +@@ -24,9 +24,7 @@ + putting it into *TV and *TZ. If TZ is NULL, *TZ is not filled. + Returns 0 on success, -1 on errors. */ + int +-__gettimeofday (tv, tz) +- struct timeval *tv; +- struct timezone *tz; ++__gettimeofday (struct timeval *tv, struct timezone *tz) + { + kern_return_t err; + +diff --git a/sysdeps/mach/hurd/_exit.c b/sysdeps/mach/hurd/_exit.c +index 667c57204877d7de..272dad329aaf9e6e 100644 +--- a/sysdeps/mach/hurd/_exit.c ++++ b/sysdeps/mach/hurd/_exit.c +@@ -46,8 +46,7 @@ _hurd_exit (int status) + } + + void +-_exit (status) +- int status; ++_exit (int status) + { + _hurd_exit (W_EXITCODE (status, 0)); + } +diff --git a/sysdeps/mach/hurd/access.c b/sysdeps/mach/hurd/access.c +index 0a5dfade9901fa04..0ff6b29a5afabd54 100644 +--- a/sysdeps/mach/hurd/access.c ++++ b/sysdeps/mach/hurd/access.c +@@ -24,9 +24,7 @@ + + /* Test for access to FILE by our real user and group IDs. */ + int +-__access (file, type) +- const char *file; +- int type; ++__access (const char *file, int type) + { + error_t err; + file_t rcrdir, rcwdir, io; +diff --git a/sysdeps/mach/hurd/adjtime.c b/sysdeps/mach/hurd/adjtime.c +index feaa2b7b7c4ea06e..f917ed3d579b7c4e 100644 +--- a/sysdeps/mach/hurd/adjtime.c ++++ b/sysdeps/mach/hurd/adjtime.c +@@ -24,9 +24,7 @@ + of time adjustment remaining to be done from the last `__adjtime' call. + This call is restricted to the super-user. */ + int +-__adjtime (delta, olddelta) +- const struct timeval *delta; +- struct timeval *olddelta; ++__adjtime (const struct timeval *delta, struct timeval *olddelta) + { + error_t err; + mach_port_t hostpriv; +diff --git a/sysdeps/mach/hurd/chdir.c b/sysdeps/mach/hurd/chdir.c +index 0369d7eaf6ccd739..1eee39608135b615 100644 +--- a/sysdeps/mach/hurd/chdir.c ++++ b/sysdeps/mach/hurd/chdir.c +@@ -22,8 +22,7 @@ + + /* Change the current directory to FILE_NAME. */ + int +-__chdir (file_name) +- const char *file_name; ++__chdir (const char *file_name) + { + return _hurd_change_directory_port_from_name (&_hurd_ports[INIT_PORT_CWDIR], + file_name); +diff --git a/sysdeps/mach/hurd/chmod.c b/sysdeps/mach/hurd/chmod.c +index 053f244efe982348..a54a631dd741962a 100644 +--- a/sysdeps/mach/hurd/chmod.c ++++ b/sysdeps/mach/hurd/chmod.c +@@ -22,9 +22,7 @@ + + /* Change the protections of FILE to MODE. */ + int +-__chmod (file, mode) +- const char *file; +- mode_t mode; ++__chmod (const char *file, mode_t mode) + { + error_t err; + file_t port = __file_name_lookup (file, 0, 0); +diff --git a/sysdeps/mach/hurd/chown.c b/sysdeps/mach/hurd/chown.c +index b12a95972702da52..414a5f0a17d5b1e2 100644 +--- a/sysdeps/mach/hurd/chown.c ++++ b/sysdeps/mach/hurd/chown.c +@@ -22,10 +22,7 @@ + + /* Change the owner and group of FILE. */ + int +-__chown (file, owner, group) +- const char *file; +- uid_t owner; +- gid_t group; ++__chown (const char *file, uid_t owner, gid_t group) + { + error_t err; + file_t port = __file_name_lookup (file, 0, 0); +diff --git a/sysdeps/mach/hurd/cthreads.c b/sysdeps/mach/hurd/cthreads.c +index b9f8ab8b13409447..3831862b730aad76 100644 +--- a/sysdeps/mach/hurd/cthreads.c ++++ b/sysdeps/mach/hurd/cthreads.c +@@ -22,8 +22,7 @@ + /* Placeholder for key creation routine from Hurd cthreads library. */ + int + weak_function +-cthread_keycreate (key) +- cthread_key_t *key; ++cthread_keycreate (cthread_key_t *key) + { + __set_errno (ENOSYS); + *key = -1; +@@ -33,9 +32,7 @@ cthread_keycreate (key) + /* Placeholder for key retrieval routine from Hurd cthreads library. */ + int + weak_function +-cthread_getspecific (key, pval) +- cthread_key_t key; +- void **pval; ++cthread_getspecific (cthread_key_t key, void **pval) + { + *pval = NULL; + __set_errno (ENOSYS); +@@ -45,9 +42,7 @@ cthread_getspecific (key, pval) + /* Placeholder for key setting routine from Hurd cthreads library. */ + int + weak_function +-cthread_setspecific (key, val) +- cthread_key_t key; +- void *val; ++cthread_setspecific (cthread_key_t key, void *val) + { + __set_errno (ENOSYS); + return -1; +@@ -56,8 +51,7 @@ cthread_setspecific (key, val) + /* Call cthread_getspecific which gets a pointer to the return value instead + of just returning it. */ + void * +-__libc_getspecific (key) +- cthread_key_t key; ++__libc_getspecific (cthread_key_t key) + { + void *val; + cthread_getspecific (key, &val); +diff --git a/sysdeps/mach/hurd/euidaccess.c b/sysdeps/mach/hurd/euidaccess.c +index 79db43839906b83d..9e258840a89d8ea6 100644 +--- a/sysdeps/mach/hurd/euidaccess.c ++++ b/sysdeps/mach/hurd/euidaccess.c +@@ -23,9 +23,7 @@ + #include + + int +-__euidaccess (file, type) +- const char *file; +- int type; ++__euidaccess (const char *file, int type) + { + error_t err; + file_t port; +diff --git a/sysdeps/mach/hurd/faccessat.c b/sysdeps/mach/hurd/faccessat.c +index 8c6be4b86fee954d..5f4626a8867207fd 100644 +--- a/sysdeps/mach/hurd/faccessat.c ++++ b/sysdeps/mach/hurd/faccessat.c +@@ -25,11 +25,7 @@ + #include + + int +-faccessat (fd, file, type, flag) +- int fd; +- const char *file; +- int type; +- int flag; ++faccessat (int fd, const char *file, int type, int flag) + { + error_t err; + file_t port; +diff --git a/sysdeps/mach/hurd/fchdir.c b/sysdeps/mach/hurd/fchdir.c +index cce9468f10b6b0ae..a5f2f2c16f6c4c35 100644 +--- a/sysdeps/mach/hurd/fchdir.c ++++ b/sysdeps/mach/hurd/fchdir.c +@@ -24,8 +24,7 @@ + /* Change the current directory to FD. */ + + int +-__fchdir (fd) +- int fd; ++__fchdir (int fd) + { + return _hurd_change_directory_port_from_fd (&_hurd_ports[INIT_PORT_CWDIR], + fd); +diff --git a/sysdeps/mach/hurd/fchmod.c b/sysdeps/mach/hurd/fchmod.c +index f32105b9b2031277..ccf03dfa4aaa67c4 100644 +--- a/sysdeps/mach/hurd/fchmod.c ++++ b/sysdeps/mach/hurd/fchmod.c +@@ -23,9 +23,7 @@ + + /* Change the permissions of the file referenced by FD to MODE. */ + int +-__fchmod (fd, mode) +- int fd; +- mode_t mode; ++__fchmod (int fd, mode_t mode) + { + error_t err; + +diff --git a/sysdeps/mach/hurd/fchmodat.c b/sysdeps/mach/hurd/fchmodat.c +index f3c048ff36da7170..4dc45c321a815d1e 100644 +--- a/sysdeps/mach/hurd/fchmodat.c ++++ b/sysdeps/mach/hurd/fchmodat.c +@@ -25,11 +25,7 @@ + #include + + int +-fchmodat (fd, file, mode, flag) +- int fd; +- const char *file; +- mode_t mode; +- int flag; ++fchmodat (int fd, const char *file, mode_t mode, int flag) + { + error_t err; + file_t port = __file_name_lookup_at (fd, flag, file, 0, 0); +diff --git a/sysdeps/mach/hurd/fchown.c b/sysdeps/mach/hurd/fchown.c +index 09fea4ec7ad93aff..b471604162a1f0c1 100644 +--- a/sysdeps/mach/hurd/fchown.c ++++ b/sysdeps/mach/hurd/fchown.c +@@ -23,10 +23,7 @@ + + /* Change the owner and group of the file referred to by FD. */ + int +-__fchown (fd, owner, group) +- int fd; +- uid_t owner; +- gid_t group; ++__fchown (int fd, uid_t owner, gid_t group) + { + error_t err; + +diff --git a/sysdeps/mach/hurd/fchownat.c b/sysdeps/mach/hurd/fchownat.c +index 58546e46c9c89fcb..d0a0f5c8cbdd5be1 100644 +--- a/sysdeps/mach/hurd/fchownat.c ++++ b/sysdeps/mach/hurd/fchownat.c +@@ -26,12 +26,7 @@ + + /* Change the owner and group of FILE. */ + int +-fchownat (fd, file, owner, group, flag) +- int fd; +- const char *file; +- uid_t owner; +- gid_t group; +- int flag; ++fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag) + { + error_t err; + file_t port = __file_name_lookup_at (fd, flag, file, 0, 0); +diff --git a/sysdeps/mach/hurd/flock.c b/sysdeps/mach/hurd/flock.c +index a9e70ac2740dbb55..39c298112323c499 100644 +--- a/sysdeps/mach/hurd/flock.c ++++ b/sysdeps/mach/hurd/flock.c +@@ -23,9 +23,7 @@ + /* Apply or remove an advisory lock, according to OPERATION, + on the file FD refers to. */ + int +-__flock (fd, operation) +- int fd; +- int operation; ++__flock (int fd, int operation) + { + error_t err; + +diff --git a/sysdeps/mach/hurd/fsync.c b/sysdeps/mach/hurd/fsync.c +index fe3e044a3aee5e83..e17e0142ea05d1e9 100644 +--- a/sysdeps/mach/hurd/fsync.c ++++ b/sysdeps/mach/hurd/fsync.c +@@ -22,8 +22,7 @@ + + /* Make all changes done to FD actually appear on disk. */ + int +-fsync (fd) +- int fd; ++fsync (int fd) + { + error_t err = HURD_DPORT_USE (fd, __file_sync (port, 1, 0)); + if (err) +diff --git a/sysdeps/mach/hurd/ftruncate.c b/sysdeps/mach/hurd/ftruncate.c +index 51b65638a7c37d2a..4a3897faa6aa6ca6 100644 +--- a/sysdeps/mach/hurd/ftruncate.c ++++ b/sysdeps/mach/hurd/ftruncate.c +@@ -23,9 +23,7 @@ + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +-__ftruncate (fd, length) +- int fd; +- __off_t length; ++__ftruncate (int fd, __off_t length) + { + error_t err; + if (err = HURD_DPORT_USE (fd, __file_set_size (port, length))) +diff --git a/sysdeps/mach/hurd/getgroups.c b/sysdeps/mach/hurd/getgroups.c +index 35b219ef66c36606..8e2a580ced7f71e2 100644 +--- a/sysdeps/mach/hurd/getgroups.c ++++ b/sysdeps/mach/hurd/getgroups.c +@@ -22,9 +22,7 @@ + #include + + int +-__getgroups (n, gidset) +- int n; +- gid_t *gidset; ++__getgroups (int n, gid_t *gidset) + { + error_t err; + int ngids; +diff --git a/sysdeps/mach/hurd/gethostname.c b/sysdeps/mach/hurd/gethostname.c +index fb03b7e8192820dc..dc32a47b7a1324eb 100644 +--- a/sysdeps/mach/hurd/gethostname.c ++++ b/sysdeps/mach/hurd/gethostname.c +@@ -22,9 +22,7 @@ + The result is null-terminated if LEN is large enough for the full + name and the terminator. */ + int +-__gethostname (name, len) +- char *name; +- size_t len; ++__gethostname (char *name, size_t len) + { + /* The host name is just the contents of the file /etc/hostname. */ + ssize_t n = _hurd_get_host_config ("/etc/hostname", name, len); +diff --git a/sysdeps/mach/hurd/getitimer.c b/sysdeps/mach/hurd/getitimer.c +index 3a9b53b677eed78f..da0d78da22950c48 100644 +--- a/sysdeps/mach/hurd/getitimer.c ++++ b/sysdeps/mach/hurd/getitimer.c +@@ -42,9 +42,7 @@ subtract_timeval (struct timeval *from, const struct timeval *subtract) + /* Set *VALUE to the current setting of timer WHICH. + Return 0 on success, -1 on errors. */ + int +-__getitimer (which, value) +- enum __itimer_which which; +- struct itimerval *value; ++__getitimer (enum __itimer_which which, struct itimerval *value) + { + struct itimerval val; + struct timeval elapsed; +diff --git a/sysdeps/mach/hurd/getlogin_r.c b/sysdeps/mach/hurd/getlogin_r.c +index 5410709e71d59d79..bbae17b0380b3727 100644 +--- a/sysdeps/mach/hurd/getlogin_r.c ++++ b/sysdeps/mach/hurd/getlogin_r.c +@@ -25,9 +25,7 @@ + If it cannot be determined or some other error occurred, return the error + code. Otherwise return 0. */ + int +-getlogin_r (name, name_len) +- char *name; +- size_t name_len; ++getlogin_r (char *name, size_t name_len) + { + string_t login; + error_t err; +diff --git a/sysdeps/mach/hurd/getpgid.c b/sysdeps/mach/hurd/getpgid.c +index 69b316abfe3e4421..4071c182ac341f52 100644 +--- a/sysdeps/mach/hurd/getpgid.c ++++ b/sysdeps/mach/hurd/getpgid.c +@@ -22,8 +22,7 @@ + + /* Get the process group ID of process PID. */ + int +-__getpgid (pid) +- pid_t pid; ++__getpgid (pid_t pid) + { + error_t err; + pid_t pgrp; +diff --git a/sysdeps/mach/hurd/getrusage.c b/sysdeps/mach/hurd/getrusage.c +index b2cc58969a1a6b08..2d5e41bf4ba15437 100644 +--- a/sysdeps/mach/hurd/getrusage.c ++++ b/sysdeps/mach/hurd/getrusage.c +@@ -26,9 +26,7 @@ + /* Return resource usage information on process indicated by WHO + and put it in *USAGE. Returns 0 for success, -1 for failure. */ + int +-__getrusage (who, usage) +- enum __rusage_who who; +- struct rusage *usage; ++__getrusage (enum __rusage_who who, struct rusage *usage) + { + struct task_basic_info bi; + struct task_events_info ei; +diff --git a/sysdeps/mach/hurd/getsockname.c b/sysdeps/mach/hurd/getsockname.c +index 65a69dfdb0833b9c..5d9fc6de3b02283c 100644 +--- a/sysdeps/mach/hurd/getsockname.c ++++ b/sysdeps/mach/hurd/getsockname.c +@@ -24,10 +24,7 @@ + + /* Put the local address of FD into *ADDR and its length in *LEN. */ + int +-__getsockname (fd, addrarg, len) +- int fd; +- __SOCKADDR_ARG addrarg; +- socklen_t *len; ++__getsockname (int fd, __SOCKADDR_ARG addrarg, socklen_t *len) + { + error_t err; + struct sockaddr *addr = addrarg.__sockaddr__; +diff --git a/sysdeps/mach/hurd/group_member.c b/sysdeps/mach/hurd/group_member.c +index 2021a98af79f6e7a..a6eafe944898a45b 100644 +--- a/sysdeps/mach/hurd/group_member.c ++++ b/sysdeps/mach/hurd/group_member.c +@@ -22,8 +22,7 @@ + #include + + int +-__group_member (gid) +- gid_t gid; ++__group_member (gid_t gid) + { + int member = 0; + error_t err; +diff --git a/sysdeps/mach/hurd/isatty.c b/sysdeps/mach/hurd/isatty.c +index 76cb971b130a8c4b..fc23a7fb069a727f 100644 +--- a/sysdeps/mach/hurd/isatty.c ++++ b/sysdeps/mach/hurd/isatty.c +@@ -22,8 +22,7 @@ + + /* Return 1 if FD is a terminal, 0 if not. */ + int +-__isatty (fd) +- int fd; ++__isatty (int fd) + { + error_t err; + mach_port_t id; +diff --git a/sysdeps/mach/hurd/lchown.c b/sysdeps/mach/hurd/lchown.c +index 93973ad64383755e..4bd22088917e59eb 100644 +--- a/sysdeps/mach/hurd/lchown.c ++++ b/sysdeps/mach/hurd/lchown.c +@@ -24,10 +24,7 @@ + /* Change the owner and group of FILE; if it's a link, do the link and + not the target. */ + int +-__lchown (file, owner, group) +- const char *file; +- uid_t owner; +- gid_t group; ++__lchown (const char *file, uid_t owner, gid_t group) + { + error_t err; + file_t port = __file_name_lookup (file, O_NOLINK, 0); +diff --git a/sysdeps/mach/hurd/link.c b/sysdeps/mach/hurd/link.c +index 4a887694557a2840..26e71924364d5695 100644 +--- a/sysdeps/mach/hurd/link.c ++++ b/sysdeps/mach/hurd/link.c +@@ -22,9 +22,7 @@ + + /* Make a link to FROM called TO. */ + int +-__link (from, to) +- const char *from; +- const char *to; ++__link (const char *from, const char *to) + { + error_t err; + file_t oldfile, linknode, todir; +diff --git a/sysdeps/mach/hurd/linkat.c b/sysdeps/mach/hurd/linkat.c +index 48963abab7d6f3ec..5c8fc03f5a323593 100644 +--- a/sysdeps/mach/hurd/linkat.c ++++ b/sysdeps/mach/hurd/linkat.c +@@ -26,12 +26,7 @@ + + /* Make a link to FROM relative to FROMFD called TO relative to TOFD. */ + int +-linkat (fromfd, from, tofd, to, flags) +- int fromfd; +- const char *from; +- int tofd; +- const char *to; +- int flags; ++linkat (int fromfd, const char *from, int tofd, const char *to, int flags) + { + error_t err; + file_t oldfile, linknode, todir; +diff --git a/sysdeps/mach/hurd/listen.c b/sysdeps/mach/hurd/listen.c +index 86b39e9a74e9fdf8..b04042a9d53ab58b 100644 +--- a/sysdeps/mach/hurd/listen.c ++++ b/sysdeps/mach/hurd/listen.c +@@ -26,9 +26,7 @@ + Returns 0 on success, -1 for errors. */ + + int +-__listen (fd, n) +- int fd; +- int n; ++__listen (int fd, int n) + { + error_t err = HURD_DPORT_USE (fd, __socket_listen (port, n)); + if (err) +diff --git a/sysdeps/mach/hurd/mkdir.c b/sysdeps/mach/hurd/mkdir.c +index 8ad648e0a3ebaa0f..9d4b52779523ae55 100644 +--- a/sysdeps/mach/hurd/mkdir.c ++++ b/sysdeps/mach/hurd/mkdir.c +@@ -23,9 +23,7 @@ + + /* Create a directory named FILE_NAME with protections MODE. */ + int +-__mkdir (file_name, mode) +- const char *file_name; +- mode_t mode; ++__mkdir (const char *file_name, mode_t mode) + { + error_t err; + const char *name; +diff --git a/sysdeps/mach/hurd/mkdirat.c b/sysdeps/mach/hurd/mkdirat.c +index d6d672ead91c3d21..f4227cd877c78d53 100644 +--- a/sysdeps/mach/hurd/mkdirat.c ++++ b/sysdeps/mach/hurd/mkdirat.c +@@ -24,10 +24,7 @@ + #include + + int +-mkdirat (fd, path, mode) +- int fd; +- const char *path; +- mode_t mode; ++mkdirat (int fd, const char *path, mode_t mode) + { + error_t err; + const char *name; +diff --git a/sysdeps/mach/hurd/openat.c b/sysdeps/mach/hurd/openat.c +index 402b89e1f0726c08..36170eac08e4ff0a 100644 +--- a/sysdeps/mach/hurd/openat.c ++++ b/sysdeps/mach/hurd/openat.c +@@ -29,10 +29,7 @@ + the directory associated with FD. If O_CREAT or O_TMPFILE is in OFLAG, a + third argument is the file protection. */ + int +-__openat (fd, file, oflag) +- int fd; +- const char *file; +- int oflag; ++__openat (int fd, const char *file, int oflag) + { + mode_t mode; + io_t port; +diff --git a/sysdeps/mach/hurd/poll.c b/sysdeps/mach/hurd/poll.c +index a78d10db4269bca0..040d541204002651 100644 +--- a/sysdeps/mach/hurd/poll.c ++++ b/sysdeps/mach/hurd/poll.c +@@ -28,10 +28,7 @@ + or -1 for errors. */ + + int +-__poll (fds, nfds, timeout) +- struct pollfd *fds; +- nfds_t nfds; +- int timeout; ++__poll (struct pollfd *fds, nfds_t nfds, int timeout) + { + struct timespec ts, *to; + +diff --git a/sysdeps/mach/hurd/readlink.c b/sysdeps/mach/hurd/readlink.c +index fec50acde112534e..4a9f990edc70922e 100644 +--- a/sysdeps/mach/hurd/readlink.c ++++ b/sysdeps/mach/hurd/readlink.c +@@ -25,10 +25,7 @@ + LEN bytes of BUF. The contents are not null-terminated. + Returns the number of characters read, or -1 for errors. */ + ssize_t +-__readlink (file_name, buf, len) +- const char *file_name; +- char *buf; +- size_t len; ++__readlink (const char *file_name, char *buf, size_t len) + { + error_t err; + file_t file; +diff --git a/sysdeps/mach/hurd/readlinkat.c b/sysdeps/mach/hurd/readlinkat.c +index c46522a48e1c5ceb..d4cdadec13330622 100644 +--- a/sysdeps/mach/hurd/readlinkat.c ++++ b/sysdeps/mach/hurd/readlinkat.c +@@ -26,11 +26,7 @@ + than LEN bytes of BUF. The contents are not null-terminated. + Returns the number of characters read, or -1 for errors. */ + ssize_t +-readlinkat (fd, file_name, buf, len) +- int fd; +- const char *file_name; +- char *buf; +- size_t len; ++readlinkat (int fd, const char *file_name, char *buf, size_t len) + { + error_t err; + file_t file; +diff --git a/sysdeps/mach/hurd/recv.c b/sysdeps/mach/hurd/recv.c +index 590f4c01dc93e80d..b6683394fa78595c 100644 +--- a/sysdeps/mach/hurd/recv.c ++++ b/sysdeps/mach/hurd/recv.c +@@ -26,11 +26,7 @@ + Returns the number read or -1 for errors. */ + + ssize_t +-__recv (fd, buf, n, flags) +- int fd; +- void *buf; +- size_t n; +- int flags; ++__recv (int fd, void *buf, size_t n, int flags) + { + error_t err; + mach_port_t addrport; +diff --git a/sysdeps/mach/hurd/rename.c b/sysdeps/mach/hurd/rename.c +index c34cbcc24a331d8e..2f7d2b65861614ed 100644 +--- a/sysdeps/mach/hurd/rename.c ++++ b/sysdeps/mach/hurd/rename.c +@@ -20,9 +20,7 @@ + + /* Rename the file OLD to NEW. */ + int +-rename (old, new) +- const char *old; +- const char *new; ++rename (const char *old, const char *new) + { + error_t err; + file_t olddir, newdir; +diff --git a/sysdeps/mach/hurd/renameat.c b/sysdeps/mach/hurd/renameat.c +index 8ab5906a6742f0a0..98082a7b9575e106 100644 +--- a/sysdeps/mach/hurd/renameat.c ++++ b/sysdeps/mach/hurd/renameat.c +@@ -22,11 +22,7 @@ + + /* Rename the file OLD relative to OLDFD to NEW relative to NEWFD. */ + int +-renameat (oldfd, old, newfd, new) +- int oldfd; +- const char *old; +- int newfd; +- const char *new; ++renameat (int oldfd, const char *old, int newfd, const char *new) + { + error_t err; + file_t olddir, newdir; +diff --git a/sysdeps/mach/hurd/revoke.c b/sysdeps/mach/hurd/revoke.c +index b80cb4a8146dc29b..ef60154e2fdc12d3 100644 +--- a/sysdeps/mach/hurd/revoke.c ++++ b/sysdeps/mach/hurd/revoke.c +@@ -21,8 +21,7 @@ + #include + + int +-revoke (file_name) +- const char *file_name; ++revoke (const char *file_name) + { + error_t err; + file_t file = __file_name_lookup (file_name, 0, 0); +diff --git a/sysdeps/mach/hurd/rewinddir.c b/sysdeps/mach/hurd/rewinddir.c +index 30ceac5e5e208a7a..26adb0115845b64c 100644 +--- a/sysdeps/mach/hurd/rewinddir.c ++++ b/sysdeps/mach/hurd/rewinddir.c +@@ -22,8 +22,7 @@ + + /* Rewind DIRP to the beginning of the directory. */ + void +-rewinddir (dirp) +- DIR *dirp; ++rewinddir (DIR *dirp) + { + seekdir (dirp, (off_t) 0L); + } +diff --git a/sysdeps/mach/hurd/rmdir.c b/sysdeps/mach/hurd/rmdir.c +index 2a5d5f371fabfb93..09a6167a3e75f05f 100644 +--- a/sysdeps/mach/hurd/rmdir.c ++++ b/sysdeps/mach/hurd/rmdir.c +@@ -22,8 +22,7 @@ + + /* Remove the directory FILE_NAME. */ + int +-__rmdir (file_name) +- const char *file_name; ++__rmdir (const char *file_name) + { + error_t err; + const char *name; +diff --git a/sysdeps/mach/hurd/seekdir.c b/sysdeps/mach/hurd/seekdir.c +index 70c3a87432f2afae..1d07b7f929c06e5e 100644 +--- a/sysdeps/mach/hurd/seekdir.c ++++ b/sysdeps/mach/hurd/seekdir.c +@@ -24,9 +24,7 @@ + /* Seek to position POS in DIRP. */ + /* XXX should be __seekdir ? */ + void +-seekdir (dirp, pos) +- DIR *dirp; +- long int pos; ++seekdir (DIR *dirp, long int pos) + { + __libc_lock_lock (dirp->__lock); + /* Change our entry index pointer to POS and discard any data already +diff --git a/sysdeps/mach/hurd/send.c b/sysdeps/mach/hurd/send.c +index 500c6a26e5856b8a..3ef1b153fa5eb213 100644 +--- a/sysdeps/mach/hurd/send.c ++++ b/sysdeps/mach/hurd/send.c +@@ -23,11 +23,7 @@ + + /* Send N bytes of BUF to socket FD. Returns the number sent or -1. */ + ssize_t +-__send (fd, buf, n, flags) +- int fd; +- const void *buf; +- size_t n; +- int flags; ++__send (int fd, const void *buf, size_t n, int flags) + { + error_t err; + size_t wrote; +diff --git a/sysdeps/mach/hurd/setdomain.c b/sysdeps/mach/hurd/setdomain.c +index f3b05172436ae9b0..e9db0ddd517b11de 100644 +--- a/sysdeps/mach/hurd/setdomain.c ++++ b/sysdeps/mach/hurd/setdomain.c +@@ -21,9 +21,7 @@ + /* Set the name of the current YP domain to NAME, which is LEN bytes long. + This call is restricted to the super-user. */ + int +-setdomainname (name, len) +- const char *name; +- size_t len; ++setdomainname (const char *name, size_t len) + { + /* The NIS domain name is just the contents of the file /etc/nisdomain. */ + ssize_t n = _hurd_set_host_config ("/etc/nisdomain", name, len); +diff --git a/sysdeps/mach/hurd/setegid.c b/sysdeps/mach/hurd/setegid.c +index cff169f3f39bb754..6485be03a4879a8c 100644 +--- a/sysdeps/mach/hurd/setegid.c ++++ b/sysdeps/mach/hurd/setegid.c +@@ -24,8 +24,7 @@ + + /* Set the effective user ID of the calling process to GID. */ + int +-setegid (gid) +- gid_t gid; ++setegid (gid_t gid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/seteuid.c b/sysdeps/mach/hurd/seteuid.c +index 200bbda8f487d134..47935fab59917de6 100644 +--- a/sysdeps/mach/hurd/seteuid.c ++++ b/sysdeps/mach/hurd/seteuid.c +@@ -24,8 +24,7 @@ + + /* Set the effective user ID of the calling process to UID. */ + int +-seteuid (uid) +- uid_t uid; ++seteuid (uid_t uid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/setgid.c b/sysdeps/mach/hurd/setgid.c +index b4dcd142cc5f627f..0bd73ea8b2c32602 100644 +--- a/sysdeps/mach/hurd/setgid.c ++++ b/sysdeps/mach/hurd/setgid.c +@@ -27,8 +27,7 @@ + and effective group IDs, and the saved set-group-ID to UID; + if not, the effective group ID is set to GID. */ + int +-__setgid (gid) +- gid_t gid; ++__setgid (gid_t gid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/setgroups.c b/sysdeps/mach/hurd/setgroups.c +index 4b4b40eac6f8a67e..bdc8d052d8a8c3ff 100644 +--- a/sysdeps/mach/hurd/setgroups.c ++++ b/sysdeps/mach/hurd/setgroups.c +@@ -23,9 +23,7 @@ + + /* Set the group set for the current user to GROUPS (N of them). */ + int +-setgroups (n, groups) +- size_t n; +- const gid_t *groups; ++setgroups (size_t n, const gid_t *groups) + { + error_t err; + auth_t newauth; +diff --git a/sysdeps/mach/hurd/sethostid.c b/sysdeps/mach/hurd/sethostid.c +index 7fadf6aa8503876e..0a763f31e26e33fb 100644 +--- a/sysdeps/mach/hurd/sethostid.c ++++ b/sysdeps/mach/hurd/sethostid.c +@@ -25,8 +25,7 @@ + /* XXX should be __sethostid? + isn't hostid supposed to be hardwired and unchangeable? */ + int +-sethostid (id) +- long int id; ++sethostid (long int id) + { + char buf[8], *bp; + ssize_t n; +diff --git a/sysdeps/mach/hurd/sethostname.c b/sysdeps/mach/hurd/sethostname.c +index 433efa32f7125ce5..f0e63c7ea5175da5 100644 +--- a/sysdeps/mach/hurd/sethostname.c ++++ b/sysdeps/mach/hurd/sethostname.c +@@ -22,9 +22,7 @@ + This call is restricted to the super-user. */ + /* XXX should be __sethostname ? */ + int +-sethostname (name, len) +- const char *name; +- size_t len; ++sethostname (const char *name, size_t len) + { + /* The host name is just the contents of the file /etc/hostname. */ + ssize_t n = _hurd_set_host_config ("/etc/hostname", name, len); +diff --git a/sysdeps/mach/hurd/setlogin.c b/sysdeps/mach/hurd/setlogin.c +index 16c230685e91a411..48ab43b302c7dc2a 100644 +--- a/sysdeps/mach/hurd/setlogin.c ++++ b/sysdeps/mach/hurd/setlogin.c +@@ -21,8 +21,7 @@ + + /* Set the login name returned by `getlogin'. */ + int +-setlogin (name) +- const char *name; ++setlogin (const char *name) + { + error_t err; + if (err = __USEPORT (PROC, __proc_setlogin (port, name))) +diff --git a/sysdeps/mach/hurd/setpgid.c b/sysdeps/mach/hurd/setpgid.c +index f3696fc60c0d7cfe..ddce0b7229d1766e 100644 +--- a/sysdeps/mach/hurd/setpgid.c ++++ b/sysdeps/mach/hurd/setpgid.c +@@ -24,9 +24,7 @@ + If PID is zero, the current process's process group ID is set. + If PGID is zero, the process ID of the process is used. */ + int +-__setpgid (pid, pgid) +- pid_t pid; +- pid_t pgid; ++__setpgid (pid_t pid, pid_t pgid) + { + error_t err; + unsigned int stamp; +diff --git a/sysdeps/mach/hurd/setregid.c b/sysdeps/mach/hurd/setregid.c +index f44685731e8aa185..f0f1eb9a383c3bba 100644 +--- a/sysdeps/mach/hurd/setregid.c ++++ b/sysdeps/mach/hurd/setregid.c +@@ -23,9 +23,7 @@ + #include + + int +-__setregid (rgid, egid) +- gid_t rgid; +- gid_t egid; ++__setregid (gid_t rgid, gid_t egid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/setreuid.c b/sysdeps/mach/hurd/setreuid.c +index 72d42c7e15289c18..b68e1e8d43ad44ca 100644 +--- a/sysdeps/mach/hurd/setreuid.c ++++ b/sysdeps/mach/hurd/setreuid.c +@@ -23,9 +23,7 @@ + #include + + int +-__setreuid (ruid, euid) +- uid_t ruid; +- uid_t euid; ++__setreuid (uid_t ruid, uid_t euid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/settimeofday.c b/sysdeps/mach/hurd/settimeofday.c +index ce9bfafa9002f388..6f7fa007b21ff67e 100644 +--- a/sysdeps/mach/hurd/settimeofday.c ++++ b/sysdeps/mach/hurd/settimeofday.c +@@ -23,9 +23,7 @@ + /* Set the current time of day and timezone information. + This call is restricted to the super-user. */ + int +-__settimeofday (tv, tz) +- const struct timeval *tv; +- const struct timezone *tz; ++__settimeofday (const struct timeval *tv, const struct timezone *tz) + { + error_t err; + mach_port_t hostpriv; +diff --git a/sysdeps/mach/hurd/setuid.c b/sysdeps/mach/hurd/setuid.c +index b749159528988ee8..dcf98b6b48d34f01 100644 +--- a/sysdeps/mach/hurd/setuid.c ++++ b/sysdeps/mach/hurd/setuid.c +@@ -27,8 +27,7 @@ + and effective user IDs, and the saved set-user-ID to UID; + if not, the effective user ID is set to UID. */ + int +-__setuid (uid) +- uid_t uid; ++__setuid (uid_t uid) + { + auth_t newauth; + error_t err; +diff --git a/sysdeps/mach/hurd/shutdown.c b/sysdeps/mach/hurd/shutdown.c +index 8cf9d2fbc21e68b8..c2b643896c5a62ab 100644 +--- a/sysdeps/mach/hurd/shutdown.c ++++ b/sysdeps/mach/hurd/shutdown.c +@@ -29,9 +29,7 @@ + Returns 0 on success, -1 for errors. */ + /* XXX should be __shutdown ? */ + int +-shutdown (fd, how) +- int fd; +- int how; ++shutdown (int fd, int how) + { + error_t err = HURD_DPORT_USE (fd, __socket_shutdown (port, how)); + if (err) +diff --git a/sysdeps/mach/hurd/sigaction.c b/sysdeps/mach/hurd/sigaction.c +index 5e97dcdb13a8170b..6e2c738e8aa03c1c 100644 +--- a/sysdeps/mach/hurd/sigaction.c ++++ b/sysdeps/mach/hurd/sigaction.c +@@ -25,10 +25,7 @@ + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + struct hurd_sigstate *ss; + struct sigaction a, old; +diff --git a/sysdeps/mach/hurd/sigaltstack.c b/sysdeps/mach/hurd/sigaltstack.c +index cf87b0059021a5a5..6feea790903f9742 100644 +--- a/sysdeps/mach/hurd/sigaltstack.c ++++ b/sysdeps/mach/hurd/sigaltstack.c +@@ -22,9 +22,7 @@ + /* Run signals handlers on the stack specified by SS (if not NULL). + If OSS is not NULL, it is filled in with the old signal stack status. */ + int +-__sigaltstack (argss, oss) +- const struct sigaltstack *argss; +- struct sigaltstack *oss; ++__sigaltstack (const struct sigaltstack *argss, struct sigaltstack *oss) + { + struct hurd_sigstate *s; + struct sigaltstack ss, old; +diff --git a/sysdeps/mach/hurd/sigpending.c b/sysdeps/mach/hurd/sigpending.c +index 59e5a8e69a8fddff..28c5e3590234db98 100644 +--- a/sysdeps/mach/hurd/sigpending.c ++++ b/sysdeps/mach/hurd/sigpending.c +@@ -24,8 +24,7 @@ + /* Store in SET all signals that are blocked and pending. */ + /* XXX should be __sigpending ? */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + struct hurd_sigstate *ss; + sigset_t pending; +diff --git a/sysdeps/mach/hurd/sigprocmask.c b/sysdeps/mach/hurd/sigprocmask.c +index e90a5f3ebbaa335f..ee62563f3a90bd73 100644 +--- a/sysdeps/mach/hurd/sigprocmask.c ++++ b/sysdeps/mach/hurd/sigprocmask.c +@@ -25,10 +25,7 @@ + according to HOW, which may be SIG_BLOCK, SIG_UNBLOCK or SIG_SETMASK. + If OSET is not NULL, store the old set of blocked signals in *OSET. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + struct hurd_sigstate *ss; + sigset_t old, new; +diff --git a/sysdeps/mach/hurd/sigsuspend.c b/sysdeps/mach/hurd/sigsuspend.c +index 3e611f80afc4b662..10ff5ca6a97d5566 100644 +--- a/sysdeps/mach/hurd/sigsuspend.c ++++ b/sysdeps/mach/hurd/sigsuspend.c +@@ -25,8 +25,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-__sigsuspend (set) +- const sigset_t *set; ++__sigsuspend (const sigset_t *set) + { + struct hurd_sigstate *ss; + sigset_t newmask, oldmask, pending; +diff --git a/sysdeps/mach/hurd/socket.c b/sysdeps/mach/hurd/socket.c +index 00f57b5fbeb9d006..1a0c1f94197b9da8 100644 +--- a/sysdeps/mach/hurd/socket.c ++++ b/sysdeps/mach/hurd/socket.c +@@ -26,10 +26,7 @@ + protocol PROTOCOL. If PROTOCOL is zero, one is chosen automatically. + Returns a file descriptor for the new socket, or -1 for errors. */ + int +-__socket (domain, type, protocol) +- int domain; +- int type; +- int protocol; ++__socket (int domain, int type, int protocol) + { + error_t err; + socket_t sock, server; +diff --git a/sysdeps/mach/hurd/symlink.c b/sysdeps/mach/hurd/symlink.c +index 0754b1893b03d839..eac5f5ba70d4d409 100644 +--- a/sysdeps/mach/hurd/symlink.c ++++ b/sysdeps/mach/hurd/symlink.c +@@ -23,9 +23,7 @@ + + /* Make a link to FROM called TO. */ + int +-__symlink (from, to) +- const char *from; +- const char *to; ++__symlink (const char *from, const char *to) + { + error_t err; + file_t dir, node; +diff --git a/sysdeps/mach/hurd/symlinkat.c b/sysdeps/mach/hurd/symlinkat.c +index ff11ecdc166bc1a3..5342444451ef71c7 100644 +--- a/sysdeps/mach/hurd/symlinkat.c ++++ b/sysdeps/mach/hurd/symlinkat.c +@@ -28,10 +28,7 @@ + + /* Make a link to FROM called TO relative to FD. */ + int +-symlinkat (from, fd, to) +- const char *from; +- int fd; +- const char *to; ++symlinkat (const char *from, int fd, const char *to) + { + error_t err; + file_t dir, node; +diff --git a/sysdeps/mach/hurd/telldir.c b/sysdeps/mach/hurd/telldir.c +index 983e1fc667e9d7ce..bae50b10b60050a5 100644 +--- a/sysdeps/mach/hurd/telldir.c ++++ b/sysdeps/mach/hurd/telldir.c +@@ -25,8 +25,7 @@ + /* Return the current position of DIRP. */ + /* XXX should be __telldir ? */ + long int +-telldir (dirp) +- DIR *dirp; ++telldir (DIR *dirp) + { + return dirp->__entry_ptr; + } +diff --git a/sysdeps/mach/hurd/truncate.c b/sysdeps/mach/hurd/truncate.c +index d93daffda751f6b1..6c530493ecc5ee07 100644 +--- a/sysdeps/mach/hurd/truncate.c ++++ b/sysdeps/mach/hurd/truncate.c +@@ -23,9 +23,7 @@ + + /* Truncate FILE_NAME to LENGTH bytes. */ + int +-__truncate (file_name, length) +- const char *file_name; +- off_t length; ++__truncate (const char *file_name, off_t length) + { + error_t err; + file_t file = __file_name_lookup (file_name, O_WRITE, 0); +diff --git a/sysdeps/mach/hurd/umask.c b/sysdeps/mach/hurd/umask.c +index 81d6d69f03ec172d..a7f0ca479a3d344f 100644 +--- a/sysdeps/mach/hurd/umask.c ++++ b/sysdeps/mach/hurd/umask.c +@@ -20,8 +20,7 @@ + + /* Set the file creation mask to MASK, returning the old mask. */ + mode_t +-__umask (mask) +- mode_t mask; ++__umask (mode_t mask) + { + mode_t omask; + mask &= 0777; +diff --git a/sysdeps/mach/hurd/unlink.c b/sysdeps/mach/hurd/unlink.c +index e3a0b419c41fdde1..fe6f092348b1954f 100644 +--- a/sysdeps/mach/hurd/unlink.c ++++ b/sysdeps/mach/hurd/unlink.c +@@ -23,8 +23,7 @@ + + /* Remove the link named NAME. */ + int +-__unlink (name) +- const char *name; ++__unlink (const char *name) + { + error_t err; + file_t dir; +diff --git a/sysdeps/mach/hurd/unlinkat.c b/sysdeps/mach/hurd/unlinkat.c +index 7ee4d37a64d0063b..a756446a9315789c 100644 +--- a/sysdeps/mach/hurd/unlinkat.c ++++ b/sysdeps/mach/hurd/unlinkat.c +@@ -26,10 +26,7 @@ + + /* Remove the link named NAME. */ + int +-unlinkat (fd, name, flag) +- int fd; +- const char *name; +- int flag; ++unlinkat (int fd, const char *name, int flag) + { + error_t err; + file_t dir; +diff --git a/sysdeps/mips/mips64/__longjmp.c b/sysdeps/mips/mips64/__longjmp.c +index a6f31cb5adfd8ff8..608dee8ab1eb16ea 100644 +--- a/sysdeps/mips/mips64/__longjmp.c ++++ b/sysdeps/mips/mips64/__longjmp.c +@@ -26,9 +26,7 @@ + #endif + + void +-__longjmp (env_arg, val_arg) +- __jmp_buf env_arg; +- int val_arg; ++__longjmp (__jmp_buf env_arg, int val_arg) + { + /* gcc 1.39.19 miscompiled the longjmp routine (as it did setjmp before + the hack around it); force it to use $a1 for the longjmp value. +diff --git a/sysdeps/posix/alarm.c b/sysdeps/posix/alarm.c +index 730f2c4c770baa61..2b731c9d73e18301 100644 +--- a/sysdeps/posix/alarm.c ++++ b/sysdeps/posix/alarm.c +@@ -26,8 +26,7 @@ + to 0 and check its value after calling `alarm', and this might tell you. + The signal may come late due to processor scheduling. */ + unsigned int +-alarm (seconds) +- unsigned int seconds; ++alarm (unsigned int seconds) + { + struct itimerval old, new; + unsigned int retval; +diff --git a/sysdeps/posix/cuserid.c b/sysdeps/posix/cuserid.c +index 2134f6835282512e..891b5f53c4d5b298 100644 +--- a/sysdeps/posix/cuserid.c ++++ b/sysdeps/posix/cuserid.c +@@ -25,8 +25,7 @@ + If S is not NULL, it points to a buffer of at least L_cuserid bytes + into which the name is copied; otherwise, a static buffer is used. */ + char * +-cuserid (s) +- char *s; ++cuserid (char *s) + { + static char name[L_cuserid]; + char buf[NSS_BUFLEN_PASSWD]; +diff --git a/sysdeps/posix/dirfd.c b/sysdeps/posix/dirfd.c +index 536c44e30e4bdd08..e841863e2e8fb81a 100644 +--- a/sysdeps/posix/dirfd.c ++++ b/sysdeps/posix/dirfd.c +@@ -22,8 +22,7 @@ + #undef dirfd + + int +-dirfd (dirp) +- DIR *dirp; ++dirfd (DIR *dirp) + { + return dirp->fd; + } +diff --git a/sysdeps/posix/dup.c b/sysdeps/posix/dup.c +index ff9eab3d27b16cbf..da65148ea9975903 100644 +--- a/sysdeps/posix/dup.c ++++ b/sysdeps/posix/dup.c +@@ -22,8 +22,7 @@ + + /* Duplicate FD, returning a new file descriptor open on the same file. */ + int +-__dup (fd) +- int fd; ++__dup (int fd) + { + return fcntl (fd, F_DUPFD, 0); + } +diff --git a/sysdeps/posix/dup2.c b/sysdeps/posix/dup2.c +index 3dafd83abcb47ac3..e4a009d7a286c689 100644 +--- a/sysdeps/posix/dup2.c ++++ b/sysdeps/posix/dup2.c +@@ -23,9 +23,7 @@ + /* Duplicate FD to FD2, closing the old FD2 and making FD2 be + open the same file as FD is. Return FD2 or -1. */ + int +-__dup2 (fd, fd2) +- int fd; +- int fd2; ++__dup2 (int fd, int fd2) + { + int save; + +diff --git a/sysdeps/posix/euidaccess.c b/sysdeps/posix/euidaccess.c +index e7901866bddce39b..2250ec90e50746cb 100644 +--- a/sysdeps/posix/euidaccess.c ++++ b/sysdeps/posix/euidaccess.c +@@ -117,9 +117,7 @@ int group_member (); + filesystem, text busy, etc. */ + + int +-euidaccess (path, mode) +- const char *path; +- int mode; ++euidaccess (const char *path, int mode) + { + struct stat64 stats; + int granted; +@@ -196,9 +194,7 @@ weak_alias (__euidaccess, eaccess) + char *program_name; + + int +-main (argc, argv) +- int argc; +- char **argv; ++main (int argc, char **argv) + { + char *file; + int mode; +diff --git a/sysdeps/posix/flock.c b/sysdeps/posix/flock.c +index 4b9b9ac9ce990922..39ccdeb1a2e24ba4 100644 +--- a/sysdeps/posix/flock.c ++++ b/sysdeps/posix/flock.c +@@ -27,9 +27,7 @@ + /* Apply or remove an advisory lock, according to OPERATION, + on the file FD refers to. */ + int +-__flock (fd, operation) +- int fd; +- int operation; ++__flock (int fd, int operation) + { + struct flock lbuf; + +diff --git a/sysdeps/posix/fpathconf.c b/sysdeps/posix/fpathconf.c +index 7b072fa3ca155929..f5b33d2361a31ec4 100644 +--- a/sysdeps/posix/fpathconf.c ++++ b/sysdeps/posix/fpathconf.c +@@ -27,9 +27,7 @@ + + /* Get file-specific information about descriptor FD. */ + long int +-__fpathconf (fd, name) +- int fd; +- int name; ++__fpathconf (int fd, int name) + { + if (fd < 0) + { +diff --git a/sysdeps/posix/getcwd.c b/sysdeps/posix/getcwd.c +index 366abb34575c5809..2df6e6e26efc566e 100644 +--- a/sysdeps/posix/getcwd.c ++++ b/sysdeps/posix/getcwd.c +@@ -218,9 +218,7 @@ static int __rtld_have_atfcts; + unless SIZE == 0, in which case it is as big as necessary. */ + + GETCWD_RETURN_TYPE +-__getcwd (buf, size) +- char *buf; +- size_t size; ++__getcwd (char *buf, size_t size) + { + #ifndef __ASSUME_ATFCTS + static const char dots[] +diff --git a/sysdeps/posix/gethostname.c b/sysdeps/posix/gethostname.c +index a63845b02bd651f0..8510c58066a356e7 100644 +--- a/sysdeps/posix/gethostname.c ++++ b/sysdeps/posix/gethostname.c +@@ -24,9 +24,7 @@ + The result is null-terminated if LEN is large enough for the full + name and the terminator. */ + int +-__gethostname (name, len) +- char *name; +- size_t len; ++__gethostname (char *name, size_t len) + { + struct utsname buf; + size_t node_len; +diff --git a/sysdeps/posix/gettimeofday.c b/sysdeps/posix/gettimeofday.c +index 1108ff016705d73d..6ee918585713a95a 100644 +--- a/sysdeps/posix/gettimeofday.c ++++ b/sysdeps/posix/gettimeofday.c +@@ -23,9 +23,7 @@ + putting it into *TV and *TZ. If TZ is NULL, *TZ is not filled. + Returns 0 on success, -1 on errors. */ + int +-__gettimeofday (tv, tz) +- struct timeval *tv; +- struct timezone *tz; ++__gettimeofday (struct timeval *tv, struct timezone *tz) + { + if (tv == NULL) + { +diff --git a/sysdeps/posix/isatty.c b/sysdeps/posix/isatty.c +index 0226bf4f7d447506..16ce14c0963bd40d 100644 +--- a/sysdeps/posix/isatty.c ++++ b/sysdeps/posix/isatty.c +@@ -20,8 +20,7 @@ + + /* Return 1 if FD is a terminal, 0 if not. */ + int +-__isatty (fd) +- int fd; ++__isatty (int fd) + { + struct termios term; + +diff --git a/sysdeps/posix/killpg.c b/sysdeps/posix/killpg.c +index 570ac90b562da74b..7e4918621e293ba6 100644 +--- a/sysdeps/posix/killpg.c ++++ b/sysdeps/posix/killpg.c +@@ -23,9 +23,7 @@ + If PGRP is zero, send SIG to all processes in + the current process's process group. */ + int +-killpg (pgrp, sig) +- __pid_t pgrp; +- int sig; ++killpg (__pid_t pgrp, int sig) + { + if (pgrp < 0) + { +diff --git a/sysdeps/posix/libc_fatal.c b/sysdeps/posix/libc_fatal.c +index 6b741297ce818235..c74bc5818cb33778 100644 +--- a/sysdeps/posix/libc_fatal.c ++++ b/sysdeps/posix/libc_fatal.c +@@ -164,8 +164,7 @@ __libc_message (int do_abort, const char *fmt, ...) + + + void +-__libc_fatal (message) +- const char *message; ++__libc_fatal (const char *message) + { + /* The loop is added only to keep gcc happy. */ + while (1) +diff --git a/sysdeps/posix/mkfifoat.c b/sysdeps/posix/mkfifoat.c +index 33fa6bde7118aa83..cc752e5a0891dd54 100644 +--- a/sysdeps/posix/mkfifoat.c ++++ b/sysdeps/posix/mkfifoat.c +@@ -21,10 +21,7 @@ + /* Create a new FIFO with permission bits MODE. But interpret + relative PATH names relative to the directory associated with FD. */ + int +-mkfifoat (fd, file, mode) +- int fd; +- const char *file; +- mode_t mode; ++mkfifoat (int fd, const char *file, mode_t mode) + { + dev_t dev = 0; + return __xmknodat (_MKNOD_VER, fd, file, mode | S_IFIFO, &dev); +diff --git a/sysdeps/posix/raise.c b/sysdeps/posix/raise.c +index 58d13fc194da5ed6..7d011bd0bdd90080 100644 +--- a/sysdeps/posix/raise.c ++++ b/sysdeps/posix/raise.c +@@ -20,8 +20,7 @@ + + /* Raise the signal SIG. */ + int +-raise (sig) +- int sig; ++raise (int sig) + { + return __kill (__getpid (), sig); + } +diff --git a/sysdeps/posix/remove.c b/sysdeps/posix/remove.c +index be0c5ad1280ef50d..135c6359f3c9d5e4 100644 +--- a/sysdeps/posix/remove.c ++++ b/sysdeps/posix/remove.c +@@ -27,8 +27,7 @@ + + + int +-remove (file) +- const char *file; ++remove (const char *file) + { + /* First try to unlink since this is more frequently the necessary action. */ + if (__unlink (file) != 0 +diff --git a/sysdeps/posix/rename.c b/sysdeps/posix/rename.c +index 8bb6a04c17b15478..4cb2f20bd45ac8e4 100644 +--- a/sysdeps/posix/rename.c ++++ b/sysdeps/posix/rename.c +@@ -21,9 +21,7 @@ + + /* Rename the file OLD to NEW. */ + int +-rename (old, new) +- const char *old; +- const char *new; ++rename (const char *old, const char *new) + { + int save = errno; + if (__link (old, new) < 0) +diff --git a/sysdeps/posix/rewinddir.c b/sysdeps/posix/rewinddir.c +index f8f411e36af7b022..5b91982060c2a140 100644 +--- a/sysdeps/posix/rewinddir.c ++++ b/sysdeps/posix/rewinddir.c +@@ -23,8 +23,7 @@ + + /* Rewind DIRP to the beginning of the directory. */ + void +-rewinddir (dirp) +- DIR *dirp; ++rewinddir (DIR *dirp) + { + #if IS_IN (libc) + __libc_lock_lock (dirp->lock); +diff --git a/sysdeps/posix/seekdir.c b/sysdeps/posix/seekdir.c +index 88e34ee28ffa8273..691048137a15d5b4 100644 +--- a/sysdeps/posix/seekdir.c ++++ b/sysdeps/posix/seekdir.c +@@ -24,9 +24,7 @@ + /* Seek to position POS in DIRP. */ + /* XXX should be __seekdir ? */ + void +-seekdir (dirp, pos) +- DIR *dirp; +- long int pos; ++seekdir (DIR *dirp, long int pos) + { + __libc_lock_lock (dirp->lock); + (void) __lseek (dirp->fd, pos, SEEK_SET); +diff --git a/sysdeps/posix/sigblock.c b/sysdeps/posix/sigblock.c +index a5d01fe7456ede38..767bd491c4d04d63 100644 +--- a/sysdeps/posix/sigblock.c ++++ b/sysdeps/posix/sigblock.c +@@ -22,8 +22,7 @@ + + /* Block signals in MASK, returning the old mask. */ + int +-__sigblock (mask) +- int mask; ++__sigblock (int mask) + { + sigset_t set, oset; + +diff --git a/sysdeps/posix/sigignore.c b/sysdeps/posix/sigignore.c +index 71e9d087fb5e74af..c0e848bec18912c6 100644 +--- a/sysdeps/posix/sigignore.c ++++ b/sysdeps/posix/sigignore.c +@@ -25,8 +25,7 @@ + + + int +-sigignore (sig) +- int sig; ++sigignore (int sig) + { + struct sigaction act; + +diff --git a/sysdeps/posix/sigintr.c b/sysdeps/posix/sigintr.c +index 86ae054d9dcbd828..5bafe610923b25d2 100644 +--- a/sysdeps/posix/sigintr.c ++++ b/sysdeps/posix/sigintr.c +@@ -23,9 +23,7 @@ + (causing them to fail with EINTR); if INTERRUPT is zero, make system + calls be restarted after signal SIG. */ + int +-siginterrupt (sig, interrupt) +- int sig; +- int interrupt; ++siginterrupt (int sig, int interrupt) + { + #ifdef SA_RESTART + extern sigset_t _sigintr attribute_hidden; /* Defined in signal.c. */ +diff --git a/sysdeps/posix/signal.c b/sysdeps/posix/signal.c +index 33805be881729e72..6311cfcfa74749a7 100644 +--- a/sysdeps/posix/signal.c ++++ b/sysdeps/posix/signal.c +@@ -27,9 +27,7 @@ sigset_t _sigintr attribute_hidden; /* Set by siginterrupt. */ + /* Set the handler for the signal SIG to HANDLER, + returning the old handler, or SIG_ERR on error. */ + __sighandler_t +-__bsd_signal (sig, handler) +- int sig; +- __sighandler_t handler; ++__bsd_signal (int sig, __sighandler_t handler) + { + struct sigaction act, oact; + +diff --git a/sysdeps/posix/sigset.c b/sysdeps/posix/sigset.c +index a9c9e8174134828b..3b4b8049a6de9f2c 100644 +--- a/sysdeps/posix/sigset.c ++++ b/sysdeps/posix/sigset.c +@@ -24,9 +24,7 @@ + + /* Set the disposition for SIG. */ + __sighandler_t +-sigset (sig, disp) +- int sig; +- __sighandler_t disp; ++sigset (int sig, __sighandler_t disp) + { + struct sigaction act; + struct sigaction oact; +diff --git a/sysdeps/posix/sigsuspend.c b/sysdeps/posix/sigsuspend.c +index 6b84162525b571a3..63e7c08e48e8e73e 100644 +--- a/sysdeps/posix/sigsuspend.c ++++ b/sysdeps/posix/sigsuspend.c +@@ -24,8 +24,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-__sigsuspend (set) +- const sigset_t *set; ++__sigsuspend (const sigset_t *set) + { + sigset_t oset; + int save; +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index 88aa151422dc56f9..4d74d57c8a65dc29 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -48,8 +48,7 @@ static long int __sysconf_check_spec (const char *spec); + + /* Get the value of the system variable NAME. */ + long int +-__sysconf (name) +- int name; ++__sysconf (int name) + { + switch (name) + { +diff --git a/sysdeps/posix/sysv_signal.c b/sysdeps/posix/sysv_signal.c +index f280696233042b09..a8fb2b157578e90a 100644 +--- a/sysdeps/posix/sysv_signal.c ++++ b/sysdeps/posix/sysv_signal.c +@@ -34,9 +34,7 @@ + /* Set the handler for the signal SIG to HANDLER, + returning the old handler, or SIG_ERR on error. */ + __sighandler_t +-__sysv_signal (sig, handler) +- int sig; +- __sighandler_t handler; ++__sysv_signal (int sig, __sighandler_t handler) + { + struct sigaction act, oact; + +diff --git a/sysdeps/posix/time.c b/sysdeps/posix/time.c +index e026a384df6fbd6d..39042030f20235b4 100644 +--- a/sysdeps/posix/time.c ++++ b/sysdeps/posix/time.c +@@ -23,8 +23,7 @@ + /* Return the current time as a `time_t' and also put it in *T if T is + not NULL. Time is represented as seconds from Jan 1 00:00:00 1970. */ + time_t +-time (t) +- time_t *t; ++time (time_t *t) + { + struct timeval tv; + time_t result; +diff --git a/sysdeps/posix/ttyname.c b/sysdeps/posix/ttyname.c +index 1fe985984591559f..16af52c5083bbd62 100644 +--- a/sysdeps/posix/ttyname.c ++++ b/sysdeps/posix/ttyname.c +@@ -35,12 +35,7 @@ libc_freeres_ptr (static char *getttyname_name); + + static char * + internal_function +-getttyname (fd, mydev, myino, save, dostat) +- int fd; +- dev_t mydev; +- ino_t myino; +- int save; +- int *dostat; ++getttyname (int fd, dev_t mydev, ino_t myino, int save, int *dostat) + { + static const char dev[] = "/dev"; + static size_t namelen; +@@ -101,8 +96,7 @@ getttyname (fd, mydev, myino, save, dostat) + /* Return the pathname of the terminal FD is open on, or NULL on errors. + The returned storage is good only until the next call to this function. */ + char * +-ttyname (fd) +- int fd; ++ttyname (int fd) + { + struct stat st; + int dostat = 0; +diff --git a/sysdeps/posix/ttyname_r.c b/sysdeps/posix/ttyname_r.c +index e8ef55fc19a3d3c8..bf8399d36d0e4541 100644 +--- a/sysdeps/posix/ttyname_r.c ++++ b/sysdeps/posix/ttyname_r.c +@@ -101,10 +101,7 @@ getttyname_r (fd, buf, buflen, mydev, myino, save, dostat) + /* Store at most BUFLEN character of the pathname of the terminal FD is + open on in BUF. Return 0 on success, otherwise an error number. */ + int +-__ttyname_r (fd, buf, buflen) +- int fd; +- char *buf; +- size_t buflen; ++__ttyname_r (int fd, char *buf, size_t buflen) + { + struct stat st; + int dostat = 0; +diff --git a/sysdeps/posix/utime.c b/sysdeps/posix/utime.c +index a750ecc290f6f678..a031fbe9da00f2be 100644 +--- a/sysdeps/posix/utime.c ++++ b/sysdeps/posix/utime.c +@@ -26,9 +26,7 @@ + /* Set the access and modification times of FILE to those given in TIMES. + If TIMES is NULL, set them to the current time. */ + int +-utime (file, times) +- const char *file; +- const struct utimbuf *times; ++utime (const char *file, const struct utimbuf *times) + { + struct timeval timevals[2]; + struct timeval *tvp; +diff --git a/sysdeps/powerpc/fpu/s_isnan.c b/sysdeps/powerpc/fpu/s_isnan.c +index 777d3518f6ec5afb..cd396eb7369ea1e4 100644 +--- a/sysdeps/powerpc/fpu/s_isnan.c ++++ b/sysdeps/powerpc/fpu/s_isnan.c +@@ -36,8 +36,7 @@ hidden_proto (__isnanf) + + + int +-__isnan (x) +- double x; ++__isnan (double x) + { + fenv_t savedstate; + int result; +diff --git a/sysdeps/pthread/aio_read.c b/sysdeps/pthread/aio_read.c +index d02eb7b855611492..7ffeb29abafb5257 100644 +--- a/sysdeps/pthread/aio_read.c ++++ b/sysdeps/pthread/aio_read.c +@@ -23,8 +23,7 @@ + + + int +-aio_read (aiocbp) +- struct aiocb *aiocbp; ++aio_read (struct aiocb *aiocbp) + { + return (__aio_enqueue_request ((aiocb_union *) aiocbp, LIO_READ) == NULL + ? -1 : 0); +diff --git a/sysdeps/pthread/aio_read64.c b/sysdeps/pthread/aio_read64.c +index 2fcf39fb9156421c..d426a05c5a902eaa 100644 +--- a/sysdeps/pthread/aio_read64.c ++++ b/sysdeps/pthread/aio_read64.c +@@ -23,8 +23,7 @@ + + + int +-aio_read64 (aiocbp) +- struct aiocb64 *aiocbp; ++aio_read64 (struct aiocb64 *aiocbp) + { + return (__aio_enqueue_request ((aiocb_union *) aiocbp, LIO_READ64) == NULL + ? -1 : 0); +diff --git a/sysdeps/pthread/aio_write.c b/sysdeps/pthread/aio_write.c +index 823e365c867ef251..0ad0fde8640016ed 100644 +--- a/sysdeps/pthread/aio_write.c ++++ b/sysdeps/pthread/aio_write.c +@@ -23,8 +23,7 @@ + + + int +-aio_write (aiocbp) +- struct aiocb *aiocbp; ++aio_write (struct aiocb *aiocbp) + { + return (__aio_enqueue_request ((aiocb_union *) aiocbp, LIO_WRITE) == NULL + ? -1 : 0); +diff --git a/sysdeps/pthread/aio_write64.c b/sysdeps/pthread/aio_write64.c +index 0cec64d292d490b4..1d3905a4b6437ebe 100644 +--- a/sysdeps/pthread/aio_write64.c ++++ b/sysdeps/pthread/aio_write64.c +@@ -23,8 +23,7 @@ + + + int +-aio_write64 (aiocbp) +- struct aiocb64 *aiocbp; ++aio_write64 (struct aiocb64 *aiocbp) + { + return (__aio_enqueue_request ((aiocb_union *) aiocbp, LIO_WRITE64) == NULL + ? -1 : 0); +diff --git a/sysdeps/s390/ffs.c b/sysdeps/s390/ffs.c +index 1e22f635939284c0..a01c5e3060badf81 100644 +--- a/sysdeps/s390/ffs.c ++++ b/sysdeps/s390/ffs.c +@@ -29,8 +29,7 @@ + differs in spirit from the above ffz (man ffs). */ + + int +-__ffs (x) +- int x; ++__ffs (int x) + { + int r; + +diff --git a/sysdeps/sparc/sparc32/e_sqrt.c b/sysdeps/sparc/sparc32/e_sqrt.c +index 30165192c65854c6..f47e9601f00d0d2e 100644 +--- a/sysdeps/sparc/sparc32/e_sqrt.c ++++ b/sysdeps/sparc/sparc32/e_sqrt.c +@@ -24,8 +24,7 @@ + + /* Return the square root of X. */ + double +-__ieee754_sqrt (x) +- double x; ++__ieee754_sqrt (double x) + { + register double result; + asm ("fsqrtd %1, %0" : "=f" (result) : "f" (x)); +diff --git a/sysdeps/tile/wordcopy.c b/sysdeps/tile/wordcopy.c +index f978d8fdcb14e73a..d939eaa09d0075a8 100644 +--- a/sysdeps/tile/wordcopy.c ++++ b/sysdeps/tile/wordcopy.c +@@ -42,10 +42,7 @@ + Both SRCP and DSTP should be aligned for memory operations on `op_t's. */ + + void +-_wordcopy_fwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + +@@ -156,10 +153,7 @@ _wordcopy_fwd_aligned (dstp, srcp, len) + *not* be aligned. */ + + void +-_wordcopy_fwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + void * srci; + op_t a0, a1, a2, a3; +@@ -246,10 +240,7 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len) + operations on `op_t's. */ + + void +-_wordcopy_bwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + long int srcp1; +@@ -357,10 +348,7 @@ _wordcopy_bwd_aligned (dstp, srcp, len) + operations on `op_t', but SRCP must *not* be aligned. */ + + void +-_wordcopy_bwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + void * srci; + op_t a0, a1, a2, a3; +diff --git a/sysdeps/unix/bsd/ftime.c b/sysdeps/unix/bsd/ftime.c +index 7c6dd29390dccff6..c7dda3fea71e96a9 100644 +--- a/sysdeps/unix/bsd/ftime.c ++++ b/sysdeps/unix/bsd/ftime.c +@@ -19,8 +19,7 @@ + #include + + int +-ftime (timebuf) +- struct timeb *timebuf; ++ftime (struct timeb *timebuf) + { + struct timeval tv; + struct timezone tz; +diff --git a/sysdeps/unix/bsd/gtty.c b/sysdeps/unix/bsd/gtty.c +index 4e1b7a2153e69578..8fd6e8a0e2742713 100644 +--- a/sysdeps/unix/bsd/gtty.c ++++ b/sysdeps/unix/bsd/gtty.c +@@ -20,9 +20,7 @@ + + /* Fill in *PARAMS with terminal parameters associated with FD. */ + int +-gtty (fd, params) +- int fd; +- struct sgttyb *params; ++gtty (int fd, struct sgttyb *params) + { + return ioctl (fd, TIOCGETP, (void *) params); + } +diff --git a/sysdeps/unix/bsd/stty.c b/sysdeps/unix/bsd/stty.c +index 1d630dc0b9ad365d..a13876028bf5d953 100644 +--- a/sysdeps/unix/bsd/stty.c ++++ b/sysdeps/unix/bsd/stty.c +@@ -20,9 +20,7 @@ + + /* Set the terminal parameters associated with FD to *PARAMS. */ + int +-stty (fd, params) +- int fd; +- const struct sgttyb *params; ++stty (int fd, const struct sgttyb *params) + { + return ioctl (fd, TIOCSETP, (void *) params); + } +diff --git a/sysdeps/unix/bsd/tcflow.c b/sysdeps/unix/bsd/tcflow.c +index dff63a5f28582165..4461395baa46836b 100644 +--- a/sysdeps/unix/bsd/tcflow.c ++++ b/sysdeps/unix/bsd/tcflow.c +@@ -24,9 +24,7 @@ + + /* Suspend or restart transmission on FD. */ + int +-tcflow (fd, action) +- int fd; +- int action; ++tcflow (int fd, int action) + { + switch (action) + { +diff --git a/sysdeps/unix/bsd/tcflush.c b/sysdeps/unix/bsd/tcflush.c +index 15d86e00541872fc..c87201222017d3d8 100644 +--- a/sysdeps/unix/bsd/tcflush.c ++++ b/sysdeps/unix/bsd/tcflush.c +@@ -24,9 +24,7 @@ + + /* Flush pending data on FD. */ + int +-tcflush (fd, queue_selector) +- int fd; +- int queue_selector; ++tcflush (int fd, int queue_selector) + { + int arg; + +diff --git a/sysdeps/unix/bsd/tcgetattr.c b/sysdeps/unix/bsd/tcgetattr.c +index 140262f17d82fbdf..93b94e57d5d0752b 100644 +--- a/sysdeps/unix/bsd/tcgetattr.c ++++ b/sysdeps/unix/bsd/tcgetattr.c +@@ -30,9 +30,7 @@ + + /* Put the state of FD into *TERMIOS_P. */ + int +-__tcgetattr (fd, termios_p) +- int fd; +- struct termios *termios_p; ++__tcgetattr (int fd, struct termios *termios_p) + { + return __ioctl (fd, TIOCGETA, termios_p); + } +diff --git a/sysdeps/unix/bsd/tcgetpgrp.c b/sysdeps/unix/bsd/tcgetpgrp.c +index 6f675a89a86f62ba..3bfb74082963493e 100644 +--- a/sysdeps/unix/bsd/tcgetpgrp.c ++++ b/sysdeps/unix/bsd/tcgetpgrp.c +@@ -22,8 +22,7 @@ + + /* Return the foreground process group ID of FD. */ + pid_t +-tcgetpgrp (fd) +- int fd; ++tcgetpgrp (int fd) + { + int pgrp; + +diff --git a/sysdeps/unix/bsd/tcsendbrk.c b/sysdeps/unix/bsd/tcsendbrk.c +index af6a71b34de0165c..61216f7442dfe468 100644 +--- a/sysdeps/unix/bsd/tcsendbrk.c ++++ b/sysdeps/unix/bsd/tcsendbrk.c +@@ -27,9 +27,7 @@ + + /* Send zero bits on FD. */ + int +-tcsendbreak (fd, duration) +- int fd; +- int duration; ++tcsendbreak (int fd, int duration) + { + struct timeval delay; + +diff --git a/sysdeps/unix/bsd/tcsetattr.c b/sysdeps/unix/bsd/tcsetattr.c +index 8a5f71e713a2d17c..89b315a2e77aa314 100644 +--- a/sysdeps/unix/bsd/tcsetattr.c ++++ b/sysdeps/unix/bsd/tcsetattr.c +@@ -32,10 +32,7 @@ + + /* Set the state of FD to *TERMIOS_P. */ + int +-tcsetattr (fd, optional_actions, termios_p) +- int fd; +- int optional_actions; +- const struct termios *termios_p; ++tcsetattr (int fd, int optional_actions, const struct termios *termios_p) + { + struct termios myt; + +diff --git a/sysdeps/unix/bsd/tcsetpgrp.c b/sysdeps/unix/bsd/tcsetpgrp.c +index 25ffb7fc35d5fc70..3d3347ee7cf1e9ad 100644 +--- a/sysdeps/unix/bsd/tcsetpgrp.c ++++ b/sysdeps/unix/bsd/tcsetpgrp.c +@@ -22,9 +22,7 @@ + + /* Set the foreground process group ID of FD set PGRP_ID. */ + int +-tcsetpgrp (fd, pgrp_id) +- int fd; +- pid_t pgrp_id; ++tcsetpgrp (int fd, pid_t pgrp_id) + { + return __ioctl (fd, TIOCSPGRP, &pgrp_id); + } +diff --git a/sysdeps/unix/bsd/ualarm.c b/sysdeps/unix/bsd/ualarm.c +index 9505d214819d68d5..c2f899baa5c05b05 100644 +--- a/sysdeps/unix/bsd/ualarm.c ++++ b/sysdeps/unix/bsd/ualarm.c +@@ -24,9 +24,7 @@ + + Returns the number of microseconds remaining before the alarm. */ + useconds_t +-ualarm (value, interval) +- useconds_t value; +- useconds_t interval; ++ualarm (useconds_t value, useconds_t interval) + { + struct itimerval timer, otimer; + +diff --git a/sysdeps/unix/bsd/wait3.c b/sysdeps/unix/bsd/wait3.c +index d3056c1fd700b3df..97170d15ad34a4d9 100644 +--- a/sysdeps/unix/bsd/wait3.c ++++ b/sysdeps/unix/bsd/wait3.c +@@ -25,10 +25,7 @@ + there. If the WUNTRACED bit is set in OPTIONS, return status for stopped + children; otherwise don't. */ + pid_t +-__wait3 (stat_loc, options, usage) +- __WAIT_STATUS stat_loc; +- int options; +- struct rusage *usage; ++__wait3 (__WAIT_STATUS stat_loc, int options, struct rusage *usage) + { + return __wait4 (WAIT_ANY, stat_loc, options, usage); + } +diff --git a/sysdeps/unix/getlogin_r.c b/sysdeps/unix/getlogin_r.c +index 84c019fe6af28150..1957db10b51b3721 100644 +--- a/sysdeps/unix/getlogin_r.c ++++ b/sysdeps/unix/getlogin_r.c +@@ -34,9 +34,7 @@ + STATIC + #endif + int +-getlogin_r (name, name_len) +- char *name; +- size_t name_len; ++getlogin_r (char *name, size_t name_len) + { + char tty_pathname[2 + 2 * NAME_MAX]; + char *real_tty_path = tty_pathname; +diff --git a/sysdeps/unix/sockatmark.c b/sysdeps/unix/sockatmark.c +index 94ae1384462fecdb..30f76c2d7a504cc9 100644 +--- a/sysdeps/unix/sockatmark.c ++++ b/sysdeps/unix/sockatmark.c +@@ -20,8 +20,7 @@ + + /* Determine wheter socket is at a out-of-band mark. */ + int +-sockatmark (fd) +- int fd; ++sockatmark (int fd) + { + int answ; + +diff --git a/sysdeps/unix/stime.c b/sysdeps/unix/stime.c +index ca011c94d820f88f..77895a7cea558010 100644 +--- a/sysdeps/unix/stime.c ++++ b/sysdeps/unix/stime.c +@@ -23,8 +23,7 @@ + /* Set the system clock to *WHEN. */ + + int +-stime (when) +- const time_t *when; ++stime (const time_t *when) + { + struct timeval tv; + +diff --git a/sysdeps/unix/sysv/linux/_exit.c b/sysdeps/unix/sysv/linux/_exit.c +index 18c4fce07d10f5cb..44773888ae6d702a 100644 +--- a/sysdeps/unix/sysv/linux/_exit.c ++++ b/sysdeps/unix/sysv/linux/_exit.c +@@ -23,8 +23,7 @@ + + + void +-_exit (status) +- int status; ++_exit (int status) + { + while (1) + { +diff --git a/sysdeps/unix/sysv/linux/aio_sigqueue.c b/sysdeps/unix/sysv/linux/aio_sigqueue.c +index 9ad149fe32fb214b..2ae83f1c2e6f6673 100644 +--- a/sysdeps/unix/sysv/linux/aio_sigqueue.c ++++ b/sysdeps/unix/sysv/linux/aio_sigqueue.c +@@ -31,10 +31,8 @@ + + /* Return any pending signal or wait for one for the given time. */ + int +-__aio_sigqueue (sig, val, caller_pid) +- int sig; +- const union sigval val; +- pid_t caller_pid; ++internal_function ++__aio_sigqueue (int sig, const union sigval val, pid_t caller_pid) + { + siginfo_t info; + +diff --git a/sysdeps/unix/sysv/linux/arm/sigaction.c b/sysdeps/unix/sysv/linux/arm/sigaction.c +index 02b47e79e2139e0e..5214b34289a74545 100644 +--- a/sysdeps/unix/sysv/linux/arm/sigaction.c ++++ b/sysdeps/unix/sysv/linux/arm/sigaction.c +@@ -55,10 +55,7 @@ extern void __default_rt_sa_restorer_v2(void); + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__libc_sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/faccessat.c b/sysdeps/unix/sysv/linux/faccessat.c +index b015d55cab193ccc..abacaed1eb4e00da 100644 +--- a/sysdeps/unix/sysv/linux/faccessat.c ++++ b/sysdeps/unix/sysv/linux/faccessat.c +@@ -29,11 +29,7 @@ + + + int +-faccessat (fd, file, mode, flag) +- int fd; +- const char *file; +- int mode; +- int flag; ++faccessat (int fd, const char *file, int mode, int flag) + { + if (flag & ~(AT_SYMLINK_NOFOLLOW | AT_EACCESS)) + { +diff --git a/sysdeps/unix/sysv/linux/fchmodat.c b/sysdeps/unix/sysv/linux/fchmodat.c +index b9a033b0736ce129..fc743fdfe116cf21 100644 +--- a/sysdeps/unix/sysv/linux/fchmodat.c ++++ b/sysdeps/unix/sysv/linux/fchmodat.c +@@ -28,11 +28,7 @@ + #include + + int +-fchmodat (fd, file, mode, flag) +- int fd; +- const char *file; +- mode_t mode; +- int flag; ++fchmodat (int fd, const char *file, mode_t mode, int flag) + { + if (flag & ~AT_SYMLINK_NOFOLLOW) + { +diff --git a/sysdeps/unix/sysv/linux/fpathconf.c b/sysdeps/unix/sysv/linux/fpathconf.c +index 1e840edfa687d667..378a42c3e0e8dd0d 100644 +--- a/sysdeps/unix/sysv/linux/fpathconf.c ++++ b/sysdeps/unix/sysv/linux/fpathconf.c +@@ -29,9 +29,7 @@ static long int posix_fpathconf (int fd, int name); + + /* Get file-specific information about descriptor FD. */ + long int +-__fpathconf (fd, name) +- int fd; +- int name; ++__fpathconf (int fd, int name) + { + struct statfs fsbuf; + +diff --git a/sysdeps/unix/sysv/linux/gai_sigqueue.c b/sysdeps/unix/sysv/linux/gai_sigqueue.c +index 3896df0cd345bc8b..4da7fbbef40f03e8 100644 +--- a/sysdeps/unix/sysv/linux/gai_sigqueue.c ++++ b/sysdeps/unix/sysv/linux/gai_sigqueue.c +@@ -30,10 +30,8 @@ + + /* Return any pending signal or wait for one for the given time. */ + int +-__gai_sigqueue (sig, val, caller_pid) +- int sig; +- const union sigval val; +- pid_t caller_pid; ++internal_function ++__gai_sigqueue (int sig, const union sigval val, pid_t caller_pid) + { + siginfo_t info; + +diff --git a/sysdeps/unix/sysv/linux/gethostid.c b/sysdeps/unix/sysv/linux/gethostid.c +index c9f4b4cbcbad6bdb..64100abcc7ece115 100644 +--- a/sysdeps/unix/sysv/linux/gethostid.c ++++ b/sysdeps/unix/sysv/linux/gethostid.c +@@ -27,8 +27,7 @@ + + #ifdef SET_PROCEDURE + int +-sethostid (id) +- long int id; ++sethostid (long int id) + { + int fd; + ssize_t written; +diff --git a/sysdeps/unix/sysv/linux/getlogin_r.c b/sysdeps/unix/sysv/linux/getlogin_r.c +index 187a7a1dcf197a79..157f8a661a5d24ad 100644 +--- a/sysdeps/unix/sysv/linux/getlogin_r.c ++++ b/sysdeps/unix/sysv/linux/getlogin_r.c +@@ -32,9 +32,7 @@ static int getlogin_r_fd0 (char *name, size_t namesize); + + int + attribute_hidden +-__getlogin_r_loginuid (name, namesize) +- char *name; +- size_t namesize; ++__getlogin_r_loginuid (char *name, size_t namesize) + { + int fd = open_not_cancel_2 ("/proc/self/loginuid", O_RDONLY); + if (fd == -1) +@@ -109,9 +107,7 @@ __getlogin_r_loginuid (name, namesize) + code. Otherwise return 0. */ + + int +-getlogin_r (name, namesize) +- char *name; +- size_t namesize; ++getlogin_r (char *name, size_t namesize) + { + int res = __getlogin_r_loginuid (name, namesize); + if (res >= 0) +diff --git a/sysdeps/unix/sysv/linux/getpt.c b/sysdeps/unix/sysv/linux/getpt.c +index 30b14067e8811b08..4b6be2e9520e2ef9 100644 +--- a/sysdeps/unix/sysv/linux/getpt.c ++++ b/sysdeps/unix/sysv/linux/getpt.c +@@ -35,8 +35,7 @@ int __bsd_getpt (void); + + /* Open a master pseudo terminal and return its file descriptor. */ + int +-__posix_openpt (oflag) +- int oflag; ++__posix_openpt (int oflag) + { + static int have_no_dev_ptmx; + int fd; +diff --git a/sysdeps/unix/sysv/linux/i386/getmsg.c b/sysdeps/unix/sysv/linux/i386/getmsg.c +index 12881b25afd546fe..c9133c89c7053705 100644 +--- a/sysdeps/unix/sysv/linux/i386/getmsg.c ++++ b/sysdeps/unix/sysv/linux/i386/getmsg.c +@@ -24,11 +24,7 @@ + + #ifdef __NR_getpmsg + int +-getmsg (fildes, ctlptr, dataptr, flagsp) +- int fildes; +- struct strbuf *ctlptr; +- struct strbuf *dataptr; +- int *flagsp; ++getmsg (int fildes, struct strbuf *ctlptr, struct strbuf *dataptr, int *flagsp) + { + return INLINE_SYSCALL (getpmsg, 5, fildes, ctlptr, dataptr, NULL, flagsp); + } +diff --git a/sysdeps/unix/sysv/linux/i386/setegid.c b/sysdeps/unix/sysv/linux/i386/setegid.c +index 20170e327e2a631d..0d663fba929525e9 100644 +--- a/sysdeps/unix/sysv/linux/i386/setegid.c ++++ b/sysdeps/unix/sysv/linux/i386/setegid.c +@@ -21,8 +21,7 @@ + + + int +-setegid (gid) +- gid_t gid; ++setegid (gid_t gid) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/ia64/sigaction.c b/sysdeps/unix/sysv/linux/ia64/sigaction.c +index 403b6d8fd0c9b92f..cce54adabc1aa386 100644 +--- a/sysdeps/unix/sysv/linux/ia64/sigaction.c ++++ b/sysdeps/unix/sysv/linux/ia64/sigaction.c +@@ -34,10 +34,7 @@ + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__libc_sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/ia64/sigpending.c b/sysdeps/unix/sysv/linux/ia64/sigpending.c +index c56147c97802108b..a281fe1bb5dbc9e9 100644 +--- a/sysdeps/unix/sysv/linux/ia64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/ia64/sigpending.c +@@ -28,8 +28,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/ia64/sigprocmask.c b/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +index 97fd364073bfd4f4..7465c9f61bc1ec32 100644 +--- a/sysdeps/unix/sysv/linux/ia64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/ia64/sigprocmask.c +@@ -29,10 +29,7 @@ + + /* Get and/or change the set of blocked signals. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + + /* XXX The size argument hopefully will have to be changed to the +diff --git a/sysdeps/unix/sysv/linux/mips/sigaction.c b/sysdeps/unix/sysv/linux/mips/sigaction.c +index b6e6811a271344a3..76eb278349808a32 100644 +--- a/sysdeps/unix/sysv/linux/mips/sigaction.c ++++ b/sysdeps/unix/sysv/linux/mips/sigaction.c +@@ -45,10 +45,7 @@ static void restore (void) asm ("__restore"); + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__libc_sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/msgget.c b/sysdeps/unix/sysv/linux/msgget.c +index 6f32b4579bba8e06..183273e4f0f1af42 100644 +--- a/sysdeps/unix/sysv/linux/msgget.c ++++ b/sysdeps/unix/sysv/linux/msgget.c +@@ -28,9 +28,7 @@ + parameter describes how to proceed with clashing of key values. */ + + int +-msgget (key, msgflg) +- key_t key; +- int msgflg; ++msgget (key_t key, int msgflg) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_msgget, key, msgflg, 0, NULL); + } +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c +index 494d898b2f07530a..d8d0214f9a1332a0 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c +@@ -24,9 +24,7 @@ + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +-__ftruncate64 (fd, length) +- int fd; +- off64_t length; ++__ftruncate64 (int fd, off64_t length) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ + int result = INLINE_SYSCALL (ftruncate64, 4, fd, 0, +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c +index 6f416599e9ebdd1d..c97410f4076fa835 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c +@@ -24,9 +24,7 @@ + + /* Truncate the file referenced by FD to LENGTH bytes. */ + int +-truncate64 (path, length) +- const char *path; +- off64_t length; ++truncate64 (const char *path, off64_t length) + { + /* On PPC32 64bit values are aligned in odd/even register pairs. */ + int result = INLINE_SYSCALL (truncate64, 4, path, 0, +diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c b/sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c +index 58004063e4e044c3..ff4ae7d00dc1a137 100644 +--- a/sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c ++++ b/sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c +@@ -32,10 +32,7 @@ + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__libc_sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c b/sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c +index e3bae5492d61923f..0e1a7852e41f1214 100644 +--- a/sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c +@@ -28,8 +28,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c b/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c +index c96ee352323ae791..af30e9401eac5b92 100644 +--- a/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c +@@ -27,10 +27,7 @@ + + /* Get and/or change the set of blocked signals. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + + /* XXX The size argument hopefully will have to be changed to the +diff --git a/sysdeps/unix/sysv/linux/semget.c b/sysdeps/unix/sysv/linux/semget.c +index 8b69e64e136ad582..30c0e00b7d5f9cd2 100644 +--- a/sysdeps/unix/sysv/linux/semget.c ++++ b/sysdeps/unix/sysv/linux/semget.c +@@ -28,10 +28,7 @@ + KEY. */ + + int +-semget (key, nsems, semflg) +- key_t key; +- int nsems; +- int semflg; ++semget (key_t key, int nsems, int semflg) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_semget, key, nsems, semflg, NULL); + } +diff --git a/sysdeps/unix/sysv/linux/semop.c b/sysdeps/unix/sysv/linux/semop.c +index 4cd6891976858cc2..9dd3519bb3a33918 100644 +--- a/sysdeps/unix/sysv/linux/semop.c ++++ b/sysdeps/unix/sysv/linux/semop.c +@@ -26,10 +26,7 @@ + /* Perform user-defined atomical operation of array of semaphores. */ + + int +-semop (semid, sops, nsops) +- int semid; +- struct sembuf *sops; +- size_t nsops; ++semop (int semid, struct sembuf *sops, size_t nsops) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_semop, semid, (int) nsops, 0, sops); + } +diff --git a/sysdeps/unix/sysv/linux/setrlimit64.c b/sysdeps/unix/sysv/linux/setrlimit64.c +index 5ab8068e50f59b4b..44aa2f452f8bc0d1 100644 +--- a/sysdeps/unix/sysv/linux/setrlimit64.c ++++ b/sysdeps/unix/sysv/linux/setrlimit64.c +@@ -25,9 +25,7 @@ + Only the super-user can increase hard limits. + Return 0 if successful, -1 if not (and sets errno). */ + int +-setrlimit64 (resource, rlimits) +- enum __rlimit_resource resource; +- const struct rlimit64 *rlimits; ++setrlimit64 (enum __rlimit_resource resource, const struct rlimit64 *rlimits) + { + #ifdef __ASSUME_PRLIMIT64 + return INLINE_SYSCALL (prlimit64, 4, 0, resource, rlimits, NULL); +diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c +index 401f00b7c01a6a14..02ed357ffa1cbd12 100644 +--- a/sysdeps/unix/sysv/linux/shmat.c ++++ b/sysdeps/unix/sysv/linux/shmat.c +@@ -29,10 +29,7 @@ + and where the segment is attached. */ + + void * +-shmat (shmid, shmaddr, shmflg) +- int shmid; +- const void *shmaddr; +- int shmflg; ++shmat (int shmid, const void *shmaddr, int shmflg) + { + INTERNAL_SYSCALL_DECL(err); + unsigned long resultvar; +diff --git a/sysdeps/unix/sysv/linux/shmdt.c b/sysdeps/unix/sysv/linux/shmdt.c +index c7fd62d3c1c82ffb..fd503c5054133cb5 100644 +--- a/sysdeps/unix/sysv/linux/shmdt.c ++++ b/sysdeps/unix/sysv/linux/shmdt.c +@@ -27,8 +27,7 @@ + from the caller's data segment. */ + + int +-shmdt (shmaddr) +- const void *shmaddr; ++shmdt (const void *shmaddr) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_shmdt, 0, 0, 0, (void *) shmaddr); + } +diff --git a/sysdeps/unix/sysv/linux/shmget.c b/sysdeps/unix/sysv/linux/shmget.c +index 60d448a3bca43508..244321f35da55f95 100644 +--- a/sysdeps/unix/sysv/linux/shmget.c ++++ b/sysdeps/unix/sysv/linux/shmget.c +@@ -28,10 +28,7 @@ + which is associated with KEY. */ + + int +-shmget (key, size, shmflg) +- key_t key; +- size_t size; +- int shmflg; ++shmget (key_t key, size_t size, int shmflg) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_shmget, key, size, shmflg, NULL); + } +diff --git a/sysdeps/unix/sysv/linux/sigaction.c b/sysdeps/unix/sysv/linux/sigaction.c +index 0eee8e6b0322399a..37bf4e85f892be81 100644 +--- a/sysdeps/unix/sysv/linux/sigaction.c ++++ b/sysdeps/unix/sysv/linux/sigaction.c +@@ -33,10 +33,7 @@ + /* If ACT is not NULL, change the action for SIG to *ACT. + If OACT is not NULL, put the old action for SIG in *OACT. */ + int +-__libc_sigaction (sig, act, oact) +- int sig; +- const struct sigaction *act; +- struct sigaction *oact; ++__libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/sigpending.c b/sysdeps/unix/sysv/linux/sigpending.c +index bd6126143923ab8e..312e71f603a50d59 100644 +--- a/sysdeps/unix/sysv/linux/sigpending.c ++++ b/sysdeps/unix/sysv/linux/sigpending.c +@@ -28,8 +28,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8); + } +diff --git a/sysdeps/unix/sysv/linux/sigprocmask.c b/sysdeps/unix/sysv/linux/sigprocmask.c +index 8d69613049c9629c..4b171201b75a747e 100644 +--- a/sysdeps/unix/sysv/linux/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/sigprocmask.c +@@ -28,10 +28,7 @@ + + /* Get and/or change the set of blocked signals. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + #ifdef SIGCANCEL + sigset_t local_newmask; +diff --git a/sysdeps/unix/sysv/linux/sigqueue.c b/sysdeps/unix/sysv/linux/sigqueue.c +index e4470d4ca660f9b8..703e60b28ae54321 100644 +--- a/sysdeps/unix/sysv/linux/sigqueue.c ++++ b/sysdeps/unix/sysv/linux/sigqueue.c +@@ -26,10 +26,7 @@ + #ifdef __NR_rt_sigqueueinfo + /* Return any pending signal or wait for one for the given time. */ + int +-__sigqueue (pid, sig, val) +- pid_t pid; +- int sig; +- const union sigval val; ++__sigqueue (pid_t pid, int sig, const union sigval val) + { + siginfo_t info; + +diff --git a/sysdeps/unix/sysv/linux/sigstack.c b/sysdeps/unix/sysv/linux/sigstack.c +index 81e752bf4cbbfa35..13cb3552244a2879 100644 +--- a/sysdeps/unix/sysv/linux/sigstack.c ++++ b/sysdeps/unix/sysv/linux/sigstack.c +@@ -24,9 +24,7 @@ + + #ifdef __NR_sigaltstack + int +-sigstack (ss, oss) +- struct sigstack *ss; +- struct sigstack *oss; ++sigstack (struct sigstack *ss, struct sigstack *oss) + { + stack_t sas; + stack_t *sasp = NULL; +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c b/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c +index 7548435ca29ae294..06a0d93ec1821173 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c +@@ -25,8 +25,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c b/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c +index 60f95b4f554d7966..2e8d3bed5a0a299e 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c +@@ -24,10 +24,7 @@ + + /* Get and/or change the set of blocked signals. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/speed.c b/sysdeps/unix/sysv/linux/speed.c +index e41a9c0399c5c581..7be18dc3f7093a4c 100644 +--- a/sysdeps/unix/sysv/linux/speed.c ++++ b/sysdeps/unix/sysv/linux/speed.c +@@ -35,8 +35,7 @@ + + /* Return the output baud rate stored in *TERMIOS_P. */ + speed_t +-cfgetospeed (termios_p) +- const struct termios *termios_p; ++cfgetospeed (const struct termios *termios_p) + { + return termios_p->c_cflag & (CBAUD | CBAUDEX); + } +@@ -46,8 +45,7 @@ cfgetospeed (termios_p) + speed, the numerical 0 is a special case for the input baud rate. It + should set the input baud rate to the output baud rate. */ + speed_t +-cfgetispeed (termios_p) +- const struct termios *termios_p; ++cfgetispeed (const struct termios *termios_p) + { + return ((termios_p->c_iflag & IBAUD0) + ? 0 : termios_p->c_cflag & (CBAUD | CBAUDEX)); +@@ -55,9 +53,7 @@ cfgetispeed (termios_p) + + /* Set the output baud rate stored in *TERMIOS_P to SPEED. */ + int +-cfsetospeed (termios_p, speed) +- struct termios *termios_p; +- speed_t speed; ++cfsetospeed (struct termios *termios_p, speed_t speed) + { + if ((speed & ~CBAUD) != 0 + && (speed < B57600 || speed > __MAX_BAUD)) +@@ -82,9 +78,7 @@ libc_hidden_def (cfsetospeed) + speed, the numerical 0 is a special case for the input baud rate. It + should set the input baud rate to the output baud rate. */ + int +-cfsetispeed (termios_p, speed) +- struct termios *termios_p; +- speed_t speed; ++cfsetispeed (struct termios *termios_p, speed_t speed) + { + if ((speed & ~CBAUD) != 0 + && (speed < B57600 || speed > __MAX_BAUD)) +diff --git a/sysdeps/unix/sysv/linux/tcflow.c b/sysdeps/unix/sysv/linux/tcflow.c +index 6c0a2390b5852ed1..e494581da46466f6 100644 +--- a/sysdeps/unix/sysv/linux/tcflow.c ++++ b/sysdeps/unix/sysv/linux/tcflow.c +@@ -22,9 +22,7 @@ + + /* Suspend or restart transmission on FD. */ + int +-tcflow (fd, action) +- int fd; +- int action; ++tcflow (int fd, int action) + { + return __ioctl (fd, TCXONC, action); + } +diff --git a/sysdeps/unix/sysv/linux/tcflush.c b/sysdeps/unix/sysv/linux/tcflush.c +index 72b89e3c1431da6a..5eb5a31694fbc7d6 100644 +--- a/sysdeps/unix/sysv/linux/tcflush.c ++++ b/sysdeps/unix/sysv/linux/tcflush.c +@@ -22,9 +22,7 @@ + + /* Flush pending data on FD. */ + int +-tcflush (fd, queue_selector) +- int fd; +- int queue_selector; ++tcflush (int fd, int queue_selector) + { + return __ioctl (fd, TCFLSH, queue_selector); + } +diff --git a/sysdeps/unix/sysv/linux/tcgetattr.c b/sysdeps/unix/sysv/linux/tcgetattr.c +index d05b5f3a0693110c..a4f5e99b768c5116 100644 +--- a/sysdeps/unix/sysv/linux/tcgetattr.c ++++ b/sysdeps/unix/sysv/linux/tcgetattr.c +@@ -30,9 +30,7 @@ + + /* Put the state of FD into *TERMIOS_P. */ + int +-__tcgetattr (fd, termios_p) +- int fd; +- struct termios *termios_p; ++__tcgetattr (int fd, struct termios *termios_p) + { + struct __kernel_termios k_termios; + int retval; +diff --git a/sysdeps/unix/sysv/linux/tcsetattr.c b/sysdeps/unix/sysv/linux/tcsetattr.c +index 62ed93993f3ede81..7409e30270735c11 100644 +--- a/sysdeps/unix/sysv/linux/tcsetattr.c ++++ b/sysdeps/unix/sysv/linux/tcsetattr.c +@@ -41,10 +41,7 @@ + + /* Set the state of FD to *TERMIOS_P. */ + int +-tcsetattr (fd, optional_actions, termios_p) +- int fd; +- int optional_actions; +- const struct termios *termios_p; ++tcsetattr (int fd, int optional_actions, const struct termios *termios_p) + { + struct __kernel_termios k_termios; + unsigned long int cmd; +diff --git a/sysdeps/unix/sysv/linux/time.c b/sysdeps/unix/sysv/linux/time.c +index a73783e3629b3bbd..f3aa234bd2c5c9eb 100644 +--- a/sysdeps/unix/sysv/linux/time.c ++++ b/sysdeps/unix/sysv/linux/time.c +@@ -23,8 +23,7 @@ + #ifdef __NR_time + + time_t +-time (t) +- time_t *t; ++time (time_t *t) + { + INTERNAL_SYSCALL_DECL (err); + time_t res = INTERNAL_SYSCALL (time, err, 1, NULL); +diff --git a/sysdeps/unix/sysv/linux/x86_64/sigpending.c b/sysdeps/unix/sysv/linux/x86_64/sigpending.c +index 7e448c0327cbcd19..16dd2e72f83a6431 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sigpending.c ++++ b/sysdeps/unix/sysv/linux/x86_64/sigpending.c +@@ -28,8 +28,7 @@ + /* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. */ + int +-sigpending (set) +- sigset_t *set; ++sigpending (sigset_t *set) + { + /* XXX The size argument hopefully will have to be changed to the + real size of the user-level sigset_t. */ +diff --git a/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c b/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c +index 210fd97f9f33521e..8e7e9ffa34077f56 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c ++++ b/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c +@@ -28,10 +28,7 @@ + + /* Get and/or change the set of blocked signals. */ + int +-__sigprocmask (how, set, oset) +- int how; +- const sigset_t *set; +- sigset_t *oset; ++__sigprocmask (int how, const sigset_t *set, sigset_t *oset) + { + + /* XXX The size argument hopefully will have to be changed to the +diff --git a/sysdeps/x86_64/backtrace.c b/sysdeps/x86_64/backtrace.c +index 8d6599ac1e3780ac..753a003f0368e10d 100644 +--- a/sysdeps/x86_64/backtrace.c ++++ b/sysdeps/x86_64/backtrace.c +@@ -92,9 +92,7 @@ backtrace_helper (struct _Unwind_Context *ctx, void *a) + } + + int +-__backtrace (array, size) +- void **array; +- int size; ++__backtrace (void **array, int size) + { + struct trace_arg arg = { .array = array, .cfa = 0, .size = size, .cnt = -1 }; + #ifdef SHARED diff --git a/SOURCES/glibc-rh1505492-prototypes-13.patch b/SOURCES/glibc-rh1505492-prototypes-13.patch new file mode 100644 index 0000000..09a5735 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-13.patch @@ -0,0 +1,1329 @@ +commit f63f2bfdfaad591305863a79c4fd2c3f50015f26 +Author: Joseph Myers +Date: Mon Oct 19 21:23:47 2015 +0000 + + Convert 69 more function definitions to prototype style (line wrap cases). + + This automatically-generated patch converts 69 function definitions in + glibc from old-style K&R to prototype-style. + + This patch, covering both sysdeps and non-sysdeps files, deals with + cases where the prototype needed to be wrapped over more than one + line. Otherwise, exclusions and caveats are as for + and + . + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). + + * crypt/crypt-entry.c (__crypt_r): Convert to prototype-style + function definition. + * crypt/crypt_util.c (__encrypt_r): Likewise. + * libio/genops.c (_IO_no_init): Likewise. + * libio/iofopncook.c (_IO_fopencookie): Likewise. + (_IO_old_fopencookie): Likewise. + * libio/iofwrite_u.c (fwrite_unlocked): Likewise. + * libio/iogetline.c (_IO_getline): Likewise. + (_IO_getline_info): Likewise. + * libio/iogetwline.c (_IO_getwline): Likewise. + (_IO_getwline_info): Likewise. + * libio/vsnprintf.c (_IO_vsnprintf): Likewise. + * libio/vswprintf.c (_IO_vswprintf): Likewise. + * locale/programs/simple-hash.c (insert_entry_2): Likewise. + (find_entry): Likewise. + (iterate_table): Likewise. + (lookup): Likewise. + * login/forkpty.c (forkpty): Likewise. + * misc/hsearch_r.c (__hsearch_r): Likewise. + * misc/select.c (__select): Likewise. + * nptl/cleanup_defer_compat.c (_pthread_cleanup_pop_restore): + Likewise. + * nptl/old_pthread_cond_init.c (__pthread_cond_init_2_0): + Likewise. + * nptl/old_pthread_cond_timedwait.c + (__pthread_cond_timedwait_2_0): Likewise. + * nptl/pthread_barrier_init.c (__pthread_barrier_init): Likewise. + * nptl/pthread_barrierattr_getpshared.c + (pthread_barrierattr_getpshared): Likewise. + * nptl/pthread_getschedparam.c (__pthread_getschedparam): + Likewise. + * nptl/pthread_mutex_setprioceiling.c + (pthread_mutex_setprioceiling): Likewise. + * nptl/pthread_mutexattr_getprioceiling.c + (pthread_mutexattr_getprioceiling): Likewise. + * nptl/pthread_rwlock_init.c (__pthread_rwlock_init): Likewise. + * nptl/pthread_rwlock_timedrdlock.c (pthread_rwlock_timedrdlock): + Likewise. + * nptl/pthread_rwlock_timedwrlock.c (pthread_rwlock_timedwrlock): + Likewise. + * nptl/pthread_setschedparam.c (__pthread_setschedparam): + Likewise. + * socket/recvfrom.c (__recvfrom): Likewise. + * socket/sendto.c (__sendto): Likewise. + * socket/setsockopt.c (__setsockopt): Likewise. + * stdio-common/_itoa.c (_itoa): Likewise. + * stdio-common/_itowa.c (_itowa): Likewise. + * stdio-common/reg-printf.c (__register_printf_specifier): + Likewise. + (__register_printf_function): Likewise. + * stdio-common/tempname.c (__path_search): Likewise. + * stdlib/addmul_1.c (mpn_addmul_1): Likewise. + * stdlib/mul_1.c (mpn_mul_1): Likewise. + * stdlib/random_r.c (__initstate_r): Likewise. + * stdlib/setenv.c (__add_to_environ): Likewise. + * stdlib/submul_1.c (mpn_submul_1): Likewise. + * streams/getpmsg.c (getpmsg): Likewise. + * streams/putmsg.c (putmsg): Likewise. + * streams/putpmsg.c (putpmsg): Likewise. + * sunrpc/clnt_raw.c (clntraw_call): Likewise. + * sunrpc/clnt_tcp.c (clnttcp_call): Likewise. + * sunrpc/clnt_udp.c (clntudp_create): Likewise. + * sunrpc/clnt_unix.c (clntunix_call): Likewise. + * sunrpc/pm_getport.c (pmap_getport): Likewise. + * sunrpc/svc_udp.c (cache_get): Likewise. + * sunrpc/xdr_array.c (xdr_vector): Likewise. + * sysdeps/mach/hurd/getcwd.c + (__canonicalize_directory_name_internal): Likewise. + * sysdeps/mach/hurd/pselect.c (__pselect): Likewise. + * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise. + * sysdeps/mach/hurd/select.c (__select): Likewise. + * sysdeps/posix/ttyname_r.c (getttyname_r): Likewise. + * sysdeps/pthread/timer_settime.c (timer_settime): Likewise. + * sysdeps/sparc/nptl/pthread_barrier_init.c + (__pthread_barrier_init): Likewise. + * sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c + (__pthread_cond_timedwait): Likewise. + * sysdeps/unix/sysv/linux/i386/putmsg.c (putmsg): Likewise. + * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): + Likewise. + * sysdeps/unix/sysv/linux/semtimedop.c (semtimedop): Likewise. + * sysdeps/unix/sysv/linux/timer_settime.c (timer_settime): + Likewise. + * sysvipc/semtimedop.c (semtimedop): Likewise. + * time/setitimer.c (__setitimer): Likewise. + * time/strftime_l.c (emacs_strftime): Likewise. + +Conflicts: + misc/hsearch_r.c + (Missing backport of fix for swbz#17996.) + nptl/pthread_barrier_init.c + (Missing backport of fix for swbz#18544.) + sysdeps/pthread/timer_settime.c + (Applied to nptl/sysdeps/pthread/timer_settime.c.) + sysdeps/sparc/nptl/pthread_barrier_init.c + (Missing fix for swbz#18544. Applied to + nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c.) + sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c + (Missing backport of d83f0734e1522a5e5ea2494565f4dcd25a86d6a0, + HPPA: Transition to new non-addon NPTL; files removed manually.) + sysdeps/unix/sysv/linux/timer_settime.c + (Applied to nptl/sysdeps/unix/sysv/linux/timer_settime.c.) + +diff --git a/crypt/crypt-entry.c b/crypt/crypt-entry.c +index 1ad36c7d05e7b7c1..647debc9ec98f3fb 100644 +--- a/crypt/crypt-entry.c ++++ b/crypt/crypt-entry.c +@@ -81,10 +81,8 @@ extern struct crypt_data _ufc_foobar; + */ + + char * +-__crypt_r (key, salt, data) +- const char *key; +- const char *salt; +- struct crypt_data * __restrict data; ++__crypt_r (const char *key, const char *salt, ++ struct crypt_data * __restrict data) + { + ufc_long res[4]; + char ktab[9]; +diff --git a/crypt/crypt_util.c b/crypt/crypt_util.c +index bbb2ca2b58490e35..954bbfcfebd169b6 100644 +--- a/crypt/crypt_util.c ++++ b/crypt/crypt_util.c +@@ -805,10 +805,8 @@ _ufc_output_conversion_r(v1, v2, salt, __data) + */ + + void +-__encrypt_r(__block, __edflag, __data) +- char *__block; +- int __edflag; +- struct crypt_data * __restrict __data; ++__encrypt_r (char *__block, int __edflag, ++ struct crypt_data * __restrict __data) + { + ufc_long l1, l2, r1, r2, res[4]; + int i; +diff --git a/libio/genops.c b/libio/genops.c +index bad6ec65e25de31b..09a9c2eacf1fcaea 100644 +--- a/libio/genops.c ++++ b/libio/genops.c +@@ -600,12 +600,8 @@ _IO_old_init (_IO_FILE *fp, int flags) + } + + void +-_IO_no_init (fp, flags, orientation, wd, jmp) +- _IO_FILE *fp; +- int flags; +- int orientation; +- struct _IO_wide_data *wd; +- const struct _IO_jump_t *jmp; ++_IO_no_init (_IO_FILE *fp, int flags, int orientation, ++ struct _IO_wide_data *wd, const struct _IO_jump_t *jmp) + { + _IO_old_init (fp, flags); + fp->_mode = orientation; +diff --git a/libio/iofopncook.c b/libio/iofopncook.c +index d5c28f31c377905a..f1ac641ee6537fd6 100644 +--- a/libio/iofopncook.c ++++ b/libio/iofopncook.c +@@ -170,10 +170,8 @@ _IO_cookie_init (struct _IO_cookie_file *cfile, int read_write, + + + _IO_FILE * +-_IO_fopencookie (cookie, mode, io_functions) +- void *cookie; +- const char *mode; +- _IO_cookie_io_functions_t io_functions; ++_IO_fopencookie (void *cookie, const char *mode, ++ _IO_cookie_io_functions_t io_functions) + { + int read_write; + struct locked_FILE +@@ -264,10 +262,8 @@ static const struct _IO_jump_t _IO_old_cookie_jumps libio_vtable = { + + _IO_FILE * + attribute_compat_text_section +-_IO_old_fopencookie (cookie, mode, io_functions) +- void *cookie; +- const char *mode; +- _IO_cookie_io_functions_t io_functions; ++_IO_old_fopencookie (void *cookie, const char *mode, ++ _IO_cookie_io_functions_t io_functions) + { + _IO_FILE *ret; + +diff --git a/libio/iofwrite_u.c b/libio/iofwrite_u.c +index a1077eeb922640d3..99b049cc37beb6de 100644 +--- a/libio/iofwrite_u.c ++++ b/libio/iofwrite_u.c +@@ -30,11 +30,8 @@ + #undef fwrite_unlocked + + _IO_size_t +-fwrite_unlocked (buf, size, count, fp) +- const void *buf; +- _IO_size_t size; +- _IO_size_t count; +- _IO_FILE *fp; ++fwrite_unlocked (const void *buf, _IO_size_t size, _IO_size_t count, ++ _IO_FILE *fp) + { + _IO_size_t request = size * count; + _IO_size_t written = 0; +diff --git a/libio/iogetline.c b/libio/iogetline.c +index bdb35b30fbcf1bee..a521e94949c42d4e 100644 +--- a/libio/iogetline.c ++++ b/libio/iogetline.c +@@ -28,12 +28,8 @@ + #include + + _IO_size_t +-_IO_getline (fp, buf, n, delim, extract_delim) +- _IO_FILE *fp; +- char *buf; +- _IO_size_t n; +- int delim; +- int extract_delim; ++_IO_getline (_IO_FILE *fp, char *buf, _IO_size_t n, int delim, ++ int extract_delim) + { + return _IO_getline_info (fp, buf, n, delim, extract_delim, (int *) 0); + } +@@ -48,13 +44,8 @@ libc_hidden_def (_IO_getline) + If extract_delim > 0, insert delim in output. */ + + _IO_size_t +-_IO_getline_info (fp, buf, n, delim, extract_delim, eof) +- _IO_FILE *fp; +- char *buf; +- _IO_size_t n; +- int delim; +- int extract_delim; +- int *eof; ++_IO_getline_info (_IO_FILE *fp, char *buf, _IO_size_t n, int delim, ++ int extract_delim, int *eof) + { + char *ptr = buf; + if (eof != NULL) +diff --git a/libio/iogetwline.c b/libio/iogetwline.c +index 63b7da67201b3f10..b14aa615e4537fda 100644 +--- a/libio/iogetwline.c ++++ b/libio/iogetwline.c +@@ -33,12 +33,8 @@ + #endif + + _IO_size_t +-_IO_getwline (fp, buf, n, delim, extract_delim) +- _IO_FILE *fp; +- wchar_t *buf; +- _IO_size_t n; +- wint_t delim; +- int extract_delim; ++_IO_getwline (_IO_FILE *fp, wchar_t *buf, _IO_size_t n, wint_t delim, ++ int extract_delim) + { + return _IO_getwline_info (fp, buf, n, delim, extract_delim, (wint_t *) 0); + } +@@ -52,13 +48,8 @@ _IO_getwline (fp, buf, n, delim, extract_delim) + If extract_delim > 0, insert delim in output. */ + + _IO_size_t +-_IO_getwline_info (fp, buf, n, delim, extract_delim, eof) +- _IO_FILE *fp; +- wchar_t *buf; +- _IO_size_t n; +- wint_t delim; +- int extract_delim; +- wint_t *eof; ++_IO_getwline_info (_IO_FILE *fp, wchar_t *buf, _IO_size_t n, wint_t delim, ++ int extract_delim, wint_t *eof) + { + wchar_t *ptr = buf; + if (eof != NULL) +diff --git a/libio/vsnprintf.c b/libio/vsnprintf.c +index 4e76a8c8fc035430..8711767fb1df32e8 100644 +--- a/libio/vsnprintf.c ++++ b/libio/vsnprintf.c +@@ -90,11 +90,8 @@ const struct _IO_jump_t _IO_strn_jumps libio_vtable attribute_hidden = + + + int +-_IO_vsnprintf (string, maxlen, format, args) +- char *string; +- _IO_size_t maxlen; +- const char *format; +- _IO_va_list args; ++_IO_vsnprintf (char *string, _IO_size_t maxlen, const char *format, ++ _IO_va_list args) + { + _IO_strnfile sf; + int ret; +diff --git a/libio/vswprintf.c b/libio/vswprintf.c +index 5cd58de2e88939d9..b42333822052fda4 100644 +--- a/libio/vswprintf.c ++++ b/libio/vswprintf.c +@@ -89,11 +89,8 @@ const struct _IO_jump_t _IO_wstrn_jumps libio_vtable attribute_hidden = + + + int +-_IO_vswprintf (string, maxlen, format, args) +- wchar_t *string; +- _IO_size_t maxlen; +- const wchar_t *format; +- _IO_va_list args; ++_IO_vswprintf (wchar_t *string, _IO_size_t maxlen, const wchar_t *format, ++ _IO_va_list args) + { + _IO_wstrnfile sf; + int ret; +diff --git a/locale/programs/simple-hash.c b/locale/programs/simple-hash.c +index b08e60ac72185ad9..a7e2d2bb988686a7 100644 +--- a/locale/programs/simple-hash.c ++++ b/locale/programs/simple-hash.c +@@ -120,13 +120,8 @@ insert_entry (hash_table *htab, const void *key, size_t keylen, void *data) + } + + static void +-insert_entry_2 (htab, key, keylen, hval, idx, data) +- hash_table *htab; +- const void *key; +- size_t keylen; +- unsigned long int hval; +- size_t idx; +- void *data; ++insert_entry_2 (hash_table *htab, const void *key, size_t keylen, ++ unsigned long int hval, size_t idx, void *data) + { + hash_entry *table = (hash_entry *) htab->table; + +@@ -175,11 +170,8 @@ insert_entry_2 (htab, key, keylen, hval, idx, data) + + + int +-find_entry (htab, key, keylen, result) +- const hash_table *htab; +- const void *key; +- size_t keylen; +- void **result; ++find_entry (const hash_table *htab, const void *key, size_t keylen, ++ void **result) + { + hash_entry *table = (hash_entry *) htab->table; + size_t idx = lookup (htab, key, keylen, compute_hashval (key, keylen)); +@@ -207,12 +199,8 @@ set_entry (hash_table *htab, const void *key, size_t keylen, void *newval) + + + int +-iterate_table (htab, ptr, key, keylen, data) +- const hash_table *htab; +- void **ptr; +- const void **key; +- size_t *keylen; +- void **data; ++iterate_table (const hash_table *htab, void **ptr, const void **key, ++ size_t *keylen, void **data) + { + if (*ptr == NULL) + { +@@ -239,11 +227,8 @@ iterate_table (htab, ptr, key, keylen, data) + [Knuth] The Art of Computer Programming, part3 (6.4) */ + + static size_t +-lookup (htab, key, keylen, hval) +- const hash_table *htab; +- const void *key; +- size_t keylen; +- unsigned long int hval; ++lookup (const hash_table *htab, const void *key, size_t keylen, ++ unsigned long int hval) + { + unsigned long int hash; + size_t idx; +diff --git a/login/forkpty.c b/login/forkpty.c +index e5e2873534801140..397d60dd63fc3171 100644 +--- a/login/forkpty.c ++++ b/login/forkpty.c +@@ -23,11 +23,8 @@ + #include + + int +-forkpty (amaster, name, termp, winp) +- int *amaster; +- char *name; +- const struct termios *termp; +- const struct winsize *winp; ++forkpty (int *amaster, char *name, const struct termios *termp, ++ const struct winsize *winp) + { + int master, slave, pid; + +diff --git a/misc/hsearch_r.c b/misc/hsearch_r.c +index 3509fb7b20fe524e..a71bb7d3412bf242 100644 +--- a/misc/hsearch_r.c ++++ b/misc/hsearch_r.c +@@ -147,11 +147,8 @@ libc_hidden_def (hdestroy_r) + equality of the stored and the parameter value. This helps to prevent + unnecessary expensive calls of strcmp. */ + int +-hsearch_r (item, action, retval, htab) +- ENTRY item; +- ACTION action; +- ENTRY **retval; +- struct hsearch_data *htab; ++hsearch_r (ENTRY item, ACTION action, ENTRY **retval, ++ struct hsearch_data *htab) + { + unsigned int hval; + unsigned int count; +diff --git a/misc/select.c b/misc/select.c +index 8f5cb0d2af26b573..f134b0453d9be90c 100644 +--- a/misc/select.c ++++ b/misc/select.c +@@ -25,12 +25,8 @@ + after waiting the interval specified therein. Returns the number of ready + descriptors, or -1 for errors. */ + int +-__select (nfds, readfds, writefds, exceptfds, timeout) +- int nfds; +- fd_set *readfds; +- fd_set *writefds; +- fd_set *exceptfds; +- struct timeval *timeout; ++__select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, ++ struct timeval *timeout) + { + __set_errno (ENOSYS); + return -1; +diff --git a/nptl/cleanup_defer_compat.c b/nptl/cleanup_defer_compat.c +index 88fd43ca8d8c45ab..e15723611c71d55a 100644 +--- a/nptl/cleanup_defer_compat.c ++++ b/nptl/cleanup_defer_compat.c +@@ -59,9 +59,8 @@ strong_alias (_pthread_cleanup_push_defer, __pthread_cleanup_push_defer) + + + void +-_pthread_cleanup_pop_restore (buffer, execute) +- struct _pthread_cleanup_buffer *buffer; +- int execute; ++_pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer, ++ int execute) + { + struct pthread *self = THREAD_SELF; + +diff --git a/nptl/old_pthread_cond_init.c b/nptl/old_pthread_cond_init.c +index 5ec4cf2ea3137274..38873877107fec86 100644 +--- a/nptl/old_pthread_cond_init.c ++++ b/nptl/old_pthread_cond_init.c +@@ -23,9 +23,8 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_init_2_0 (cond, cond_attr) +- pthread_cond_2_0_t *cond; +- const pthread_condattr_t *cond_attr; ++__pthread_cond_init_2_0 (pthread_cond_2_0_t *cond, ++ const pthread_condattr_t *cond_attr) + { + struct pthread_condattr *icond_attr = (struct pthread_condattr *) cond_attr; + +diff --git a/nptl/old_pthread_cond_timedwait.c b/nptl/old_pthread_cond_timedwait.c +index a8d113f9a5273c0c..fe95f96d1b8ef8e5 100644 +--- a/nptl/old_pthread_cond_timedwait.c ++++ b/nptl/old_pthread_cond_timedwait.c +@@ -25,10 +25,8 @@ + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) + int +-__pthread_cond_timedwait_2_0 (cond, mutex, abstime) +- pthread_cond_2_0_t *cond; +- pthread_mutex_t *mutex; +- const struct timespec *abstime; ++__pthread_cond_timedwait_2_0 (pthread_cond_2_0_t *cond, pthread_mutex_t *mutex, ++ const struct timespec *abstime) + { + if (cond->cond == NULL) + { +diff --git a/nptl/pthread_barrier_init.c b/nptl/pthread_barrier_init.c +index 8cd6f0e56ee6be1b..55849b7948e34fac 100644 +--- a/nptl/pthread_barrier_init.c ++++ b/nptl/pthread_barrier_init.c +@@ -29,10 +29,8 @@ static const struct pthread_barrierattr default_barrierattr = + + + int +-pthread_barrier_init (barrier, attr, count) +- pthread_barrier_t *barrier; +- const pthread_barrierattr_t *attr; +- unsigned int count; ++pthread_barrier_init (pthread_barrier_t *barrier, ++ const pthread_barrierattr_t *attr, unsigned int count) + { + struct pthread_barrier *ibarrier; + +diff --git a/nptl/pthread_barrierattr_getpshared.c b/nptl/pthread_barrierattr_getpshared.c +index 937d02428e52718a..dbe4893619cb17ef 100644 +--- a/nptl/pthread_barrierattr_getpshared.c ++++ b/nptl/pthread_barrierattr_getpshared.c +@@ -20,9 +20,8 @@ + + + int +-pthread_barrierattr_getpshared (attr, pshared) +- const pthread_barrierattr_t *attr; +- int *pshared; ++pthread_barrierattr_getpshared (const pthread_barrierattr_t *attr, ++ int *pshared) + { + *pshared = ((const struct pthread_barrierattr *) attr)->pshared; + +diff --git a/nptl/pthread_getschedparam.c b/nptl/pthread_getschedparam.c +index de81dbc068148ad5..dbff8a984196e6e4 100644 +--- a/nptl/pthread_getschedparam.c ++++ b/nptl/pthread_getschedparam.c +@@ -23,10 +23,8 @@ + + + int +-__pthread_getschedparam (threadid, policy, param) +- pthread_t threadid; +- int *policy; +- struct sched_param *param; ++__pthread_getschedparam (pthread_t threadid, int *policy, ++ struct sched_param *param) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/pthread_mutex_setprioceiling.c b/nptl/pthread_mutex_setprioceiling.c +index a0dcc7896305daeb..f9b5609bf10cd81a 100644 +--- a/nptl/pthread_mutex_setprioceiling.c ++++ b/nptl/pthread_mutex_setprioceiling.c +@@ -23,10 +23,8 @@ + + + int +-pthread_mutex_setprioceiling (mutex, prioceiling, old_ceiling) +- pthread_mutex_t *mutex; +- int prioceiling; +- int *old_ceiling; ++pthread_mutex_setprioceiling (pthread_mutex_t *mutex, int prioceiling, ++ int *old_ceiling) + { + /* The low bits of __kind aren't ever changed after pthread_mutex_init, + so we don't need a lock yet. */ +diff --git a/nptl/pthread_mutexattr_getprioceiling.c b/nptl/pthread_mutexattr_getprioceiling.c +index 56d103278dc44c83..2fa97d9024686e24 100644 +--- a/nptl/pthread_mutexattr_getprioceiling.c ++++ b/nptl/pthread_mutexattr_getprioceiling.c +@@ -21,9 +21,8 @@ + + + int +-pthread_mutexattr_getprioceiling (attr, prioceiling) +- const pthread_mutexattr_t *attr; +- int *prioceiling; ++pthread_mutexattr_getprioceiling (const pthread_mutexattr_t *attr, ++ int *prioceiling) + { + const struct pthread_mutexattr *iattr; + int ceiling; +diff --git a/nptl/pthread_rwlock_init.c b/nptl/pthread_rwlock_init.c +index 2f6c8fad0f262778..0acd59b223984c37 100644 +--- a/nptl/pthread_rwlock_init.c ++++ b/nptl/pthread_rwlock_init.c +@@ -29,9 +29,8 @@ static const struct pthread_rwlockattr default_rwlockattr = + + + int +-__pthread_rwlock_init (rwlock, attr) +- pthread_rwlock_t *rwlock; +- const pthread_rwlockattr_t *attr; ++__pthread_rwlock_init (pthread_rwlock_t *rwlock, ++ const pthread_rwlockattr_t *attr) + { + const struct pthread_rwlockattr *iattr; + +diff --git a/nptl/pthread_rwlock_timedrdlock.c b/nptl/pthread_rwlock_timedrdlock.c +index b7622abfa2478283..59f871d0eebb1202 100644 +--- a/nptl/pthread_rwlock_timedrdlock.c ++++ b/nptl/pthread_rwlock_timedrdlock.c +@@ -25,9 +25,8 @@ + + /* Try to acquire read lock for RWLOCK or return after specfied time. */ + int +-pthread_rwlock_timedrdlock (rwlock, abstime) +- pthread_rwlock_t *rwlock; +- const struct timespec *abstime; ++pthread_rwlock_timedrdlock (pthread_rwlock_t *rwlock, ++ const struct timespec *abstime) + { + int result = 0; + +diff --git a/nptl/pthread_rwlock_timedwrlock.c b/nptl/pthread_rwlock_timedwrlock.c +index 5f2399f91e884b78..e344005f1017384e 100644 +--- a/nptl/pthread_rwlock_timedwrlock.c ++++ b/nptl/pthread_rwlock_timedwrlock.c +@@ -25,9 +25,8 @@ + + /* Try to acquire write lock for RWLOCK or return after specfied time. */ + int +-pthread_rwlock_timedwrlock (rwlock, abstime) +- pthread_rwlock_t *rwlock; +- const struct timespec *abstime; ++pthread_rwlock_timedwrlock (pthread_rwlock_t *rwlock, ++ const struct timespec *abstime) + { + int result = 0; + +diff --git a/nptl/pthread_setschedparam.c b/nptl/pthread_setschedparam.c +index 15d26b4116bfc1c5..a0fa578821ceea51 100644 +--- a/nptl/pthread_setschedparam.c ++++ b/nptl/pthread_setschedparam.c +@@ -24,10 +24,8 @@ + + + int +-__pthread_setschedparam (threadid, policy, param) +- pthread_t threadid; +- int policy; +- const struct sched_param *param; ++__pthread_setschedparam (pthread_t threadid, int policy, ++ const struct sched_param *param) + { + struct pthread *pd = (struct pthread *) threadid; + +diff --git a/nptl/sysdeps/pthread/timer_settime.c b/nptl/sysdeps/pthread/timer_settime.c +index da0908b0bcad6da7..e86d0a3d231faf09 100644 +--- a/nptl/sysdeps/pthread/timer_settime.c ++++ b/nptl/sysdeps/pthread/timer_settime.c +@@ -25,11 +25,8 @@ + + /* Set timer TIMERID to VALUE, returning old value in OVLAUE. */ + int +-timer_settime (timerid, flags, value, ovalue) +- timer_t timerid; +- int flags; +- const struct itimerspec *value; +- struct itimerspec *ovalue; ++timer_settime (timer_t timerid, int flags, const struct itimerspec *value, ++ struct itimerspec *ovalue) + { + struct timer_node *timer; + struct thread_node *thread = NULL; +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c +index 5e3774fbd4ed3754..2782e93411ce01b8 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c +@@ -21,10 +21,8 @@ + #include + + int +-pthread_barrier_init (barrier, attr, count) +- pthread_barrier_t *barrier; +- const pthread_barrierattr_t *attr; +- unsigned int count; ++pthread_barrier_init (pthread_barrier_t *barrier, ++ const pthread_barrierattr_t *attr, unsigned int count) + { + union sparc_pthread_barrier *ibarrier; + +diff --git a/nptl/sysdeps/unix/sysv/linux/timer_settime.c b/nptl/sysdeps/unix/sysv/linux/timer_settime.c +index 5b522ec75040f12c..94acc60a0f86b72c 100644 +--- a/nptl/sysdeps/unix/sysv/linux/timer_settime.c ++++ b/nptl/sysdeps/unix/sysv/linux/timer_settime.c +@@ -30,11 +30,8 @@ + + + int +-timer_settime (timerid, flags, value, ovalue) +- timer_t timerid; +- int flags; +- const struct itimerspec *value; +- struct itimerspec *ovalue; ++timer_settime (timer_t timerid, int flags, const struct itimerspec *value, ++ struct itimerspec *ovalue) + { + #undef timer_settime + struct timer *kt = (struct timer *) timerid; +diff --git a/socket/recvfrom.c b/socket/recvfrom.c +index b99774f368501b55..f652b1478b7a6e32 100644 +--- a/socket/recvfrom.c ++++ b/socket/recvfrom.c +@@ -22,13 +22,8 @@ + at address ADDR (which is ADDR_LEN bytes long). + Returns the number read or -1 for errors. */ + ssize_t +-__recvfrom (fd, buf, n, flags, addr, addr_len) +- int fd; +- void *buf; +- size_t n; +- int flags; +- __SOCKADDR_ARG addr; +- socklen_t *addr_len; ++__recvfrom (int fd, void *buf, size_t n, int flags, __SOCKADDR_ARG addr, ++ socklen_t *addr_len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/sendto.c b/socket/sendto.c +index ae06a54cc6947a7f..090fd000799c9347 100644 +--- a/socket/sendto.c ++++ b/socket/sendto.c +@@ -21,13 +21,8 @@ + /* Send N bytes of BUF on socket FD to peer at address ADDR (which is + ADDR_LEN bytes long). Returns the number sent, or -1 for errors. */ + ssize_t +-__sendto (fd, buf, n, flags, addr, addr_len) +- int fd; +- const __ptr_t buf; +- size_t n; +- int flags; +- __CONST_SOCKADDR_ARG addr; +- socklen_t addr_len; ++__sendto (int fd, const __ptr_t buf, size_t n, int flags, ++ __CONST_SOCKADDR_ARG addr, socklen_t addr_len) + { + __set_errno (ENOSYS); + return -1; +diff --git a/socket/setsockopt.c b/socket/setsockopt.c +index 9e1e7a3d800b4bdb..bf08491d63ff2292 100644 +--- a/socket/setsockopt.c ++++ b/socket/setsockopt.c +@@ -22,12 +22,8 @@ + to *OPTVAL (which is OPTLEN bytes long). + Returns 0 on success, -1 for errors. */ + int +-__setsockopt (fd, level, optname, optval, optlen) +- int fd; +- int level; +- int optname; +- const __ptr_t optval; +- socklen_t optlen; ++__setsockopt (int fd, int level, int optname, const __ptr_t optval, ++ socklen_t optlen) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdio-common/_itoa.c b/stdio-common/_itoa.c +index 67592318866b553e..dbf4c7c72f1173c8 100644 +--- a/stdio-common/_itoa.c ++++ b/stdio-common/_itoa.c +@@ -191,11 +191,8 @@ _itoa_word (_ITOA_WORD_TYPE value, char *buflim, + + #if _ITOA_NEEDED + char * +-_itoa (value, buflim, base, upper_case) +- unsigned long long int value; +- char *buflim; +- unsigned int base; +- int upper_case; ++_itoa (unsigned long long int value, char *buflim, unsigned int base, ++ int upper_case) + { + const char *digits = (upper_case + ? _itoa_upper_digits +diff --git a/stdio-common/_itowa.c b/stdio-common/_itowa.c +index f50893dfcd79ea33..0cf3f773806dfc67 100644 +--- a/stdio-common/_itowa.c ++++ b/stdio-common/_itowa.c +@@ -87,11 +87,8 @@ extern const wchar_t _itowa_upper_digits[] attribute_hidden; + + #if _ITOA_NEEDED + wchar_t * +-_itowa (value, buflim, base, upper_case) +- unsigned long long int value; +- wchar_t *buflim; +- unsigned int base; +- int upper_case; ++_itowa (unsigned long long int value, wchar_t *buflim, unsigned int base, ++ int upper_case) + { + const wchar_t *digits = (upper_case + ? _itowa_upper_digits : _itowa_lower_digits); +diff --git a/stdio-common/reg-printf.c b/stdio-common/reg-printf.c +index 30bf7dadd6343874..90d8558fca86196e 100644 +--- a/stdio-common/reg-printf.c ++++ b/stdio-common/reg-printf.c +@@ -38,10 +38,8 @@ int __register_printf_function (int, printf_function, + + /* Register FUNC to be called to format SPEC specifiers. */ + int +-__register_printf_specifier (spec, converter, arginfo) +- int spec; +- printf_function converter; +- printf_arginfo_size_function arginfo; ++__register_printf_specifier (int spec, printf_function converter, ++ printf_arginfo_size_function arginfo) + { + if (spec < 0 || spec > (int) UCHAR_MAX) + { +@@ -79,10 +77,8 @@ weak_alias (__register_printf_specifier, register_printf_specifier) + + /* Register FUNC to be called to format SPEC specifiers. */ + int +-__register_printf_function (spec, converter, arginfo) +- int spec; +- printf_function converter; +- printf_arginfo_function arginfo; ++__register_printf_function (int spec, printf_function converter, ++ printf_arginfo_function arginfo) + { + return __register_printf_specifier (spec, converter, + (printf_arginfo_size_function*) arginfo); +diff --git a/stdio-common/tempname.c b/stdio-common/tempname.c +index d600e3708d86be6c..23b64e624b11765e 100644 +--- a/stdio-common/tempname.c ++++ b/stdio-common/tempname.c +@@ -24,12 +24,8 @@ + template suitable for use in __gen_tempname into TMPL, bounded + by TMPL_LEN. */ + int +-__path_search (tmpl, tmpl_len, dir, pfx, try_tmpdir) +- char *tmpl; +- size_t tmpl_len; +- const char *dir; +- const char *pfx; +- int try_tmpdir; ++__path_search (char *tmpl, size_t tmpl_len, const char *dir, const char *pfx, ++ int try_tmpdir) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdlib/addmul_1.c b/stdlib/addmul_1.c +index 8e8342a07ff3ad5f..276a379bef7d9bf0 100644 +--- a/stdlib/addmul_1.c ++++ b/stdlib/addmul_1.c +@@ -26,11 +26,8 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #include "longlong.h" + + mp_limb_t +-mpn_addmul_1 (res_ptr, s1_ptr, s1_size, s2_limb) +- register mp_ptr res_ptr; +- register mp_srcptr s1_ptr; +- mp_size_t s1_size; +- register mp_limb_t s2_limb; ++mpn_addmul_1 (register mp_ptr res_ptr, register mp_srcptr s1_ptr, ++ mp_size_t s1_size, register mp_limb_t s2_limb) + { + register mp_limb_t cy_limb; + register mp_size_t j; +diff --git a/stdlib/mul_1.c b/stdlib/mul_1.c +index 87ab98189aef442a..9e7fcf6f27ec779e 100644 +--- a/stdlib/mul_1.c ++++ b/stdlib/mul_1.c +@@ -24,11 +24,8 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #include "longlong.h" + + mp_limb_t +-mpn_mul_1 (res_ptr, s1_ptr, s1_size, s2_limb) +- register mp_ptr res_ptr; +- register mp_srcptr s1_ptr; +- mp_size_t s1_size; +- register mp_limb_t s2_limb; ++mpn_mul_1 (register mp_ptr res_ptr, register mp_srcptr s1_ptr, ++ mp_size_t s1_size, register mp_limb_t s2_limb) + { + register mp_limb_t cy_limb; + register mp_size_t j; +diff --git a/stdlib/random_r.c b/stdlib/random_r.c +index 5fdf56275601075d..1c9addd32395a99c 100644 +--- a/stdlib/random_r.c ++++ b/stdlib/random_r.c +@@ -227,11 +227,8 @@ weak_alias (__srandom_r, srandom_r) + setstate so that it doesn't matter when initstate is called. + Returns 0 on success, non-zero on failure. */ + int +-__initstate_r (seed, arg_state, n, buf) +- unsigned int seed; +- char *arg_state; +- size_t n; +- struct random_data *buf; ++__initstate_r (unsigned int seed, char *arg_state, size_t n, ++ struct random_data *buf) + { + if (buf == NULL) + goto fail; +diff --git a/stdlib/setenv.c b/stdlib/setenv.c +index 1a4d3c203e90ff83..45efe2e3f2b157ab 100644 +--- a/stdlib/setenv.c ++++ b/stdlib/setenv.c +@@ -106,11 +106,8 @@ static char **last_environ; + to reuse values once generated for a `setenv' call since we can never + free the strings. */ + int +-__add_to_environ (name, value, combined, replace) +- const char *name; +- const char *value; +- const char *combined; +- int replace; ++__add_to_environ (const char *name, const char *value, const char *combined, ++ int replace) + { + char **ep; + size_t size; +diff --git a/stdlib/submul_1.c b/stdlib/submul_1.c +index 9eafe7e00b93bff3..8cad60307c3d8c75 100644 +--- a/stdlib/submul_1.c ++++ b/stdlib/submul_1.c +@@ -26,11 +26,8 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #include "longlong.h" + + mp_limb_t +-mpn_submul_1 (res_ptr, s1_ptr, s1_size, s2_limb) +- register mp_ptr res_ptr; +- register mp_srcptr s1_ptr; +- mp_size_t s1_size; +- register mp_limb_t s2_limb; ++mpn_submul_1 (register mp_ptr res_ptr, register mp_srcptr s1_ptr, ++ mp_size_t s1_size, register mp_limb_t s2_limb) + { + register mp_limb_t cy_limb; + register mp_size_t j; +diff --git a/streams/getpmsg.c b/streams/getpmsg.c +index acb25b585f5aedb2..05d90d0801c8590d 100644 +--- a/streams/getpmsg.c ++++ b/streams/getpmsg.c +@@ -19,12 +19,8 @@ + #include + + int +-getpmsg (fildes, ctlptr, dataptr, bandp, flagsp) +- int fildes; +- struct strbuf *ctlptr; +- struct strbuf *dataptr; +- int *bandp; +- int *flagsp; ++getpmsg (int fildes, struct strbuf *ctlptr, struct strbuf *dataptr, int *bandp, ++ int *flagsp) + { + __set_errno (ENOSYS); + return -1; +diff --git a/streams/putmsg.c b/streams/putmsg.c +index 2d776bc96ab737b6..814e2a7e8c7d61a0 100644 +--- a/streams/putmsg.c ++++ b/streams/putmsg.c +@@ -19,11 +19,8 @@ + #include + + int +-putmsg (fildes, ctlptr, dataptr, flags) +- int fildes; +- const struct strbuf *ctlptr; +- const struct strbuf *dataptr; +- int flags; ++putmsg (int fildes, const struct strbuf *ctlptr, const struct strbuf *dataptr, ++ int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/streams/putpmsg.c b/streams/putpmsg.c +index c2fa820e6f2adf5b..fb9bfebf2072ecf9 100644 +--- a/streams/putpmsg.c ++++ b/streams/putpmsg.c +@@ -19,12 +19,8 @@ + #include + + int +-putpmsg (fildes, ctlptr, dataptr, band, flags) +- int fildes; +- const struct strbuf *ctlptr; +- const struct strbuf *dataptr; +- int band; +- int flags; ++putpmsg (int fildes, const struct strbuf *ctlptr, const struct strbuf *dataptr, ++ int band, int flags) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sunrpc/clnt_raw.c b/sunrpc/clnt_raw.c +index 6653ee42fbc9edbe..a149bf419b1b1d09 100644 +--- a/sunrpc/clnt_raw.c ++++ b/sunrpc/clnt_raw.c +@@ -132,14 +132,8 @@ clntraw_create (u_long prog, u_long vers) + libc_hidden_nolink_sunrpc (clntraw_create, GLIBC_2_0) + + static enum clnt_stat +-clntraw_call (h, proc, xargs, argsp, xresults, resultsp, timeout) +- CLIENT *h; +- u_long proc; +- xdrproc_t xargs; +- caddr_t argsp; +- xdrproc_t xresults; +- caddr_t resultsp; +- struct timeval timeout; ++clntraw_call (CLIENT *h, u_long proc, xdrproc_t xargs, caddr_t argsp, ++ xdrproc_t xresults, caddr_t resultsp, struct timeval timeout) + { + struct clntraw_private_s *clp = clntraw_private; + XDR *xdrs = &clp->xdr_stream; +diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c +index 901820397dd56cd6..99a7101d3ac816fb 100644 +--- a/sunrpc/clnt_tcp.c ++++ b/sunrpc/clnt_tcp.c +@@ -224,14 +224,9 @@ libc_hidden_nolink_sunrpc (clnttcp_create, GLIBC_2_0) + #endif + + static enum clnt_stat +-clnttcp_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) +- CLIENT *h; +- u_long proc; +- xdrproc_t xdr_args; +- caddr_t args_ptr; +- xdrproc_t xdr_results; +- caddr_t results_ptr; +- struct timeval timeout; ++clnttcp_call (CLIENT *h, u_long proc, xdrproc_t xdr_args, caddr_t args_ptr, ++ xdrproc_t xdr_results, caddr_t results_ptr, ++ struct timeval timeout) + { + struct ct_data *ct = (struct ct_data *) h->cl_private; + XDR *xdrs = &(ct->ct_xdrs); +diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c +index 808603c827af6f98..1e0c7d45d33d23a1 100644 +--- a/sunrpc/clnt_udp.c ++++ b/sunrpc/clnt_udp.c +@@ -256,12 +256,8 @@ clntudp_bufcreate (struct sockaddr_in *raddr, u_long program, u_long version, + libc_hidden_nolink_sunrpc (clntudp_bufcreate, GLIBC_2_0) + + CLIENT * +-clntudp_create (raddr, program, version, wait, sockp) +- struct sockaddr_in *raddr; +- u_long program; +- u_long version; +- struct timeval wait; +- int *sockp; ++clntudp_create (struct sockaddr_in *raddr, u_long program, u_long version, ++ struct timeval wait, int *sockp) + { + return __libc_clntudp_bufcreate (raddr, program, version, wait, + sockp, UDPMSGSIZE, UDPMSGSIZE, 0); +diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c +index 084669dea6819e7c..3e008353b56cf437 100644 +--- a/sunrpc/clnt_unix.c ++++ b/sunrpc/clnt_unix.c +@@ -203,14 +203,9 @@ fooy: + libc_hidden_nolink_sunrpc (clntunix_create, GLIBC_2_1) + + static enum clnt_stat +-clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) +- CLIENT *h; +- u_long proc; +- xdrproc_t xdr_args; +- caddr_t args_ptr; +- xdrproc_t xdr_results; +- caddr_t results_ptr; +- struct timeval timeout; ++clntunix_call (CLIENT *h, u_long proc, xdrproc_t xdr_args, caddr_t args_ptr, ++ xdrproc_t xdr_results, caddr_t results_ptr, ++ struct timeval timeout) + { + struct ct_data *ct = (struct ct_data *) h->cl_private; + XDR *xdrs = &(ct->ct_xdrs); +diff --git a/sunrpc/pm_getport.c b/sunrpc/pm_getport.c +index f10f87250d2784d7..5c43acc0609d7377 100644 +--- a/sunrpc/pm_getport.c ++++ b/sunrpc/pm_getport.c +@@ -152,11 +152,8 @@ libc_hidden_nolink_sunrpc (__libc_rpc_getport, GLIBC_PRIVATE) + * Returns 0 if no map exists. + */ + u_short +-pmap_getport (address, program, version, protocol) +- struct sockaddr_in *address; +- u_long program; +- u_long version; +- u_int protocol; ++pmap_getport (struct sockaddr_in *address, u_long program, u_long version, ++ u_int protocol) + { + return __libc_rpc_getport (address, program, version, protocol, 5, 60); + } +diff --git a/sunrpc/svc_udp.c b/sunrpc/svc_udp.c +index e99c97680676f509..d1c8788d20b6805c 100644 +--- a/sunrpc/svc_udp.c ++++ b/sunrpc/svc_udp.c +@@ -585,11 +585,8 @@ cache_set (SVCXPRT *xprt, u_long replylen) + * return 1 if found, 0 if not found + */ + static int +-cache_get (xprt, msg, replyp, replylenp) +- SVCXPRT *xprt; +- struct rpc_msg *msg; +- char **replyp; +- u_long *replylenp; ++cache_get (SVCXPRT *xprt, struct rpc_msg *msg, char **replyp, ++ u_long *replylenp) + { + u_int loc; + cache_ptr ent; +diff --git a/sunrpc/xdr_array.c b/sunrpc/xdr_array.c +index a6348612788cf338..fd9d1fb42f744844 100644 +--- a/sunrpc/xdr_array.c ++++ b/sunrpc/xdr_array.c +@@ -141,12 +141,8 @@ libc_hidden_nolink_sunrpc (xdr_array, GLIBC_2_0) + * > xdr_elem: routine to XDR each element + */ + bool_t +-xdr_vector (xdrs, basep, nelem, elemsize, xdr_elem) +- XDR *xdrs; +- char *basep; +- u_int nelem; +- u_int elemsize; +- xdrproc_t xdr_elem; ++xdr_vector (XDR *xdrs, char *basep, u_int nelem, u_int elemsize, ++ xdrproc_t xdr_elem) + { + u_int i; + char *elptr; +diff --git a/sysdeps/mach/hurd/getcwd.c b/sysdeps/mach/hurd/getcwd.c +index 6945e4d1c5c12237..16a3a6e3a112d9fd 100644 +--- a/sysdeps/mach/hurd/getcwd.c ++++ b/sysdeps/mach/hurd/getcwd.c +@@ -285,10 +285,8 @@ _hurd_canonicalize_directory_name_internal (file_t thisdir, + } + + char * +-__canonicalize_directory_name_internal (thisdir, buf, size) +- const char *thisdir; +- char *buf; +- size_t size; ++__canonicalize_directory_name_internal (const char *thisdir, char *buf, ++ size_t size) + { + char *result; + file_t port = __file_name_lookup (thisdir, 0, 0); +diff --git a/sysdeps/mach/hurd/pselect.c b/sysdeps/mach/hurd/pselect.c +index ada99094e4e0a44d..90287f6a6dd898db 100644 +--- a/sysdeps/mach/hurd/pselect.c ++++ b/sysdeps/mach/hurd/pselect.c +@@ -30,13 +30,8 @@ + SIGMASK for this call. Returns the number of ready descriptors, or -1 for + errors. */ + int +-__pselect (nfds, readfds, writefds, exceptfds, timeout, sigmask) +- int nfds; +- fd_set *readfds; +- fd_set *writefds; +- fd_set *exceptfds; +- const struct timespec *timeout; +- const sigset_t *sigmask; ++__pselect (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, ++ const struct timespec *timeout, const sigset_t *sigmask) + { + return _hurd_select (nfds, NULL, + readfds, writefds, exceptfds, timeout, sigmask); +diff --git a/sysdeps/mach/hurd/recvfrom.c b/sysdeps/mach/hurd/recvfrom.c +index 3a094aa0d2c9fda1..cde89fdcfb56ca0b 100644 +--- a/sysdeps/mach/hurd/recvfrom.c ++++ b/sysdeps/mach/hurd/recvfrom.c +@@ -27,13 +27,8 @@ + the sender, and store the actual size of the address in *ADDR_LEN. + Returns the number of bytes read or -1 for errors. */ + ssize_t +-__recvfrom (fd, buf, n, flags, addrarg, addr_len) +- int fd; +- void *buf; +- size_t n; +- int flags; +- __SOCKADDR_ARG addrarg; +- socklen_t *addr_len; ++__recvfrom (int fd, void *buf, size_t n, int flags, __SOCKADDR_ARG addrarg, ++ socklen_t *addr_len) + { + error_t err; + mach_port_t addrport; +diff --git a/sysdeps/mach/hurd/select.c b/sysdeps/mach/hurd/select.c +index e679637d95b18033..22f6e3b221fb8d82 100644 +--- a/sysdeps/mach/hurd/select.c ++++ b/sysdeps/mach/hurd/select.c +@@ -26,12 +26,8 @@ + after waiting the interval specified therein. Returns the number of ready + descriptors, or -1 for errors. */ + int +-__select (nfds, readfds, writefds, exceptfds, timeout) +- int nfds; +- fd_set *readfds; +- fd_set *writefds; +- fd_set *exceptfds; +- struct timeval *timeout; ++__select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, ++ struct timeval *timeout) + { + struct timespec ts, *to; + +diff --git a/sysdeps/posix/ttyname_r.c b/sysdeps/posix/ttyname_r.c +index bf8399d36d0e4541..7d2701da33c08624 100644 +--- a/sysdeps/posix/ttyname_r.c ++++ b/sysdeps/posix/ttyname_r.c +@@ -37,14 +37,8 @@ static int getttyname_r (int fd, char *buf, size_t buflen, + + static int + internal_function +-getttyname_r (fd, buf, buflen, mydev, myino, save, dostat) +- int fd; +- char *buf; +- size_t buflen; +- dev_t mydev; +- ino_t myino; +- int save; +- int *dostat; ++getttyname_r (int fd, char *buf, size_t buflen, dev_t mydev, ino_t myino, ++ int save, int *dostat) + { + struct stat st; + DIR *dirstream; +diff --git a/sysdeps/unix/sysv/linux/i386/putmsg.c b/sysdeps/unix/sysv/linux/i386/putmsg.c +index a413d8ce77d2f35d..84d54744c6d38c9f 100644 +--- a/sysdeps/unix/sysv/linux/i386/putmsg.c ++++ b/sysdeps/unix/sysv/linux/i386/putmsg.c +@@ -24,11 +24,8 @@ + + #ifdef __NR_putpmsg + int +-putmsg (fildes, ctlptr, dataptr, flags) +- int fildes; +- const struct strbuf *ctlptr; +- const struct strbuf *dataptr; +- int flags; ++putmsg (int fildes, const struct strbuf *ctlptr, const struct strbuf *dataptr, ++ int flags) + { + return INLINE_SYSCALL (putpmsg, 5, fildes, ctlptr, dataptr, -1, flags); + } +diff --git a/sysdeps/unix/sysv/linux/s390/semtimedop.c b/sysdeps/unix/sysv/linux/s390/semtimedop.c +index 53b82324dcb9f7e4..5628171762561c2e 100644 +--- a/sysdeps/unix/sysv/linux/s390/semtimedop.c ++++ b/sysdeps/unix/sysv/linux/s390/semtimedop.c +@@ -26,11 +26,8 @@ + /* Perform user-defined atomical operation of array of semaphores. */ + + int +-semtimedop (semid, sops, nsops, timeout) +- int semid; +- struct sembuf *sops; +- size_t nsops; +- const struct timespec *timeout; ++semtimedop (int semid, struct sembuf *sops, size_t nsops, ++ const struct timespec *timeout) + { + return INLINE_SYSCALL (ipc, 5, IPCOP_semtimedop, + semid, (int) nsops, timeout, sops); +diff --git a/sysdeps/unix/sysv/linux/semtimedop.c b/sysdeps/unix/sysv/linux/semtimedop.c +index 5a43f53975aeafcc..f9f04f5d28def4e1 100644 +--- a/sysdeps/unix/sysv/linux/semtimedop.c ++++ b/sysdeps/unix/sysv/linux/semtimedop.c +@@ -26,11 +26,8 @@ + /* Perform user-defined atomical operation of array of semaphores. */ + + int +-semtimedop (semid, sops, nsops, timeout) +- int semid; +- struct sembuf *sops; +- size_t nsops; +- const struct timespec *timeout; ++semtimedop (int semid, struct sembuf *sops, size_t nsops, ++ const struct timespec *timeout) + { + return INLINE_SYSCALL (ipc, 6, IPCOP_semtimedop, + semid, (int) nsops, 0, sops, +diff --git a/sysvipc/semtimedop.c b/sysvipc/semtimedop.c +index e7c631ac94e12f6a..5d776fe2d01f8438 100644 +--- a/sysvipc/semtimedop.c ++++ b/sysvipc/semtimedop.c +@@ -22,11 +22,8 @@ + /* Perform user-defined atomical operation of array of semaphores. */ + + int +-semtimedop (semid, sops, nsops, timeout) +- int semid; +- struct sembuf *sops; +- size_t nsops; +- const struct timespec *timeout; ++semtimedop (int semid, struct sembuf *sops, size_t nsops, ++ const struct timespec *timeout) + { + __set_errno (ENOSYS); + return -1; +diff --git a/time/setitimer.c b/time/setitimer.c +index 40880f8210adc6b8..903558767fbad824 100644 +--- a/time/setitimer.c ++++ b/time/setitimer.c +@@ -23,10 +23,8 @@ + set *OLD to the old value of timer WHICH. + Returns 0 on success, -1 on errors. */ + int +-__setitimer (which, new, old) +- enum __itimer_which which; +- const struct itimerval *new; +- struct itimerval *old; ++__setitimer (enum __itimer_which which, const struct itimerval *new, ++ struct itimerval *old) + { + if (new == NULL) + { +diff --git a/time/strftime_l.c b/time/strftime_l.c +index 873605720b837b15..0f6ac83d34d43755 100644 +--- a/time/strftime_l.c ++++ b/time/strftime_l.c +@@ -1438,11 +1438,8 @@ __strftime_internal (s, maxsize, format, tp, tzset_called ut_argument + strftime function and does not have the extra information whether the + TP arguments comes from a `gmtime' call or not. */ + size_t +-emacs_strftime (s, maxsize, format, tp) +- char *s; +- size_t maxsize; +- const char *format; +- const struct tm *tp; ++emacs_strftime (char *s, size_t maxsize, const char *format, ++ const struct tm *tp) + { + return my_strftime (s, maxsize, format, tp, 0); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-14.patch b/SOURCES/glibc-rh1505492-prototypes-14.patch new file mode 100644 index 0000000..ba2b148 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-14.patch @@ -0,0 +1,408 @@ +commit a72ddc1424d5bfcab14d90f1149cbb9b492f0120 +Author: Joseph Myers +Date: Tue Oct 20 11:51:03 2015 +0000 + + Convert 24 more function definitions to prototype style (array parameters). + + This automatically-generated patch converts 24 function definitions in + glibc from old-style K&R to prototype-style. Following my other + recent such patches, this one deals with the case of functions with + array parameters. + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). + + * crypt/cert.c (main): Convert to prototype-style function + definition. + * io/pipe.c (__pipe): Likewise. + * io/pipe2.c (__pipe2): Likewise. + * misc/futimesat.c (futimesat): Likewise. + * misc/utimes.c (__utimes): Likewise. + * posix/execve.c (__execve): Likewise. + * posix/execvp.c (execvp): Likewise. + * posix/execvpe.c (__execvpe): Likewise. + * posix/fexecve.c (fexecve): Likewise. + * socket/socketpair.c (socketpair): Likewise. + * stdlib/drand48-iter.c (__drand48_iterate): Likewise. + * stdlib/erand48.c (erand48): Likewise. + * stdlib/erand48_r.c (__erand48_r): Likewise. + * stdlib/jrand48.c (jrand48): Likewise. + * stdlib/jrand48_r.c (__jrand48_r): Likewise. + * stdlib/lcong48.c (lcong48): Likewise. + * stdlib/lcong48_r.c (__lcong48_r): Likewise. + * stdlib/nrand48.c (nrand48): Likewise. + * stdlib/nrand48_r.c (__nrand48_r): Likewise. + * stdlib/seed48.c (seed48): Likewise. + * stdlib/seed48_r.c (__seed48_r): Likewise. + * sysdeps/mach/hurd/execve.c (__execve): Likewise. + * sysdeps/mach/hurd/utimes.c (__utimes): Likewise. + * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Likewise. + +diff --git a/crypt/cert.c b/crypt/cert.c +index d651108860f0052a..80029e9078c1cdc0 100644 +--- a/crypt/cert.c ++++ b/crypt/cert.c +@@ -30,9 +30,7 @@ good_bye (void) + } + + int +-main(argc, argv) +- int argc; +- char *argv[]; ++main (int argc, char *argv[]) + { + char key[64],plain[64],cipher[64],answer[64]; + int i; +diff --git a/io/pipe.c b/io/pipe.c +index 1f1c03f0d5b44fe6..2223ac169c2b9d95 100644 +--- a/io/pipe.c ++++ b/io/pipe.c +@@ -24,8 +24,7 @@ + bytes written on PIPEDES[1] can be read from PIPEDES[0]. + Returns 0 if successful, -1 if not. */ + int +-__pipe (__pipedes) +- int __pipedes[2]; ++__pipe (int __pipedes[2]) + { + if (__pipedes == NULL) + { +diff --git a/io/pipe2.c b/io/pipe2.c +index 2478fc3c6128c981..9bfc8291330f899b 100644 +--- a/io/pipe2.c ++++ b/io/pipe2.c +@@ -24,9 +24,7 @@ + PIPEDES[1] can be read from PIPEDES[0]. Apply FLAGS to the new + file descriptors. Returns 0 if successful, -1 if not. */ + int +-__pipe2 (pipedes, flags) +- int pipedes[2]; +- int flags; ++__pipe2 (int pipedes[2], int flags) + { + if (pipedes == NULL) + { +diff --git a/misc/futimesat.c b/misc/futimesat.c +index b33939e0a1cf4b88..b428852aeb9a2590 100644 +--- a/misc/futimesat.c ++++ b/misc/futimesat.c +@@ -24,10 +24,7 @@ + /* Change the access time of FILE relative to FD to TVP[0] and + the modification time of FILE to TVP[1]. */ + int +-futimesat (fd, file, tvp) +- int fd; +- const char *file; +- const struct timeval tvp[2]; ++futimesat (int fd, const char *file, const struct timeval tvp[2]) + { + if (fd < 0 + && (file == NULL +diff --git a/misc/utimes.c b/misc/utimes.c +index 5cdfe6ca5e594e42..9c94f6be646bd955 100644 +--- a/misc/utimes.c ++++ b/misc/utimes.c +@@ -22,9 +22,7 @@ + /* Change the access time of FILE to TVP[0] and + the modification time of FILE to TVP[1]. */ + int +-__utimes (file, tvp) +- const char *file; +- const struct timeval tvp[2]; ++__utimes (const char *file, const struct timeval tvp[2]) + { + if (file == NULL) + { +diff --git a/posix/execve.c b/posix/execve.c +index 893cec2b19a39527..27b063fe7d31a59e 100644 +--- a/posix/execve.c ++++ b/posix/execve.c +@@ -23,10 +23,7 @@ + /* Replace the current process, executing PATH with arguments ARGV and + environment ENVP. ARGV and ENVP are terminated by NULL pointers. */ + int +-__execve (path, argv, envp) +- const char *path; +- char *const argv[]; +- char *const envp[]; ++__execve (const char *path, char *const argv[], char *const envp[]) + { + if (path == NULL || argv == NULL || envp == NULL) + { +diff --git a/posix/execvp.c b/posix/execvp.c +index 5f2e155cd55db43e..9140b93d27896d26 100644 +--- a/posix/execvp.c ++++ b/posix/execvp.c +@@ -22,9 +22,7 @@ + /* Execute FILE, searching in the `PATH' environment variable if it contains + no slashes, with arguments ARGV and environment from `environ'. */ + int +-execvp (file, argv) +- const char *file; +- char *const argv[]; ++execvp (const char *file, char *const argv[]) + { + return __execvpe (file, argv, __environ); + } +diff --git a/posix/execvpe.c b/posix/execvpe.c +index 48f777a9d57928fb..b607235c8bc27026 100644 +--- a/posix/execvpe.c ++++ b/posix/execvpe.c +@@ -46,10 +46,7 @@ scripts_argv (const char *file, char *const argv[], int argc, char **new_argv) + /* Execute FILE, searching in the `PATH' environment variable if it contains + no slashes, with arguments ARGV and environment from ENVP. */ + int +-__execvpe (file, argv, envp) +- const char *file; +- char *const argv[]; +- char *const envp[]; ++__execvpe (const char *file, char *const argv[], char *const envp[]) + { + if (*file == '\0') + { +diff --git a/posix/fexecve.c b/posix/fexecve.c +index 6a22a194e34d0789..1ebbbc6fe942e716 100644 +--- a/posix/fexecve.c ++++ b/posix/fexecve.c +@@ -23,10 +23,7 @@ + /* Execute the file FD refers to, overlaying the running program image. + ARGV and ENVP are passed to the new program, as for `execve'. */ + int +-fexecve (fd, argv, envp) +- int fd; +- char *const argv[]; +- char *const envp[]; ++fexecve (int fd, char *const argv[], char *const envp[]) + { + if (fd < 0 || argv == NULL || envp == NULL) + { +diff --git a/socket/socketpair.c b/socket/socketpair.c +index 031674831f88cd61..4da27fb3b616d26f 100644 +--- a/socket/socketpair.c ++++ b/socket/socketpair.c +@@ -23,11 +23,7 @@ + descriptors for them in FDS[0] and FDS[1]. If PROTOCOL is zero, + one will be chosen automatically. Returns 0 on success, -1 for errors. */ + int +-socketpair (domain, type, protocol, fds) +- int domain; +- int type; +- int protocol; +- int fds[2]; ++socketpair (int domain, int type, int protocol, int fds[2]) + { + __set_errno (ENOSYS); + return -1; +diff --git a/stdlib/drand48-iter.c b/stdlib/drand48-iter.c +index 9270aab068170970..0cb988028f25a405 100644 +--- a/stdlib/drand48-iter.c ++++ b/stdlib/drand48-iter.c +@@ -27,9 +27,7 @@ struct drand48_data __libc_drand48_data; + + + int +-__drand48_iterate (xsubi, buffer) +- unsigned short int xsubi[3]; +- struct drand48_data *buffer; ++__drand48_iterate (unsigned short int xsubi[3], struct drand48_data *buffer) + { + uint64_t X; + uint64_t result; +diff --git a/stdlib/erand48.c b/stdlib/erand48.c +index d2cf5af967b6663e..ff128ab72bb43e05 100644 +--- a/stdlib/erand48.c ++++ b/stdlib/erand48.c +@@ -20,8 +20,7 @@ + + + double +-erand48 (xsubi) +- unsigned short int xsubi[3]; ++erand48 (unsigned short int xsubi[3]) + { + double result; + +diff --git a/stdlib/erand48_r.c b/stdlib/erand48_r.c +index cdd02c9c963c89ed..9cf062da0ad1b89c 100644 +--- a/stdlib/erand48_r.c ++++ b/stdlib/erand48_r.c +@@ -22,10 +22,8 @@ + + + int +-__erand48_r (xsubi, buffer, result) +- unsigned short int xsubi[3]; +- struct drand48_data *buffer; +- double *result; ++__erand48_r (unsigned short int xsubi[3], struct drand48_data *buffer, ++ double *result) + { + union ieee754_double temp; + +diff --git a/stdlib/jrand48.c b/stdlib/jrand48.c +index af6bf6809155963c..a6d2f3ab0a1e0c9d 100644 +--- a/stdlib/jrand48.c ++++ b/stdlib/jrand48.c +@@ -20,8 +20,7 @@ + + + long int +-jrand48 (xsubi) +- unsigned short int xsubi[3]; ++jrand48 (unsigned short int xsubi[3]) + { + long int result; + +diff --git a/stdlib/jrand48_r.c b/stdlib/jrand48_r.c +index 78c57dbaa285f968..b0170e11d30fcf5e 100644 +--- a/stdlib/jrand48_r.c ++++ b/stdlib/jrand48_r.c +@@ -19,10 +19,8 @@ + #include + + int +-__jrand48_r (xsubi, buffer, result) +- unsigned short int xsubi[3]; +- struct drand48_data *buffer; +- long int *result; ++__jrand48_r (unsigned short int xsubi[3], struct drand48_data *buffer, ++ long int *result) + { + /* Compute next state. */ + if (__drand48_iterate (xsubi, buffer) < 0) +diff --git a/stdlib/lcong48.c b/stdlib/lcong48.c +index 31f403e01c10f104..b7943605041e99c0 100644 +--- a/stdlib/lcong48.c ++++ b/stdlib/lcong48.c +@@ -20,8 +20,7 @@ + + + void +-lcong48 (param) +- unsigned short int param[7]; ++lcong48 (unsigned short int param[7]) + { + (void) __lcong48_r (param, &__libc_drand48_data); + } +diff --git a/stdlib/lcong48_r.c b/stdlib/lcong48_r.c +index 03ffcd7eb03742de..063baa3c8753a6f9 100644 +--- a/stdlib/lcong48_r.c ++++ b/stdlib/lcong48_r.c +@@ -22,9 +22,7 @@ + #include + + int +-__lcong48_r (param, buffer) +- unsigned short int param[7]; +- struct drand48_data *buffer; ++__lcong48_r (unsigned short int param[7], struct drand48_data *buffer) + { + /* Store the given values. */ + memcpy (buffer->__x, ¶m[0], sizeof (buffer->__x)); +diff --git a/stdlib/nrand48.c b/stdlib/nrand48.c +index 927e7d25534292a0..9f9f2f550faf3d88 100644 +--- a/stdlib/nrand48.c ++++ b/stdlib/nrand48.c +@@ -20,8 +20,7 @@ + + + long int +-nrand48 (xsubi) +- unsigned short int xsubi[3]; ++nrand48 (unsigned short int xsubi[3]) + { + long int result; + +diff --git a/stdlib/nrand48_r.c b/stdlib/nrand48_r.c +index 15a9b0c20589198a..f57e34cdcc44ff9f 100644 +--- a/stdlib/nrand48_r.c ++++ b/stdlib/nrand48_r.c +@@ -19,10 +19,8 @@ + #include + + int +-__nrand48_r (xsubi, buffer, result) +- unsigned short int xsubi[3]; +- struct drand48_data *buffer; +- long int *result; ++__nrand48_r (unsigned short int xsubi[3], struct drand48_data *buffer, ++ long int *result) + { + /* Compute next state. */ + if (__drand48_iterate (xsubi, buffer) < 0) +diff --git a/stdlib/seed48.c b/stdlib/seed48.c +index 9808213eaeff876d..941c870977062bb3 100644 +--- a/stdlib/seed48.c ++++ b/stdlib/seed48.c +@@ -20,8 +20,7 @@ + + + unsigned short int * +-seed48 (seed16v) +- unsigned short int seed16v[3]; ++seed48 (unsigned short int seed16v[3]) + { + (void) __seed48_r (seed16v, &__libc_drand48_data); + +diff --git a/stdlib/seed48_r.c b/stdlib/seed48_r.c +index b821d2349d8bb0c1..c8d9262123200c1b 100644 +--- a/stdlib/seed48_r.c ++++ b/stdlib/seed48_r.c +@@ -21,9 +21,7 @@ + #include + + int +-__seed48_r (seed16v, buffer) +- unsigned short int seed16v[3]; +- struct drand48_data *buffer; ++__seed48_r (unsigned short int seed16v[3], struct drand48_data *buffer) + { + /* Save old value at a private place to be used as return value. */ + memcpy (buffer->__old_x, buffer->__x, sizeof (buffer->__x)); +diff --git a/sysdeps/mach/hurd/execve.c b/sysdeps/mach/hurd/execve.c +index 716cea7bf8fd0eba..72e509b7870085d0 100644 +--- a/sysdeps/mach/hurd/execve.c ++++ b/sysdeps/mach/hurd/execve.c +@@ -22,10 +22,7 @@ + /* Replace the current process, executing FILE_NAME with arguments ARGV and + environment ENVP. ARGV and ENVP are terminated by NULL pointers. */ + int +-__execve (file_name, argv, envp) +- const char *file_name; +- char *const argv[]; +- char *const envp[]; ++__execve (const char *file_name, char *const argv[], char *const envp[]) + { + error_t err; + file_t file = __file_name_lookup (file_name, O_EXEC, 0); +diff --git a/sysdeps/mach/hurd/utimes.c b/sysdeps/mach/hurd/utimes.c +index ae3d375b2dfb3c72..d915fae5bfee9e6e 100644 +--- a/sysdeps/mach/hurd/utimes.c ++++ b/sysdeps/mach/hurd/utimes.c +@@ -24,9 +24,7 @@ + /* Change the access time of FILE to TVP[0] and + the modification time of FILE to TVP[1]. */ + int +-__utimes (file, tvp) +- const char *file; +- const struct timeval tvp[2]; ++__utimes (const char *file, const struct timeval tvp[2]) + { + union tv + { +diff --git a/sysdeps/unix/sysv/linux/fexecve.c b/sysdeps/unix/sysv/linux/fexecve.c +index 032e680742507e70..df341cde0a3ea21b 100644 +--- a/sysdeps/unix/sysv/linux/fexecve.c ++++ b/sysdeps/unix/sysv/linux/fexecve.c +@@ -25,10 +25,7 @@ + /* Execute the file FD refers to, overlaying the running program image. + ARGV and ENVP are passed to the new program, as for `execve'. */ + int +-fexecve (fd, argv, envp) +- int fd; +- char *const argv[]; +- char *const envp[]; ++fexecve (int fd, char *const argv[], char *const envp[]) + { + if (fd < 0 || argv == NULL || envp == NULL) + { diff --git a/SOURCES/glibc-rh1505492-prototypes-15.patch b/SOURCES/glibc-rh1505492-prototypes-15.patch new file mode 100644 index 0000000..166af36 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-15.patch @@ -0,0 +1,442 @@ +commit 41075ae3e7f406e67d51da8cc5e89e397710d54b +Author: Joseph Myers +Date: Tue Oct 20 11:52:27 2015 +0000 + + Convert 29 more function definitions to prototype style (multiple parameters in one K&R parameter declaration). + + This automatically-generated patch converts 29 function definitions in + glibc (including one in an example in the manual) from old-style K&R + to prototype-style. Following my other recent such patches, this one + deals with the case of function definitions where one K&R parameter + declaration declares multiple parameters, as in: + + void + foo (a, b) + int a, *b; + { + } + + Tested for x86_64 and x86 (testsuite, and that installed stripped + shared libraries are unchanged by the patch). + + * crypt/crypt.c (_ufc_doit_r): Convert to prototype-style function + definition. + (_ufc_doit_r): Likewise. + * crypt/crypt_util.c (_ufc_copymem): Likewise. + (_ufc_output_conversion_r): Likewise. + * inet/inet_mkadr.c (__inet_makeaddr): Likewise. + * inet/rcmd.c (rcmd_af): Likewise. + (rcmd): Likewise. + (ruserok_af): Likewise. + (ruserok): Likewise. + (ruserok2_sa): Likewise. + (ruserok_sa): Likewise. + (iruserok_af): Likewise. + (iruserok): Likewise. + (__ivaliduser): Likewise. + (__validuser2_sa): Likewise. + * inet/rexec.c (rexec_af): Likewise. + (rexec): Likewise. + * inet/ruserpass.c (ruserpass): Likewise. + * locale/programs/xmalloc.c (xcalloc): Likewise. + * manual/examples/timeval_subtract.c (timeval_subtract): Likewise. + * math/w_drem.c (__drem): Likewise. + * math/w_dremf.c (__dremf): Likewise. + * math/w_dreml.c (__dreml): Likewise. + * misc/daemon.c (daemon): Likewise. + * resolv/res_debug.c (p_fqnname): Likewise. + * stdlib/div.c (div): Likewise. + * string/memcmp.c (memcmp_bytes): Likewise. + * sunrpc/pmap_rmt.c (pmap_rmtcall): Likewise. + * sunrpc/svc_udp.c (svcudp_bufcreate): Likewise. + +diff --git a/crypt/crypt.c b/crypt/crypt.c +index 34b8f2e280263f7a..c86f8a8ab0663f47 100644 +--- a/crypt/crypt.c ++++ b/crypt/crypt.c +@@ -36,9 +36,8 @@ + #define SBA(sb, v) (*(long32*)((char*)(sb)+(v))) + + void +-_ufc_doit_r(itr, __data, res) +- ufc_long itr, *res; +- struct crypt_data * __restrict __data; ++_ufc_doit_r (ufc_long itr, struct crypt_data * __restrict __data, ++ ufc_long *res) + { + int i; + long32 s, *k; +@@ -82,9 +81,8 @@ _ufc_doit_r(itr, __data, res) + #define SBA(sb, v) (*(long64*)((char*)(sb)+(v))) + + void +-_ufc_doit_r(itr, __data, res) +- ufc_long itr, *res; +- struct crypt_data * __restrict __data; ++_ufc_doit_r (ufc_long itr, struct crypt_data * __restrict __data, ++ ufc_long *res) + { + int i; + long64 l, r, s, *k; +diff --git a/crypt/crypt_util.c b/crypt/crypt_util.c +index 954bbfcfebd169b6..9a48e27a81ea7eb3 100644 +--- a/crypt/crypt_util.c ++++ b/crypt/crypt_util.c +@@ -312,9 +312,7 @@ _ufc_clearmem (char *start, int cnt) + } + + void +-_ufc_copymem(from, to, cnt) +- char *from, *to; +- int cnt; ++_ufc_copymem (char *from, char *to, int cnt) + { + while(cnt--) + *to++ = *from++; +@@ -770,10 +768,8 @@ _ufc_dofinalperm_r (ufc_long *res, struct crypt_data * __restrict __data) + */ + + void +-_ufc_output_conversion_r(v1, v2, salt, __data) +- ufc_long v1, v2; +- const char *salt; +- struct crypt_data * __restrict __data; ++_ufc_output_conversion_r (ufc_long v1, ufc_long v2, const char *salt, ++ struct crypt_data * __restrict __data) + { + int i, s, shf; + +diff --git a/inet/rcmd.c b/inet/rcmd.c +index efca27d674720e9c..9f7455eb1ca29045 100644 +--- a/inet/rcmd.c ++++ b/inet/rcmd.c +@@ -103,12 +103,8 @@ libc_hidden_proto (iruserok_af) + libc_freeres_ptr(static char *ahostbuf); + + int +-rcmd_af(ahost, rport, locuser, remuser, cmd, fd2p, af) +- char **ahost; +- u_short rport; +- const char *locuser, *remuser, *cmd; +- int *fd2p; +- sa_family_t af; ++rcmd_af (char **ahost, u_short rport, const char *locuser, const char *remuser, ++ const char *cmd, int *fd2p, sa_family_t af) + { + char paddr[INET6_ADDRSTRLEN]; + struct addrinfo hints, *res, *ai; +@@ -360,11 +356,8 @@ bad: + libc_hidden_def (rcmd_af) + + int +-rcmd(ahost, rport, locuser, remuser, cmd, fd2p) +- char **ahost; +- u_short rport; +- const char *locuser, *remuser, *cmd; +- int *fd2p; ++rcmd (char **ahost, u_short rport, const char *locuser, const char *remuser, ++ const char *cmd, int *fd2p) + { + return rcmd_af (ahost, rport, locuser, remuser, cmd, fd2p, AF_INET); + } +@@ -434,10 +427,8 @@ int __check_rhosts_file = 1; + char *__rcmd_errstr; + + int +-ruserok_af(rhost, superuser, ruser, luser, af) +- const char *rhost, *ruser, *luser; +- int superuser; +- sa_family_t af; ++ruserok_af (const char *rhost, int superuser, const char *ruser, ++ const char *luser, sa_family_t af) + { + struct addrinfo hints, *res, *res0; + int gai; +@@ -461,9 +452,8 @@ ruserok_af(rhost, superuser, ruser, luser, af) + libc_hidden_def (ruserok_af) + + int +-ruserok(rhost, superuser, ruser, luser) +- const char *rhost, *ruser, *luser; +- int superuser; ++ruserok (const char *rhost, int superuser, const char *ruser, ++ const char *luser) + { + return ruserok_af(rhost, superuser, ruser, luser, AF_INET); + } +@@ -523,11 +513,8 @@ iruserfopen (const char *file, uid_t okuser) + * Returns 0 if ok, -1 if not ok. + */ + static int +-ruserok2_sa (ra, ralen, superuser, ruser, luser, rhost) +- struct sockaddr *ra; +- size_t ralen; +- int superuser; +- const char *ruser, *luser, *rhost; ++ruserok2_sa (struct sockaddr *ra, size_t ralen, int superuser, ++ const char *ruser, const char *luser, const char *rhost) + { + FILE *hostf = NULL; + int isbad = -1; +@@ -584,22 +571,17 @@ ruserok2_sa (ra, ralen, superuser, ruser, luser, rhost) + * ruserok_sa() is now discussed on ipng, so + * currently disabled for external use + */ +-static int ruserok_sa(ra, ralen, superuser, ruser, luser) +- struct sockaddr *ra; +- size_t ralen; +- int superuser; +- const char *ruser, *luser; ++static int ++ruserok_sa (struct sockaddr *ra, size_t ralen, int superuser, ++ const char *ruser, const char *luser) + { + return ruserok2_sa(ra, ralen, superuser, ruser, luser, "-"); + } + + /* This is the exported version. */ + int +-iruserok_af (raddr, superuser, ruser, luser, af) +- const void *raddr; +- int superuser; +- const char *ruser, *luser; +- sa_family_t af; ++iruserok_af (const void *raddr, int superuser, const char *ruser, ++ const char *luser, sa_family_t af) + { + struct sockaddr_storage ra; + size_t ralen; +@@ -626,10 +608,7 @@ iruserok_af (raddr, superuser, ruser, luser, af) + libc_hidden_def (iruserok_af) + + int +-iruserok (raddr, superuser, ruser, luser) +- u_int32_t raddr; +- int superuser; +- const char *ruser, *luser; ++iruserok (u_int32_t raddr, int superuser, const char *ruser, const char *luser) + { + return iruserok_af (&raddr, superuser, ruser, luser, AF_INET); + } +@@ -646,10 +625,8 @@ iruserok (raddr, superuser, ruser, luser) + * Returns 0 if ok, -1 if not ok. + */ + int +-__ivaliduser(hostf, raddr, luser, ruser) +- FILE *hostf; +- u_int32_t raddr; +- const char *luser, *ruser; ++__ivaliduser (FILE *hostf, u_int32_t raddr, const char *luser, ++ const char *ruser) + { + struct sockaddr_in ra; + memset(&ra, '\0', sizeof(ra)); +@@ -760,11 +737,8 @@ __isempty (char *p) + * Returns 0 if positive match, -1 if _not_ ok. + */ + static int +-__validuser2_sa(hostf, ra, ralen, luser, ruser, rhost) +- FILE *hostf; +- struct sockaddr *ra; +- size_t ralen; +- const char *luser, *ruser, *rhost; ++__validuser2_sa (FILE *hostf, struct sockaddr *ra, size_t ralen, ++ const char *luser, const char *ruser, const char *rhost) + { + const char *user; + char *p; +diff --git a/inet/rexec.c b/inet/rexec.c +index 75bb47082b3fa4f2..4e6d48d6b8060b07 100644 +--- a/inet/rexec.c ++++ b/inet/rexec.c +@@ -49,12 +49,8 @@ int rexecoptions; + libc_freeres_ptr (static char *ahostbuf); + + int +-rexec_af(ahost, rport, name, pass, cmd, fd2p, af) +- char **ahost; +- int rport; +- const char *name, *pass, *cmd; +- int *fd2p; +- sa_family_t af; ++rexec_af (char **ahost, int rport, const char *name, const char *pass, ++ const char *cmd, int *fd2p, sa_family_t af) + { + struct sockaddr_storage from; + struct addrinfo hints, *res0; +@@ -198,11 +194,8 @@ bad: + libc_hidden_def (rexec_af) + + int +-rexec(ahost, rport, name, pass, cmd, fd2p) +- char **ahost; +- int rport; +- const char *name, *pass, *cmd; +- int *fd2p; ++rexec (char **ahost, int rport, const char *name, const char *pass, ++ const char *cmd, int *fd2p) + { + return rexec_af(ahost, rport, name, pass, cmd, fd2p, AF_INET); + } +diff --git a/inet/ruserpass.c b/inet/ruserpass.c +index f64ca3f1c12d478e..ec0acb4d46a1bb43 100644 +--- a/inet/ruserpass.c ++++ b/inet/ruserpass.c +@@ -94,8 +94,7 @@ static const struct toktab { + + + int +-ruserpass(host, aname, apass) +- const char *host, **aname, **apass; ++ruserpass (const char *host, const char **aname, const char **apass) + { + char *hdir, *buf, *tmp; + char myname[1024], *mydomain; +diff --git a/locale/programs/xmalloc.c b/locale/programs/xmalloc.c +index bfc86ab77c29ef0b..4415664d45b4bddd 100644 +--- a/locale/programs/xmalloc.c ++++ b/locale/programs/xmalloc.c +@@ -81,8 +81,7 @@ xmalloc (size_t n) + /* Allocate memory for N elements of S bytes, with error checking. */ + + VOID * +-xcalloc (n, s) +- size_t n, s; ++xcalloc (size_t n, size_t s) + { + VOID *p; + +diff --git a/manual/examples/timeval_subtract.c b/manual/examples/timeval_subtract.c +index 232d4b199c9d8b1a..bff6f0204e4cdc34 100644 +--- a/manual/examples/timeval_subtract.c ++++ b/manual/examples/timeval_subtract.c +@@ -20,8 +20,7 @@ + Return 1 if the difference is negative, otherwise 0. */ + + int +-timeval_subtract (result, x, y) +- struct timeval *result, *x, *y; ++timeval_subtract (struct timeval *result, struct timeval *x, struct timeval *y) + { + /* Perform the carry for the later subtraction by updating @var{y}. */ + if (x->tv_usec < y->tv_usec) { +diff --git a/math/w_drem.c b/math/w_drem.c +index 9e2b1e7472cc565b..843b67aa80335849 100644 +--- a/math/w_drem.c ++++ b/math/w_drem.c +@@ -8,8 +8,7 @@ + #include + + double +-__drem(x, y) +- double x, y; ++__drem (double x, double y) + { + return __remainder(x, y); + } +diff --git a/math/w_dremf.c b/math/w_dremf.c +index 4ec4baffd4c4fa3f..029e6bdf7f811e08 100644 +--- a/math/w_dremf.c ++++ b/math/w_dremf.c +@@ -9,8 +9,7 @@ + #include + + float +-__dremf(x, y) +- float x, y; ++__dremf (float x, float y) + { + return __remainderf(x, y); + } +diff --git a/math/w_dreml.c b/math/w_dreml.c +index aa73eedc496bca65..8d0139ac28061ccc 100644 +--- a/math/w_dreml.c ++++ b/math/w_dreml.c +@@ -10,8 +10,7 @@ + #include + + long double +-__dreml(x, y) +- long double x, y; ++__dreml (long double x, long double y) + { + return __remainderl(x, y); + } +diff --git a/misc/daemon.c b/misc/daemon.c +index 7597ce9996d5fde1..9d186b24bdc8ead0 100644 +--- a/misc/daemon.c ++++ b/misc/daemon.c +@@ -41,8 +41,7 @@ static char sccsid[] = "@(#)daemon.c 8.1 (Berkeley) 6/4/93"; + #include + + int +-daemon(nochdir, noclose) +- int nochdir, noclose; ++daemon (int nochdir, int noclose) + { + int fd; + +diff --git a/stdlib/div.c b/stdlib/div.c +index a388080ed2852792..f4367c8770cff758 100644 +--- a/stdlib/div.c ++++ b/stdlib/div.c +@@ -51,8 +51,7 @@ + + /* Return the `div_t' representation of NUMER over DENOM. */ + div_t +-div (numer, denom) +- int numer, denom; ++div (int numer, int denom) + { + div_t result; + +diff --git a/string/memcmp.c b/string/memcmp.c +index 2600c9d8038043a6..dbb286c7061fcbd6 100644 +--- a/string/memcmp.c ++++ b/string/memcmp.c +@@ -97,8 +97,7 @@ static int memcmp_bytes (op_t, op_t) __THROW; + __inline + # endif + static int +-memcmp_bytes (a, b) +- op_t a, b; ++memcmp_bytes (op_t a, op_t b) + { + long int srcp1 = (long int) &a; + long int srcp2 = (long int) &b; +diff --git a/sunrpc/pmap_rmt.c b/sunrpc/pmap_rmt.c +index c0adc5b49ac4c54f..c8a8011ea5474b3b 100644 +--- a/sunrpc/pmap_rmt.c ++++ b/sunrpc/pmap_rmt.c +@@ -64,13 +64,9 @@ static const struct timeval timeout = {3, 0}; + * programs to do a lookup and call in one step. + */ + enum clnt_stat +-pmap_rmtcall (addr, prog, vers, proc, xdrargs, argsp, xdrres, resp, tout, port_ptr) +- struct sockaddr_in *addr; +- u_long prog, vers, proc; +- xdrproc_t xdrargs, xdrres; +- caddr_t argsp, resp; +- struct timeval tout; +- u_long *port_ptr; ++pmap_rmtcall (struct sockaddr_in *addr, u_long prog, u_long vers, u_long proc, ++ xdrproc_t xdrargs, caddr_t argsp, xdrproc_t xdrres, caddr_t resp, ++ struct timeval tout, u_long *port_ptr) + { + int socket = -1; + CLIENT *client; +diff --git a/sunrpc/svc_udp.c b/sunrpc/svc_udp.c +index d1c8788d20b6805c..c1139b035317e886 100644 +--- a/sunrpc/svc_udp.c ++++ b/sunrpc/svc_udp.c +@@ -118,9 +118,7 @@ struct svcudp_data + * The routines returns NULL if a problem occurred. + */ + SVCXPRT * +-svcudp_bufcreate (sock, sendsz, recvsz) +- int sock; +- u_int sendsz, recvsz; ++svcudp_bufcreate (int sock, u_int sendsz, u_int recvsz) + { + bool_t madesock = FALSE; + SVCXPRT *xprt; diff --git a/SOURCES/glibc-rh1505492-prototypes-16.patch b/SOURCES/glibc-rh1505492-prototypes-16.patch new file mode 100644 index 0000000..2052427 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-16.patch @@ -0,0 +1,1736 @@ +commit 9dd346ff431fc761f1b748bd4da8bb59f7652094 +Author: Joseph Myers +Date: Tue Oct 20 11:54:09 2015 +0000 + + Convert 113 more function definitions to prototype style (files with assertions). + + This mostly automatically-generated patch converts 113 function + definitions in glibc from old-style K&R to prototype-style. Following + my other recent such patches, this one deals with the case of function + definitions in files that either contain assertions or where grep + suggested they might contain assertions - and thus where it isn't + possible to use a simple object code comparison as a sanity check on + the correctness of the patch, because line numbers are changed. + + A few such automatically-generated changes needed to be supplemented + by manual changes for the result to compile. openat64 had a prototype + declaration with "..." but an old-style definition in + sysdeps/unix/sysv/linux/dl-openat64.c, and "..." needed adding to the + generated prototype in the definition (I've filed + for diagnosing + such cases in GCC; the old state was undefined behavior not requiring + a diagnostic, but one seems a good idea). In addition, as Florian has + noted regparm attribute mismatches between declaration and definition + are only diagnosed for prototype definitions, and five functions + needed internal_function added to their definitions (in the case of + __pthread_mutex_cond_lock, via the macro definition of + __pthread_mutex_lock) to compile on i386. + + After this patch is in, remaining old-style definitions are probably + most readily fixed manually before we can turn on + -Wold-style-definition for all builds. + + Tested for x86_64 and x86 (testsuite). + + * crypt/md5-crypt.c (__md5_crypt_r): Convert to prototype-style + function definition. + * crypt/sha256-crypt.c (__sha256_crypt_r): Likewise. + * crypt/sha512-crypt.c (__sha512_crypt_r): Likewise. + * debug/backtracesyms.c (__backtrace_symbols): Likewise. + * elf/dl-minimal.c (_itoa): Likewise. + * hurd/hurdmalloc.c (malloc): Likewise. + (free): Likewise. + (realloc): Likewise. + * inet/inet6_option.c (inet6_option_space): Likewise. + (inet6_option_init): Likewise. + (inet6_option_append): Likewise. + (inet6_option_alloc): Likewise. + (inet6_option_next): Likewise. + (inet6_option_find): Likewise. + * io/ftw.c (FTW_NAME): Likewise. + (NFTW_NAME): Likewise. + (NFTW_NEW_NAME): Likewise. + (NFTW_OLD_NAME): Likewise. + * libio/iofwide.c (_IO_fwide): Likewise. + * libio/strops.c (_IO_str_init_static_internal): Likewise. + (_IO_str_init_static): Likewise. + (_IO_str_init_readonly): Likewise. + (_IO_str_overflow): Likewise. + (_IO_str_underflow): Likewise. + (_IO_str_count): Likewise. + (_IO_str_seekoff): Likewise. + (_IO_str_pbackfail): Likewise. + (_IO_str_finish): Likewise. + * libio/wstrops.c (_IO_wstr_init_static): Likewise. + (_IO_wstr_overflow): Likewise. + (_IO_wstr_underflow): Likewise. + (_IO_wstr_count): Likewise. + (_IO_wstr_seekoff): Likewise. + (_IO_wstr_pbackfail): Likewise. + (_IO_wstr_finish): Likewise. + * locale/programs/localedef.c (normalize_codeset): Likewise. + * locale/programs/locarchive.c (add_locale_to_archive): Likewise. + (add_locales_to_archive): Likewise. + (delete_locales_from_archive): Likewise. + * malloc/malloc.c (__libc_mallinfo): Likewise. + * math/gen-auto-libm-tests.c (init_fp_formats): Likewise. + * misc/tsearch.c (__tfind): Likewise. + * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Likewise. + * nptl/pthread_attr_getdetachstate.c + (__pthread_attr_getdetachstate): Likewise. + * nptl/pthread_attr_getguardsize.c (pthread_attr_getguardsize): + Likewise. + * nptl/pthread_attr_getinheritsched.c + (__pthread_attr_getinheritsched): Likewise. + * nptl/pthread_attr_getschedparam.c + (__pthread_attr_getschedparam): Likewise. + * nptl/pthread_attr_getschedpolicy.c + (__pthread_attr_getschedpolicy): Likewise. + * nptl/pthread_attr_getscope.c (__pthread_attr_getscope): + Likewise. + * nptl/pthread_attr_getstack.c (__pthread_attr_getstack): + Likewise. + * nptl/pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): + Likewise. + * nptl/pthread_attr_getstacksize.c (__pthread_attr_getstacksize): + Likewise. + * nptl/pthread_attr_init.c (__pthread_attr_init_2_1): Likewise. + (__pthread_attr_init_2_0): Likewise. + * nptl/pthread_attr_setdetachstate.c + (__pthread_attr_setdetachstate): Likewise. + * nptl/pthread_attr_setguardsize.c (pthread_attr_setguardsize): + Likewise. + * nptl/pthread_attr_setinheritsched.c + (__pthread_attr_setinheritsched): Likewise. + * nptl/pthread_attr_setschedparam.c + (__pthread_attr_setschedparam): Likewise. + * nptl/pthread_attr_setschedpolicy.c + (__pthread_attr_setschedpolicy): Likewise. + * nptl/pthread_attr_setscope.c (__pthread_attr_setscope): + Likewise. + * nptl/pthread_attr_setstack.c (__pthread_attr_setstack): + Likewise. + * nptl/pthread_attr_setstackaddr.c (__pthread_attr_setstackaddr): + Likewise. + * nptl/pthread_attr_setstacksize.c (__pthread_attr_setstacksize): + Likewise. + * nptl/pthread_condattr_setclock.c (pthread_condattr_setclock): + Likewise. + * nptl/pthread_create.c (__find_in_stack_list): Likewise. + * nptl/pthread_getattr_np.c (pthread_getattr_np): Likewise. + * nptl/pthread_mutex_cond_lock.c (__pthread_mutex_lock): Define to + use internal_function. + * nptl/pthread_mutex_init.c (__pthread_mutex_init): Convert to + prototype-style function definition. + * nptl/pthread_mutex_lock.c (__pthread_mutex_lock): Likewise. + (__pthread_mutex_cond_lock_adjust): Likewise. Use + internal_function. + * nptl/pthread_mutex_timedlock.c (pthread_mutex_timedlock): + Convert to prototype-style function definition. + * nptl/pthread_mutex_trylock.c (__pthread_mutex_trylock): + Likewise. + * nptl/pthread_mutex_unlock.c (__pthread_mutex_unlock_usercnt): + Likewise. + (__pthread_mutex_unlock): Likewise. + * nptl_db/td_ta_clear_event.c (td_ta_clear_event): Likewise. + * nptl_db/td_ta_set_event.c (td_ta_set_event): Likewise. + * nptl_db/td_thr_clear_event.c (td_thr_clear_event): Likewise. + * nptl_db/td_thr_event_enable.c (td_thr_event_enable): Likewise. + * nptl_db/td_thr_set_event.c (td_thr_set_event): Likewise. + * nss/makedb.c (process_input): Likewise. + * posix/fnmatch.c (__strchrnul): Likewise. + (__wcschrnul): Likewise. + (fnmatch): Likewise. + * posix/fnmatch_loop.c (FCT): Likewise. + * posix/glob.c (globfree): Likewise. + (__glob_pattern_type): Likewise. + (__glob_pattern_p): Likewise. + * posix/regcomp.c (re_compile_pattern): Likewise. + (re_set_syntax): Likewise. + (re_compile_fastmap): Likewise. + (regcomp): Likewise. + (regerror): Likewise. + (regfree): Likewise. + * posix/regexec.c (regexec): Likewise. + (re_match): Likewise. + (re_search): Likewise. + (re_match_2): Likewise. + (re_search_2): Likewise. + (re_search_stub): Likewise. Use internal_function + (re_copy_regs): Likewise. + (re_set_registers): Convert to prototype-style function + definition. + (prune_impossible_nodes): Likewise. Use internal_function. + * resolv/inet_net_pton.c (inet_net_pton): Convert to + prototype-style function definition. + (inet_net_pton_ipv4): Likewise. + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Likewise. + * sysdeps/pthread/aio_cancel.c (aio_cancel): Likewise. + * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. + * sysdeps/pthread/timer_delete.c (timer_delete): Likewise. + * sysdeps/unix/sysv/linux/dl-openat64.c (openat64): Likewise. + Make variadic. + * time/strptime_l.c (localtime_r): Convert to prototype-style + function definition. + * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise. + * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Likewise. + * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise. + * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise. + +Conflicts: + malloc/malloc.c + (Textual conflict due to malloc reformatting.) + math/gen-auto-libm-tests.c + (Missing backport of ffb536d0ac914a110c160c48d01097d132e20531, + Start generating libm tests automatically with MPFR; file + deleted manually.) + sysdeps/pthread/timer_delete.c + (Applied to nptl/sysdeps/pthread/timer_delete.c.) + +diff --git a/crypt/md5-crypt.c b/crypt/md5-crypt.c +index db4ea9c6f1f42f00..e8db37641ac50573 100644 +--- a/crypt/md5-crypt.c ++++ b/crypt/md5-crypt.c +@@ -93,11 +93,7 @@ extern char *__md5_crypt (const char *key, const char *salt); + /* This entry point is equivalent to the `crypt' function in Unix + libcs. */ + char * +-__md5_crypt_r (key, salt, buffer, buflen) +- const char *key; +- const char *salt; +- char *buffer; +- int buflen; ++__md5_crypt_r (const char *key, const char *salt, char *buffer, int buflen) + { + unsigned char alt_result[16] + __attribute__ ((__aligned__ (__alignof__ (md5_uint32)))); +diff --git a/crypt/sha256-crypt.c b/crypt/sha256-crypt.c +index 440933ac015ab2f6..7532d7ddbb558e9a 100644 +--- a/crypt/sha256-crypt.c ++++ b/crypt/sha256-crypt.c +@@ -101,11 +101,7 @@ extern char *__sha256_crypt (const char *key, const char *salt); + + + char * +-__sha256_crypt_r (key, salt, buffer, buflen) +- const char *key; +- const char *salt; +- char *buffer; +- int buflen; ++__sha256_crypt_r (const char *key, const char *salt, char *buffer, int buflen) + { + unsigned char alt_result[32] + __attribute__ ((__aligned__ (__alignof__ (uint32_t)))); +diff --git a/crypt/sha512-crypt.c b/crypt/sha512-crypt.c +index e5d9cacfdac437a1..8cba4264d2a871e5 100644 +--- a/crypt/sha512-crypt.c ++++ b/crypt/sha512-crypt.c +@@ -101,11 +101,7 @@ extern char *__sha512_crypt (const char *key, const char *salt); + + + char * +-__sha512_crypt_r (key, salt, buffer, buflen) +- const char *key; +- const char *salt; +- char *buffer; +- int buflen; ++__sha512_crypt_r (const char *key, const char *salt, char *buffer, int buflen) + { + unsigned char alt_result[64] + __attribute__ ((__aligned__ (__alignof__ (uint64_t)))); +diff --git a/debug/backtracesyms.c b/debug/backtracesyms.c +index 3fabf26a8be2289c..938f5f6ff6b38b8a 100644 +--- a/debug/backtracesyms.c ++++ b/debug/backtracesyms.c +@@ -34,9 +34,7 @@ + + + char ** +-__backtrace_symbols (array, size) +- void *const *array; +- int size; ++__backtrace_symbols (void *const *array, int size) + { + Dl_info info[size]; + int status[size]; +diff --git a/elf/dl-minimal.c b/elf/dl-minimal.c +index a8b2d4f339e4c3dd..55ee1af9829bd8f1 100644 +--- a/elf/dl-minimal.c ++++ b/elf/dl-minimal.c +@@ -309,11 +309,8 @@ __strtoul_internal (const char *nptr, char **endptr, int base, int group) + also has to be present and it is never about speed when these + functions are used. */ + char * +-_itoa (value, buflim, base, upper_case) +- unsigned long long int value; +- char *buflim; +- unsigned int base; +- int upper_case; ++_itoa (unsigned long long int value, char *buflim, unsigned int base, ++ int upper_case) + { + assert (! upper_case); + +diff --git a/hurd/hurdmalloc.c b/hurd/hurdmalloc.c +index da611653b602975f..8d1ac3069758bd2d 100644 +--- a/hurd/hurdmalloc.c ++++ b/hurd/hurdmalloc.c +@@ -202,8 +202,7 @@ more_memory(int size, free_list_t fl) + + /* Declaration changed to standard one for GNU. */ + void * +-malloc(size) +- size_t size; ++malloc (size_t size) + { + int i, n; + free_list_t fl; +@@ -269,8 +268,7 @@ malloc(size) + + /* Declaration changed to standard one for GNU. */ + void +-free(base) +- void *base; ++free (void *base) + { + header_t h; + free_list_t fl; +@@ -318,9 +316,7 @@ free(base) + + /* Declaration changed to standard one for GNU. */ + void * +-realloc(old_base, new_size) +- void *old_base; +- size_t new_size; ++realloc (void *old_base, size_t new_size) + { + header_t h; + free_list_t fl; +diff --git a/inet/inet6_option.c b/inet/inet6_option.c +index b5ca2a604126b93a..d8c202b867bbe9f6 100644 +--- a/inet/inet6_option.c ++++ b/inet/inet6_option.c +@@ -88,8 +88,7 @@ static uint8_t *option_alloc (struct cmsghdr *cmsg, int datalen, int multx, + beginning (the value y in the alignment term "xn + y"), the type + byte, the length byte, and the option data. */ + int +-inet6_option_space (nbytes) +- int nbytes; ++inet6_option_space (int nbytes) + { + /* Add room for the extension header. */ + nbytes += sizeof (struct ip6_ext); +@@ -106,10 +105,7 @@ link_warning (inet6_option_space, + contain either Hop-by-Hop or Destination options. It returns 0 on + success or -1 on an error. */ + int +-inet6_option_init (bp, cmsgp, type) +- void *bp; +- struct cmsghdr **cmsgp; +- int type; ++inet6_option_init (void *bp, struct cmsghdr **cmsgp, int type) + { + /* Only Hop-by-Hop or Destination options allowed. */ + if (type != IPV6_HOPOPTS && type != IPV6_DSTOPTS) +@@ -143,11 +139,8 @@ link_warning (inet6_option_init, + inet6_option_init(). This function returns 0 if it succeeds or -1 on + an error. */ + int +-inet6_option_append (cmsg, typep, multx, plusy) +- struct cmsghdr *cmsg; +- const uint8_t *typep; +- int multx; +- int plusy; ++inet6_option_append (struct cmsghdr *cmsg, const uint8_t *typep, int multx, ++ int plusy) + { + /* typep is a pointer to the 8-bit option type. It is assumed that this + field is immediately followed by the 8-bit option data length field, +@@ -223,11 +216,7 @@ option_alloc (struct cmsghdr *cmsg, int datalen, int multx, int plusy) + + + uint8_t * +-inet6_option_alloc (cmsg, datalen, multx, plusy) +- struct cmsghdr *cmsg; +- int datalen; +- int multx; +- int plusy; ++inet6_option_alloc (struct cmsghdr *cmsg, int datalen, int multx, int plusy) + { + return option_alloc (cmsg, datalen, multx, plusy); + } +@@ -245,9 +234,7 @@ link_warning (inet6_option_alloc, + to be processed, the return value is -1 and *tptrp is NULL. If an + error occurs, the return value is -1 and *tptrp is not NULL. */ + int +-inet6_option_next (cmsg, tptrp) +- const struct cmsghdr *cmsg; +- uint8_t **tptrp; ++inet6_option_next (const struct cmsghdr *cmsg, uint8_t **tptrp) + { + /* Make sure it is an option of the right type. */ + if (cmsg->cmsg_level != IPPROTO_IPV6 +@@ -303,10 +290,7 @@ link_warning (inet6_option_next, + pointer to cmsghdr structure of which cmsg_level equals IPPROTO_IPV6 + and cmsg_type equals either IPV6_HOPOPTS or IPV6_DSTOPTS. */ + int +-inet6_option_find (cmsg, tptrp, type) +- const struct cmsghdr *cmsg; +- uint8_t **tptrp; +- int type; ++inet6_option_find (const struct cmsghdr *cmsg, uint8_t **tptrp, int type) + { + /* Make sure it is an option of the right type. */ + if (cmsg->cmsg_level != IPPROTO_IPV6 +diff --git a/io/ftw.c b/io/ftw.c +index ffdb4b02dc7ca4d5..57777b3de86e417c 100644 +--- a/io/ftw.c ++++ b/io/ftw.c +@@ -817,21 +817,14 @@ ftw_startup (const char *dir, int is_nftw, void *func, int descriptors, + /* Entry points. */ + + int +-FTW_NAME (path, func, descriptors) +- const char *path; +- FTW_FUNC_T func; +- int descriptors; ++FTW_NAME (const char *path, FTW_FUNC_T func, int descriptors) + { + return ftw_startup (path, 0, func, descriptors, 0); + } + + #ifndef _LIBC + int +-NFTW_NAME (path, func, descriptors, flags) +- const char *path; +- NFTW_FUNC_T func; +- int descriptors; +- int flags; ++NFTW_NAME (const char *path, NFTW_FUNC_T func, int descriptors, int flags) + { + return ftw_startup (path, 1, func, descriptors, flags); + } +@@ -842,11 +835,7 @@ NFTW_NAME (path, func, descriptors, flags) + int NFTW_NEW_NAME (const char *, NFTW_FUNC_T, int, int); + + int +-NFTW_NEW_NAME (path, func, descriptors, flags) +- const char *path; +- NFTW_FUNC_T func; +- int descriptors; +- int flags; ++NFTW_NEW_NAME (const char *path, NFTW_FUNC_T func, int descriptors, int flags) + { + if (flags + & ~(FTW_PHYS | FTW_MOUNT | FTW_CHDIR | FTW_DEPTH | FTW_ACTIONRETVAL)) +@@ -867,11 +856,7 @@ int NFTW_OLD_NAME (const char *, NFTW_FUNC_T, int, int); + + int + attribute_compat_text_section +-NFTW_OLD_NAME (path, func, descriptors, flags) +- const char *path; +- NFTW_FUNC_T func; +- int descriptors; +- int flags; ++NFTW_OLD_NAME (const char *path, NFTW_FUNC_T func, int descriptors, int flags) + { + flags &= (FTW_PHYS | FTW_MOUNT | FTW_CHDIR | FTW_DEPTH); + return ftw_startup (path, 1, func, descriptors, flags); +diff --git a/libio/iofwide.c b/libio/iofwide.c +index 675fbccc794ffe79..fe685402001a5336 100644 +--- a/libio/iofwide.c ++++ b/libio/iofwide.c +@@ -93,9 +93,7 @@ const struct __gconv_trans_data __libio_translit attribute_hidden = + the orientation first. */ + #undef _IO_fwide + int +-_IO_fwide (fp, mode) +- _IO_FILE *fp; +- int mode; ++_IO_fwide (_IO_FILE *fp, int mode) + { + /* Normalize the value. */ + mode = mode < 0 ? -1 : (mode == 0 ? 0 : 1); +diff --git a/libio/strops.c b/libio/strops.c +index a5b76af963e77877..fdd113a60811e593 100644 +--- a/libio/strops.c ++++ b/libio/strops.c +@@ -31,11 +31,8 @@ + #include + + void +-_IO_str_init_static_internal (sf, ptr, size, pstart) +- _IO_strfile *sf; +- char *ptr; +- _IO_size_t size; +- char *pstart; ++_IO_str_init_static_internal (_IO_strfile *sf, char *ptr, _IO_size_t size, ++ char *pstart) + { + _IO_FILE *fp = &sf->_sbf._f; + char *end; +@@ -81,9 +78,7 @@ _IO_str_init_readonly (_IO_strfile *sf, const char *ptr, int size) + } + + int +-_IO_str_overflow (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_str_overflow (_IO_FILE *fp, int c) + { + int flush_only = c == EOF; + _IO_size_t pos; +@@ -144,8 +139,7 @@ _IO_str_overflow (fp, c) + libc_hidden_def (_IO_str_overflow) + + int +-_IO_str_underflow (fp) +- _IO_FILE *fp; ++_IO_str_underflow (_IO_FILE *fp) + { + if (fp->_IO_write_ptr > fp->_IO_read_end) + fp->_IO_read_end = fp->_IO_write_ptr; +@@ -165,8 +159,7 @@ libc_hidden_def (_IO_str_underflow) + /* The size of the valid part of the buffer. */ + + _IO_ssize_t +-_IO_str_count (fp) +- _IO_FILE *fp; ++_IO_str_count (_IO_FILE *fp) + { + return ((fp->_IO_write_ptr > fp->_IO_read_end + ? fp->_IO_write_ptr : fp->_IO_read_end) +@@ -239,11 +232,7 @@ enlarge_userbuf (_IO_FILE *fp, _IO_off64_t offset, int reading) + + + _IO_off64_t +-_IO_str_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_str_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t new_pos; + +@@ -316,9 +305,7 @@ _IO_str_seekoff (fp, offset, dir, mode) + libc_hidden_def (_IO_str_seekoff) + + int +-_IO_str_pbackfail (fp, c) +- _IO_FILE *fp; +- int c; ++_IO_str_pbackfail (_IO_FILE *fp, int c) + { + if ((fp->_flags & _IO_NO_WRITES) && c != EOF) + return EOF; +@@ -327,9 +314,7 @@ _IO_str_pbackfail (fp, c) + libc_hidden_def (_IO_str_pbackfail) + + void +-_IO_str_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_str_finish (_IO_FILE *fp, int dummy) + { + if (fp->_IO_buf_base && !(fp->_flags & _IO_USER_BUF)) + (((_IO_strfile *) fp)->_s._free_buffer) (fp->_IO_buf_base); +diff --git a/libio/wstrops.c b/libio/wstrops.c +index d84c5883ad7ca20d..7a9a33ab8763b8ff 100644 +--- a/libio/wstrops.c ++++ b/libio/wstrops.c +@@ -32,11 +32,8 @@ + #include + + void +-_IO_wstr_init_static (fp, ptr, size, pstart) +- _IO_FILE *fp; +- wchar_t *ptr; +- _IO_size_t size; +- wchar_t *pstart; ++_IO_wstr_init_static (_IO_FILE *fp, wchar_t *ptr, _IO_size_t size, ++ wchar_t *pstart) + { + wchar_t *end; + +@@ -70,9 +67,7 @@ _IO_wstr_init_static (fp, ptr, size, pstart) + } + + _IO_wint_t +-_IO_wstr_overflow (fp, c) +- _IO_FILE *fp; +- _IO_wint_t c; ++_IO_wstr_overflow (_IO_FILE *fp, _IO_wint_t c) + { + int flush_only = c == WEOF; + _IO_size_t pos; +@@ -142,8 +137,7 @@ _IO_wstr_overflow (fp, c) + + + _IO_wint_t +-_IO_wstr_underflow (fp) +- _IO_FILE *fp; ++_IO_wstr_underflow (_IO_FILE *fp) + { + if (fp->_wide_data->_IO_write_ptr > fp->_wide_data->_IO_read_end) + fp->_wide_data->_IO_read_end = fp->_wide_data->_IO_write_ptr; +@@ -162,8 +156,7 @@ _IO_wstr_underflow (fp) + + /* The size of the valid part of the buffer. */ + _IO_ssize_t +-_IO_wstr_count (fp) +- _IO_FILE *fp; ++_IO_wstr_count (_IO_FILE *fp) + { + struct _IO_wide_data *wd = fp->_wide_data; + +@@ -244,11 +237,7 @@ enlarge_userbuf (_IO_FILE *fp, _IO_off64_t offset, int reading) + + + _IO_off64_t +-_IO_wstr_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_wstr_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t new_pos; + +@@ -326,9 +315,7 @@ _IO_wstr_seekoff (fp, offset, dir, mode) + } + + _IO_wint_t +-_IO_wstr_pbackfail (fp, c) +- _IO_FILE *fp; +- _IO_wint_t c; ++_IO_wstr_pbackfail (_IO_FILE *fp, _IO_wint_t c) + { + if ((fp->_flags & _IO_NO_WRITES) && c != WEOF) + return WEOF; +@@ -336,9 +323,7 @@ _IO_wstr_pbackfail (fp, c) + } + + void +-_IO_wstr_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_wstr_finish (_IO_FILE *fp, int dummy) + { + if (fp->_wide_data->_IO_buf_base && !(fp->_flags2 & _IO_FLAGS2_USER_WBUF)) + (((_IO_strfile *) fp)->_s._free_buffer) (fp->_wide_data->_IO_buf_base); +diff --git a/locale/programs/localedef.c b/locale/programs/localedef.c +index d1a8916888d21235..4a63f68dd8309ec7 100644 +--- a/locale/programs/localedef.c ++++ b/locale/programs/localedef.c +@@ -491,9 +491,7 @@ construct_output_path (char *path) + names. Normalization allows the user to use any of the common + names. */ + static const char * +-normalize_codeset (codeset, name_len) +- const char *codeset; +- size_t name_len; ++normalize_codeset (const char *codeset, size_t name_len) + { + int len = 0; + int only_digit = 1; +diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c +index 1eae271186bc80a9..de98b994425474ba 100644 +--- a/locale/programs/locarchive.c ++++ b/locale/programs/locarchive.c +@@ -1059,11 +1059,8 @@ add_locale (struct locarhandle *ah, + of the files if necessary. Add all the names, possibly overwriting + old files. */ + int +-add_locale_to_archive (ah, name, data, replace) +- struct locarhandle *ah; +- const char *name; +- locale_data_t data; +- bool replace; ++add_locale_to_archive (struct locarhandle *ah, const char *name, ++ locale_data_t data, bool replace) + { + char *normalized_name = NULL; + uint32_t locrec_offset; +@@ -1260,10 +1257,7 @@ add_locale_to_archive (ah, name, data, replace) + + + int +-add_locales_to_archive (nlist, list, replace) +- size_t nlist; +- char *list[]; +- bool replace; ++add_locales_to_archive (size_t nlist, char *list[], bool replace) + { + struct locarhandle ah; + int result = 0; +@@ -1460,9 +1454,7 @@ add_locales_to_archive (nlist, list, replace) + + + int +-delete_locales_from_archive (nlist, list) +- size_t nlist; +- char *list[]; ++delete_locales_from_archive (size_t nlist, char *list[]) + { + struct locarhandle ah; + struct locarhead *head; +diff --git a/malloc/malloc.c b/malloc/malloc.c +index 3e7b9bf9e8d71247..1de07de97bb421d6 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -4662,7 +4662,8 @@ int_mallinfo(mstate av, struct mallinfo *m) + } + + +-struct mallinfo __libc_mallinfo() ++struct mallinfo ++__libc_mallinfo (void) + { + struct mallinfo m; + mstate ar_ptr; +diff --git a/misc/tsearch.c b/misc/tsearch.c +index eb4d97d7eee89a89..5f012e9ba9f678dc 100644 +--- a/misc/tsearch.c ++++ b/misc/tsearch.c +@@ -300,10 +300,7 @@ weak_alias (__tsearch, tsearch) + KEY is the key to be located, ROOTP is the address of tree root, + COMPAR the ordering function. */ + void * +-__tfind (key, vrootp, compar) +- const void *key; +- void *const *vrootp; +- __compar_fn_t compar; ++__tfind (const void *key, void *const *vrootp, __compar_fn_t compar) + { + node *rootp = (node *) vrootp; + +diff --git a/nptl/pthread_attr_destroy.c b/nptl/pthread_attr_destroy.c +index c79752d89d05e158..ccdb5cc41f10bcdf 100644 +--- a/nptl/pthread_attr_destroy.c ++++ b/nptl/pthread_attr_destroy.c +@@ -24,8 +24,7 @@ + #include + + int +-__pthread_attr_destroy (attr) +- pthread_attr_t *attr; ++__pthread_attr_destroy (pthread_attr_t *attr) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getdetachstate.c b/nptl/pthread_attr_getdetachstate.c +index 1c800323bf165a9d..601c5e77483bb5dc 100644 +--- a/nptl/pthread_attr_getdetachstate.c ++++ b/nptl/pthread_attr_getdetachstate.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_attr_getdetachstate (attr, detachstate) +- const pthread_attr_t *attr; +- int *detachstate; ++__pthread_attr_getdetachstate (const pthread_attr_t *attr, int *detachstate) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getguardsize.c b/nptl/pthread_attr_getguardsize.c +index 497010dc17002951..3fba0b8c548305f5 100644 +--- a/nptl/pthread_attr_getguardsize.c ++++ b/nptl/pthread_attr_getguardsize.c +@@ -21,9 +21,7 @@ + + + int +-pthread_attr_getguardsize (attr, guardsize) +- const pthread_attr_t *attr; +- size_t *guardsize; ++pthread_attr_getguardsize (const pthread_attr_t *attr, size_t *guardsize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getinheritsched.c b/nptl/pthread_attr_getinheritsched.c +index b25d808247cd26f1..df2c31dfa5955677 100644 +--- a/nptl/pthread_attr_getinheritsched.c ++++ b/nptl/pthread_attr_getinheritsched.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_attr_getinheritsched (attr, inherit) +- const pthread_attr_t *attr; +- int *inherit; ++__pthread_attr_getinheritsched (const pthread_attr_t *attr, int *inherit) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getschedparam.c b/nptl/pthread_attr_getschedparam.c +index 352ecb54f31e0cd5..f8a0b8be60bc059b 100644 +--- a/nptl/pthread_attr_getschedparam.c ++++ b/nptl/pthread_attr_getschedparam.c +@@ -22,9 +22,8 @@ + + + int +-__pthread_attr_getschedparam (attr, param) +- const pthread_attr_t *attr; +- struct sched_param *param; ++__pthread_attr_getschedparam (const pthread_attr_t *attr, ++ struct sched_param *param) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getschedpolicy.c b/nptl/pthread_attr_getschedpolicy.c +index badec6b4e73ebe4c..4140876527bf833f 100644 +--- a/nptl/pthread_attr_getschedpolicy.c ++++ b/nptl/pthread_attr_getschedpolicy.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_attr_getschedpolicy (attr, policy) +- const pthread_attr_t *attr; +- int *policy; ++__pthread_attr_getschedpolicy (const pthread_attr_t *attr, int *policy) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getscope.c b/nptl/pthread_attr_getscope.c +index b2e1b141b6d109e9..fc79b8e95a779e99 100644 +--- a/nptl/pthread_attr_getscope.c ++++ b/nptl/pthread_attr_getscope.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_attr_getscope (attr, scope) +- const pthread_attr_t *attr; +- int *scope; ++__pthread_attr_getscope (const pthread_attr_t *attr, int *scope) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getstack.c b/nptl/pthread_attr_getstack.c +index 0ede9e77a1260997..df77a35380be68a4 100644 +--- a/nptl/pthread_attr_getstack.c ++++ b/nptl/pthread_attr_getstack.c +@@ -21,10 +21,8 @@ + + + int +-__pthread_attr_getstack (attr, stackaddr, stacksize) +- const pthread_attr_t *attr; +- void **stackaddr; +- size_t *stacksize; ++__pthread_attr_getstack (const pthread_attr_t *attr, void **stackaddr, ++ size_t *stacksize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getstackaddr.c b/nptl/pthread_attr_getstackaddr.c +index 958a856f5842c0c1..859eb7dec98568b7 100644 +--- a/nptl/pthread_attr_getstackaddr.c ++++ b/nptl/pthread_attr_getstackaddr.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_getstackaddr (attr, stackaddr) +- const pthread_attr_t *attr; +- void **stackaddr; ++__pthread_attr_getstackaddr (const pthread_attr_t *attr, void **stackaddr) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_getstacksize.c b/nptl/pthread_attr_getstacksize.c +index 7c63e55942536cc3..53d65257ebdcd408 100644 +--- a/nptl/pthread_attr_getstacksize.c ++++ b/nptl/pthread_attr_getstacksize.c +@@ -21,9 +21,7 @@ + + + int +-__pthread_attr_getstacksize (attr, stacksize) +- const pthread_attr_t *attr; +- size_t *stacksize; ++__pthread_attr_getstacksize (const pthread_attr_t *attr, size_t *stacksize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_init.c b/nptl/pthread_attr_init.c +index a7add4b80d248cc8..e5b800b72e100acf 100644 +--- a/nptl/pthread_attr_init.c ++++ b/nptl/pthread_attr_init.c +@@ -30,8 +30,7 @@ int __attr_list_lock = LLL_LOCK_INITIALIZER; + + + int +-__pthread_attr_init_2_1 (attr) +- pthread_attr_t *attr; ++__pthread_attr_init_2_1 (pthread_attr_t *attr) + { + struct pthread_attr *iattr; + +@@ -54,8 +53,7 @@ versioned_symbol (libpthread, __pthread_attr_init_2_1, pthread_attr_init, + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1) + int +-__pthread_attr_init_2_0 (attr) +- pthread_attr_t *attr; ++__pthread_attr_init_2_0 (pthread_attr_t *attr) + { + /* This code is specific to the old LinuxThread code which has a too + small pthread_attr_t definition. The struct looked like +diff --git a/nptl/pthread_attr_setdetachstate.c b/nptl/pthread_attr_setdetachstate.c +index 9ce8651f0b5906d3..9d22974536c07822 100644 +--- a/nptl/pthread_attr_setdetachstate.c ++++ b/nptl/pthread_attr_setdetachstate.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_setdetachstate (attr, detachstate) +- pthread_attr_t *attr; +- int detachstate; ++__pthread_attr_setdetachstate (pthread_attr_t *attr, int detachstate) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setguardsize.c b/nptl/pthread_attr_setguardsize.c +index b9f1436054577e15..475054642f406517 100644 +--- a/nptl/pthread_attr_setguardsize.c ++++ b/nptl/pthread_attr_setguardsize.c +@@ -21,9 +21,7 @@ + + + int +-pthread_attr_setguardsize (attr, guardsize) +- pthread_attr_t *attr; +- size_t guardsize; ++pthread_attr_setguardsize (pthread_attr_t *attr, size_t guardsize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setinheritsched.c b/nptl/pthread_attr_setinheritsched.c +index 2cc8c0ee06149f96..1107c64866f7e078 100644 +--- a/nptl/pthread_attr_setinheritsched.c ++++ b/nptl/pthread_attr_setinheritsched.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_setinheritsched (attr, inherit) +- pthread_attr_t *attr; +- int inherit; ++__pthread_attr_setinheritsched (pthread_attr_t *attr, int inherit) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setschedparam.c b/nptl/pthread_attr_setschedparam.c +index 239a41bfcc764903..ad7488688cc8d51d 100644 +--- a/nptl/pthread_attr_setschedparam.c ++++ b/nptl/pthread_attr_setschedparam.c +@@ -23,9 +23,8 @@ + + + int +-__pthread_attr_setschedparam (attr, param) +- pthread_attr_t *attr; +- const struct sched_param *param; ++__pthread_attr_setschedparam (pthread_attr_t *attr, ++ const struct sched_param *param) + { + assert (sizeof (*attr) >= sizeof (struct pthread_attr)); + struct pthread_attr *iattr = (struct pthread_attr *) attr; +diff --git a/nptl/pthread_attr_setschedpolicy.c b/nptl/pthread_attr_setschedpolicy.c +index 0ba38a022eb564bf..ccab923cabe9f20b 100644 +--- a/nptl/pthread_attr_setschedpolicy.c ++++ b/nptl/pthread_attr_setschedpolicy.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_setschedpolicy (attr, policy) +- pthread_attr_t *attr; +- int policy; ++__pthread_attr_setschedpolicy (pthread_attr_t *attr, int policy) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setscope.c b/nptl/pthread_attr_setscope.c +index eb03731cb2563e5a..62d250c4fdb34497 100644 +--- a/nptl/pthread_attr_setscope.c ++++ b/nptl/pthread_attr_setscope.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_setscope (attr, scope) +- pthread_attr_t *attr; +- int scope; ++__pthread_attr_setscope (pthread_attr_t *attr, int scope) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setstack.c b/nptl/pthread_attr_setstack.c +index 72eaee218474de88..e8c2b8515dc5912b 100644 +--- a/nptl/pthread_attr_setstack.c ++++ b/nptl/pthread_attr_setstack.c +@@ -28,10 +28,8 @@ + + + int +-__pthread_attr_setstack (attr, stackaddr, stacksize) +- pthread_attr_t *attr; +- void *stackaddr; +- size_t stacksize; ++__pthread_attr_setstack (pthread_attr_t *attr, void *stackaddr, ++ size_t stacksize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setstackaddr.c b/nptl/pthread_attr_setstackaddr.c +index b1a33d8c3f7043c3..e20eff61fa591364 100644 +--- a/nptl/pthread_attr_setstackaddr.c ++++ b/nptl/pthread_attr_setstackaddr.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_attr_setstackaddr (attr, stackaddr) +- pthread_attr_t *attr; +- void *stackaddr; ++__pthread_attr_setstackaddr (pthread_attr_t *attr, void *stackaddr) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_attr_setstacksize.c b/nptl/pthread_attr_setstacksize.c +index 954cc0f4d0b5a56e..890d3a492bc83030 100644 +--- a/nptl/pthread_attr_setstacksize.c ++++ b/nptl/pthread_attr_setstacksize.c +@@ -27,9 +27,7 @@ + + + int +-__pthread_attr_setstacksize (attr, stacksize) +- pthread_attr_t *attr; +- size_t stacksize; ++__pthread_attr_setstacksize (pthread_attr_t *attr, size_t stacksize) + { + struct pthread_attr *iattr; + +diff --git a/nptl/pthread_condattr_setclock.c b/nptl/pthread_condattr_setclock.c +index 8b05dc84e923cf63..fd0b7328088e6f30 100644 +--- a/nptl/pthread_condattr_setclock.c ++++ b/nptl/pthread_condattr_setclock.c +@@ -26,9 +26,7 @@ + + + int +-pthread_condattr_setclock (attr, clock_id) +- pthread_condattr_t *attr; +- clockid_t clock_id; ++pthread_condattr_setclock (pthread_condattr_t *attr, clockid_t clock_id) + { + /* Only a few clocks are allowed. */ + if (clock_id != CLOCK_MONOTONIC && clock_id != CLOCK_REALTIME) +diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c +index 1083d6faacca5ab6..987469ba58e7bffa 100644 +--- a/nptl/pthread_create.c ++++ b/nptl/pthread_create.c +@@ -60,8 +60,7 @@ unsigned int __nptl_nthreads = 1; + + struct pthread * + internal_function +-__find_in_stack_list (pd) +- struct pthread *pd; ++__find_in_stack_list (struct pthread *pd) + { + list_t *entry; + struct pthread *result = NULL; +diff --git a/nptl/pthread_getattr_np.c b/nptl/pthread_getattr_np.c +index 72361c9f0497e048..8df7f6feb93ca0bb 100644 +--- a/nptl/pthread_getattr_np.c ++++ b/nptl/pthread_getattr_np.c +@@ -30,9 +30,7 @@ + + + int +-pthread_getattr_np (thread_id, attr) +- pthread_t thread_id; +- pthread_attr_t *attr; ++pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) + { + struct pthread *thread = (struct pthread *) thread_id; + struct pthread_attr *iattr = (struct pthread_attr *) attr; +diff --git a/nptl/pthread_mutex_init.c b/nptl/pthread_mutex_init.c +index 2979468fa516c587..0aec130f4d1754d9 100644 +--- a/nptl/pthread_mutex_init.c ++++ b/nptl/pthread_mutex_init.c +@@ -37,9 +37,8 @@ static int tpi_supported; + + + int +-__pthread_mutex_init (mutex, mutexattr) +- pthread_mutex_t *mutex; +- const pthread_mutexattr_t *mutexattr; ++__pthread_mutex_init (pthread_mutex_t *mutex, ++ const pthread_mutexattr_t *mutexattr) + { + const struct pthread_mutexattr *imutexattr; + +diff --git a/nptl/pthread_mutex_lock.c b/nptl/pthread_mutex_lock.c +index f8c9b217efbce91b..d17e6b5ea5947f6e 100644 +--- a/nptl/pthread_mutex_lock.c ++++ b/nptl/pthread_mutex_lock.c +@@ -58,8 +58,7 @@ static int __pthread_mutex_lock_full (pthread_mutex_t *mutex) + __attribute_noinline__; + + int +-__pthread_mutex_lock (mutex) +- pthread_mutex_t *mutex; ++__pthread_mutex_lock (pthread_mutex_t *mutex) + { + assert (sizeof (mutex->__size) >= sizeof (mutex->__data)); + +@@ -517,8 +516,8 @@ hidden_def (__pthread_mutex_lock) + + #ifdef NO_INCR + void +-__pthread_mutex_cond_lock_adjust (mutex) +- pthread_mutex_t *mutex; ++internal_function ++__pthread_mutex_cond_lock_adjust (pthread_mutex_t *mutex) + { + assert ((mutex->__data.__kind & PTHREAD_MUTEX_PRIO_INHERIT_NP) != 0); + assert ((mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP) == 0); +diff --git a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c +index 7959885a244c6d95..f035b29f621cebd6 100644 +--- a/nptl/pthread_mutex_timedlock.c ++++ b/nptl/pthread_mutex_timedlock.c +@@ -38,9 +38,8 @@ + #endif + + int +-pthread_mutex_timedlock (mutex, abstime) +- pthread_mutex_t *mutex; +- const struct timespec *abstime; ++pthread_mutex_timedlock (pthread_mutex_t *mutex, ++ const struct timespec *abstime) + { + int oldval; + pid_t id = THREAD_GETMEM (THREAD_SELF, tid); +diff --git a/nptl/pthread_mutex_trylock.c b/nptl/pthread_mutex_trylock.c +index 7e96ec48f81dfc2c..40ba3e9fa9664756 100644 +--- a/nptl/pthread_mutex_trylock.c ++++ b/nptl/pthread_mutex_trylock.c +@@ -34,8 +34,7 @@ + lock state if the lock was actually busy. */ + + int +-__pthread_mutex_trylock (mutex) +- pthread_mutex_t *mutex; ++__pthread_mutex_trylock (pthread_mutex_t *mutex) + { + int oldval; + pid_t id = THREAD_GETMEM (THREAD_SELF, tid); +diff --git a/nptl/pthread_mutex_unlock.c b/nptl/pthread_mutex_unlock.c +index 69e18f5057b5c6a5..27055ea7b2c8c493 100644 +--- a/nptl/pthread_mutex_unlock.c ++++ b/nptl/pthread_mutex_unlock.c +@@ -34,9 +34,7 @@ __pthread_mutex_unlock_full (pthread_mutex_t *mutex, int decr) + + int + internal_function attribute_hidden +-__pthread_mutex_unlock_usercnt (mutex, decr) +- pthread_mutex_t *mutex; +- int decr; ++__pthread_mutex_unlock_usercnt (pthread_mutex_t *mutex, int decr) + { + int type = PTHREAD_MUTEX_TYPE_ELISION (mutex); + if (__builtin_expect (type & +@@ -304,8 +302,7 @@ __pthread_mutex_unlock_full (pthread_mutex_t *mutex, int decr) + + + int +-__pthread_mutex_unlock (mutex) +- pthread_mutex_t *mutex; ++__pthread_mutex_unlock (pthread_mutex_t *mutex) + { + return __pthread_mutex_unlock_usercnt (mutex, 1); + } +diff --git a/nptl/sysdeps/pthread/timer_delete.c b/nptl/sysdeps/pthread/timer_delete.c +index a529d73925e9ed0d..546d19bf3f4a418a 100644 +--- a/nptl/sysdeps/pthread/timer_delete.c ++++ b/nptl/sysdeps/pthread/timer_delete.c +@@ -26,8 +26,7 @@ + + /* Delete timer TIMERID. */ + int +-timer_delete (timerid) +- timer_t timerid; ++timer_delete (timer_t timerid) + { + struct timer_node *timer; + int retval = -1; +diff --git a/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c b/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c +index 7b6fbc18aa5f1153..2ac421fd63af3b75 100644 +--- a/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c ++++ b/nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c +@@ -14,7 +14,7 @@ + #define LLL_ROBUST_MUTEX_LOCK(mutex, id) \ + lll_robust_cond_lock ((mutex)->__data.__lock, id, \ + PTHREAD_ROBUST_MUTEX_PSHARED (mutex)) +-#define __pthread_mutex_lock __pthread_mutex_cond_lock ++#define __pthread_mutex_lock internal_function __pthread_mutex_cond_lock + #define __pthread_mutex_lock_full __pthread_mutex_cond_lock_full + #define NO_INCR + +diff --git a/nptl_db/td_ta_clear_event.c b/nptl_db/td_ta_clear_event.c +index 0c5f808496a0040b..74d22f964c80adb8 100644 +--- a/nptl_db/td_ta_clear_event.c ++++ b/nptl_db/td_ta_clear_event.c +@@ -21,9 +21,7 @@ + + + td_err_e +-td_ta_clear_event (ta_arg, event) +- const td_thragent_t *ta_arg; +- td_thr_events_t *event; ++td_ta_clear_event (const td_thragent_t *ta_arg, td_thr_events_t *event) + { + td_thragent_t *const ta = (td_thragent_t *) ta_arg; + td_err_e err; +diff --git a/nptl_db/td_ta_set_event.c b/nptl_db/td_ta_set_event.c +index e51e4b5c8762bf96..940b3472549406db 100644 +--- a/nptl_db/td_ta_set_event.c ++++ b/nptl_db/td_ta_set_event.c +@@ -21,9 +21,7 @@ + + + td_err_e +-td_ta_set_event (ta_arg, event) +- const td_thragent_t *ta_arg; +- td_thr_events_t *event; ++td_ta_set_event (const td_thragent_t *ta_arg, td_thr_events_t *event) + { + td_thragent_t *const ta = (td_thragent_t *) ta_arg; + td_err_e err; +diff --git a/nptl_db/td_thr_clear_event.c b/nptl_db/td_thr_clear_event.c +index 8ee9ac146aa8036b..4f2ccf3ae179dcc7 100644 +--- a/nptl_db/td_thr_clear_event.c ++++ b/nptl_db/td_thr_clear_event.c +@@ -23,9 +23,7 @@ + + + td_err_e +-td_thr_clear_event (th, event) +- const td_thrhandle_t *th; +- td_thr_events_t *event; ++td_thr_clear_event (const td_thrhandle_t *th, td_thr_events_t *event) + { + td_err_e err; + psaddr_t eventmask; +diff --git a/nptl_db/td_thr_event_enable.c b/nptl_db/td_thr_event_enable.c +index fed7f70655092365..fd94580112ba3eb0 100644 +--- a/nptl_db/td_thr_event_enable.c ++++ b/nptl_db/td_thr_event_enable.c +@@ -21,9 +21,7 @@ + + + td_err_e +-td_thr_event_enable (th, onoff) +- const td_thrhandle_t *th; +- int onoff; ++td_thr_event_enable (const td_thrhandle_t *th, int onoff) + { + LOG ("td_thr_event_enable"); + +diff --git a/nptl_db/td_thr_set_event.c b/nptl_db/td_thr_set_event.c +index edc4efb35b78cf50..20989c5bfcddde3b 100644 +--- a/nptl_db/td_thr_set_event.c ++++ b/nptl_db/td_thr_set_event.c +@@ -23,9 +23,7 @@ + + + td_err_e +-td_thr_set_event (th, event) +- const td_thrhandle_t *th; +- td_thr_events_t *event; ++td_thr_set_event (const td_thrhandle_t *th, td_thr_events_t *event) + { + td_err_e err; + psaddr_t eventmask; +diff --git a/nss/makedb.c b/nss/makedb.c +index e372f5d77e5273bc..9c96724fd214981d 100644 +--- a/nss/makedb.c ++++ b/nss/makedb.c +@@ -417,11 +417,7 @@ valstr_compare (const void *p1, const void *p2) + + + static int +-process_input (input, inname, to_lowercase, be_quiet) +- FILE *input; +- const char *inname; +- int to_lowercase; +- int be_quiet; ++process_input (FILE *input, const char *inname, int to_lowercase, int be_quiet) + { + char *line; + size_t linelen; +diff --git a/posix/fnmatch.c b/posix/fnmatch.c +index eed12b7b515e390c..107ba1010059c07f 100644 +--- a/posix/fnmatch.c ++++ b/posix/fnmatch.c +@@ -167,9 +167,7 @@ static int posixly_correct; + + # if !defined HAVE___STRCHRNUL && !defined _LIBC + static char * +-__strchrnul (s, c) +- const char *s; +- int c; ++__strchrnul (const char *s, int c) + { + char *result = strchr (s, c); + if (result == NULL) +@@ -180,9 +178,7 @@ __strchrnul (s, c) + + # if HANDLE_MULTIBYTE && !defined HAVE___STRCHRNUL && !defined _LIBC + static wchar_t * +-__wcschrnul (s, c) +- const wchar_t *s; +- wint_t c; ++__wcschrnul (const wchar_t *s, wint_t c) + { + wchar_t *result = wcschr (s, c); + if (result == NULL) +@@ -320,10 +316,7 @@ is_char_class (const wchar_t *wcs) + + + int +-fnmatch (pattern, string, flags) +- const char *pattern; +- const char *string; +- int flags; ++fnmatch (const char *pattern, const char *string, int flags) + { + # if HANDLE_MULTIBYTE + if (__builtin_expect (MB_CUR_MAX, 1) != 1) +diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c +index 2bd788f3942c6e7d..da1fe0c987f21942 100644 +--- a/posix/fnmatch_loop.c ++++ b/posix/fnmatch_loop.c +@@ -37,14 +37,8 @@ static const CHAR *END (const CHAR *patternp) internal_function; + + static int + internal_function +-FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) +- const CHAR *pattern; +- const CHAR *string; +- const CHAR *string_end; +- int no_leading_period; +- int flags; +- struct STRUCT *ends; +- size_t alloca_used; ++FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end, ++ int no_leading_period, int flags, struct STRUCT *ends, size_t alloca_used) + { + const CHAR *p = pattern, *n = string; + UCHAR c; +diff --git a/posix/glob.c b/posix/glob.c +index 8c7a80085128475a..e3d6fe0f15f7d9ce 100644 +--- a/posix/glob.c ++++ b/posix/glob.c +@@ -1263,8 +1263,7 @@ libc_hidden_def (glob) + + /* Free storage allocated in PGLOB by a previous `glob' call. */ + void +-globfree (pglob) +- glob_t *pglob; ++globfree (glob_t *pglob) + { + if (pglob->gl_pathv != NULL) + { +@@ -1359,9 +1358,7 @@ prefix_array (const char *dirname, char **array, size_t n) + /* We must not compile this function twice. */ + #if !defined _LIBC || !defined NO_GLOB_PATTERN_P + int +-__glob_pattern_type (pattern, quote) +- const char *pattern; +- int quote; ++__glob_pattern_type (const char *pattern, int quote) + { + const char *p; + int ret = 0; +@@ -1398,9 +1395,7 @@ __glob_pattern_type (pattern, quote) + /* Return nonzero if PATTERN contains any metacharacters. + Metacharacters can be quoted with backslashes if QUOTE is nonzero. */ + int +-__glob_pattern_p (pattern, quote) +- const char *pattern; +- int quote; ++__glob_pattern_p (const char *pattern, int quote) + { + return __glob_pattern_type (pattern, quote) == 1; + } +diff --git a/posix/regcomp.c b/posix/regcomp.c +index 99fee76b8a8cbb12..80359e58db504ed6 100644 +--- a/posix/regcomp.c ++++ b/posix/regcomp.c +@@ -210,10 +210,8 @@ const size_t __re_error_msgid_idx[] attribute_hidden = + are set in BUFP on entry. */ + + const char * +-re_compile_pattern (pattern, length, bufp) +- const char *pattern; +- size_t length; +- struct re_pattern_buffer *bufp; ++re_compile_pattern (const char *pattern, size_t length, ++ struct re_pattern_buffer *bufp) + { + reg_errcode_t ret; + +@@ -251,8 +249,7 @@ reg_syntax_t re_syntax_options; + defined in regex.h. We return the old syntax. */ + + reg_syntax_t +-re_set_syntax (syntax) +- reg_syntax_t syntax; ++re_set_syntax (reg_syntax_t syntax) + { + reg_syntax_t ret = re_syntax_options; + +@@ -264,8 +261,7 @@ weak_alias (__re_set_syntax, re_set_syntax) + #endif + + int +-re_compile_fastmap (bufp) +- struct re_pattern_buffer *bufp; ++re_compile_fastmap (struct re_pattern_buffer *bufp) + { + re_dfa_t *dfa = (re_dfa_t *) bufp->buffer; + char *fastmap = bufp->fastmap; +@@ -463,10 +459,7 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, + the return codes and their meanings.) */ + + int +-regcomp (preg, pattern, cflags) +- regex_t *__restrict preg; +- const char *__restrict pattern; +- int cflags; ++regcomp (regex_t *__restrict preg, const char *__restrict pattern, int cflags) + { + reg_errcode_t ret; + reg_syntax_t syntax = ((cflags & REG_EXTENDED) ? RE_SYNTAX_POSIX_EXTENDED +@@ -525,11 +518,8 @@ weak_alias (__regcomp, regcomp) + from either regcomp or regexec. We don't use PREG here. */ + + size_t +-regerror (errcode, preg, errbuf, errbuf_size) +- int errcode; +- const regex_t *__restrict preg; +- char *__restrict errbuf; +- size_t errbuf_size; ++regerror (int errcode, const regex_t *__restrict preg, char *__restrict errbuf, ++ size_t errbuf_size) + { + const char *msg; + size_t msg_size; +@@ -633,8 +623,7 @@ free_dfa_content (re_dfa_t *dfa) + /* Free dynamically allocated space used by PREG. */ + + void +-regfree (preg) +- regex_t *preg; ++regfree (regex_t *preg) + { + re_dfa_t *dfa = (re_dfa_t *) preg->buffer; + if (BE (dfa != NULL, 1)) +diff --git a/posix/regexec.c b/posix/regexec.c +index 5b31f5bbd7e5115a..f315149af88ac6bb 100644 +--- a/posix/regexec.c ++++ b/posix/regexec.c +@@ -217,12 +217,8 @@ static reg_errcode_t extend_buffers (re_match_context_t *mctx, int min_len) + We return 0 if we find a match and REG_NOMATCH if not. */ + + int +-regexec (preg, string, nmatch, pmatch, eflags) +- const regex_t *__restrict preg; +- const char *__restrict string; +- size_t nmatch; +- regmatch_t pmatch[]; +- int eflags; ++regexec (const regex_t *__restrict preg, const char *__restrict string, ++ size_t nmatch, regmatch_t pmatch[], int eflags) + { + reg_errcode_t err; + int start, length; +@@ -303,11 +299,8 @@ compat_symbol (libc, __compat_regexec, regexec, GLIBC_2_0); + match was found and -2 indicates an internal error. */ + + int +-re_match (bufp, string, length, start, regs) +- struct re_pattern_buffer *bufp; +- const char *string; +- int length, start; +- struct re_registers *regs; ++re_match (struct re_pattern_buffer *bufp, const char *string, int length, ++ int start, struct re_registers *regs) + { + return re_search_stub (bufp, string, length, start, 0, length, regs, 1); + } +@@ -316,11 +309,8 @@ weak_alias (__re_match, re_match) + #endif + + int +-re_search (bufp, string, length, start, range, regs) +- struct re_pattern_buffer *bufp; +- const char *string; +- int length, start, range; +- struct re_registers *regs; ++re_search (struct re_pattern_buffer *bufp, const char *string, int length, ++ int start, int range, struct re_registers *regs) + { + return re_search_stub (bufp, string, length, start, range, length, regs, 0); + } +@@ -329,11 +319,9 @@ weak_alias (__re_search, re_search) + #endif + + int +-re_match_2 (bufp, string1, length1, string2, length2, start, regs, stop) +- struct re_pattern_buffer *bufp; +- const char *string1, *string2; +- int length1, length2, start, stop; +- struct re_registers *regs; ++re_match_2 (struct re_pattern_buffer *bufp, const char *string1, int length1, ++ const char *string2, int length2, int start, ++ struct re_registers *regs, int stop) + { + return re_search_2_stub (bufp, string1, length1, string2, length2, + start, 0, regs, stop, 1); +@@ -343,11 +331,9 @@ weak_alias (__re_match_2, re_match_2) + #endif + + int +-re_search_2 (bufp, string1, length1, string2, length2, start, range, regs, stop) +- struct re_pattern_buffer *bufp; +- const char *string1, *string2; +- int length1, length2, start, range, stop; +- struct re_registers *regs; ++re_search_2 (struct re_pattern_buffer *bufp, const char *string1, int length1, ++ const char *string2, int length2, int start, int range, ++ struct re_registers *regs, int stop) + { + return re_search_2_stub (bufp, string1, length1, string2, length2, + start, range, regs, stop, 0); +@@ -404,11 +390,10 @@ re_search_2_stub (bufp, string1, length1, string2, length2, start, range, regs, + otherwise the position of the match is returned. */ + + static int +-re_search_stub (bufp, string, length, start, range, stop, regs, ret_len) +- struct re_pattern_buffer *bufp; +- const char *string; +- int length, start, range, stop, ret_len; +- struct re_registers *regs; ++internal_function ++re_search_stub (struct re_pattern_buffer *bufp, const char *string, int length, ++ int start, int range, int stop, struct re_registers *regs, ++ int ret_len) + { + reg_errcode_t result; + regmatch_t *pmatch; +@@ -493,10 +478,9 @@ re_search_stub (bufp, string, length, start, range, stop, regs, ret_len) + } + + static unsigned +-re_copy_regs (regs, pmatch, nregs, regs_allocated) +- struct re_registers *regs; +- regmatch_t *pmatch; +- int nregs, regs_allocated; ++internal_function ++re_copy_regs (struct re_registers *regs, regmatch_t *pmatch, int nregs, ++ int regs_allocated) + { + int rval = REGS_REALLOCATE; + int i; +@@ -573,11 +557,8 @@ re_copy_regs (regs, pmatch, nregs, regs_allocated) + freeing the old data. */ + + void +-re_set_registers (bufp, regs, num_regs, starts, ends) +- struct re_pattern_buffer *bufp; +- struct re_registers *regs; +- unsigned num_regs; +- regoff_t *starts, *ends; ++re_set_registers (struct re_pattern_buffer *bufp, struct re_registers *regs, ++ unsigned num_regs, regoff_t *starts, regoff_t *ends) + { + if (num_regs) + { +@@ -951,9 +932,8 @@ re_search_internal (preg, string, length, start, range, stop, nmatch, pmatch, + } + + static reg_errcode_t +-__attribute_warn_unused_result__ +-prune_impossible_nodes (mctx) +- re_match_context_t *mctx; ++internal_function __attribute_warn_unused_result__ ++prune_impossible_nodes (re_match_context_t *mctx) + { + const re_dfa_t *const dfa = mctx->dfa; + int halt_node, match_last; +diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c +index 2047203a4cee1111..e5b30d443106ee91 100644 +--- a/stdlib/strtod_l.c ++++ b/stdlib/strtod_l.c +@@ -472,11 +472,8 @@ __mpn_lshift_1 (mp_limb_t *ptr, mp_size_t size, unsigned int count, + return 0.0. If the number is too big to be represented, set `errno' to + ERANGE and return HUGE_VAL with the appropriate sign. */ + FLOAT +-____STRTOF_INTERNAL (nptr, endptr, group, loc) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int group; +- __locale_t loc; ++____STRTOF_INTERNAL (const STRING_TYPE *nptr, STRING_TYPE **endptr, int group, ++ __locale_t loc) + { + int negative; /* The sign of the number. */ + MPN_VAR (num); /* MP representation of the number. */ +diff --git a/sysdeps/pthread/aio_cancel.c b/sysdeps/pthread/aio_cancel.c +index e405e66cdf40951d..e6170a4fd82895a9 100644 +--- a/sysdeps/pthread/aio_cancel.c ++++ b/sysdeps/pthread/aio_cancel.c +@@ -38,9 +38,7 @@ + + + int +-aio_cancel (fildes, aiocbp) +- int fildes; +- struct aiocb *aiocbp; ++aio_cancel (int fildes, struct aiocb *aiocbp) + { + struct requestlist *req = NULL; + int result = AIO_ALLDONE; +diff --git a/sysdeps/pthread/aio_suspend.c b/sysdeps/pthread/aio_suspend.c +index 9d3c8f996a2839ad..27d6d24e6610d98b 100644 +--- a/sysdeps/pthread/aio_suspend.c ++++ b/sysdeps/pthread/aio_suspend.c +@@ -105,10 +105,8 @@ do_aio_misc_wait(int *cntr, const struct timespec *timeout) + #endif + + int +-aio_suspend (list, nent, timeout) +- const struct aiocb *const list[]; +- int nent; +- const struct timespec *timeout; ++aio_suspend (const struct aiocb *const list[], int nent, ++ const struct timespec *timeout) + { + if (__builtin_expect (nent < 0, 0)) + { +diff --git a/sysdeps/unix/sysv/linux/dl-openat64.c b/sysdeps/unix/sysv/linux/dl-openat64.c +index 69f02f65b1cca130..673eb1dde673370a 100644 +--- a/sysdeps/unix/sysv/linux/dl-openat64.c ++++ b/sysdeps/unix/sysv/linux/dl-openat64.c +@@ -23,10 +23,7 @@ + + + int +-openat64 (dfd, file, oflag) +- int dfd; +- const char *file; +- int oflag; ++openat64 (int dfd, const char *file, int oflag, ...) + { + assert (!__OPEN_NEEDS_MODE (oflag)); + +diff --git a/time/strptime_l.c b/time/strptime_l.c +index 14d50a2e879a2c5c..cb2b8faa6d740748 100644 +--- a/time/strptime_l.c ++++ b/time/strptime_l.c +@@ -41,9 +41,7 @@ + # define localtime_r my_localtime_r + static struct tm *localtime_r (const time_t *, struct tm *); + static struct tm * +-localtime_r (t, tp) +- const time_t *t; +- struct tm *tp; ++localtime_r (const time_t *t, struct tm *tp) + { + struct tm *l = localtime (t); + if (! l) +diff --git a/wcsmbs/mbsnrtowcs.c b/wcsmbs/mbsnrtowcs.c +index fc8396c00dc074a4..36cfed0a010f2873 100644 +--- a/wcsmbs/mbsnrtowcs.c ++++ b/wcsmbs/mbsnrtowcs.c +@@ -38,12 +38,8 @@ static mbstate_t state; + implementation of stdio because we have to deal with unterminated + buffers. At most NMC bytes will be converted. */ + size_t +-__mbsnrtowcs (dst, src, nmc, len, ps) +- wchar_t *dst; +- const char **src; +- size_t nmc; +- size_t len; +- mbstate_t *ps; ++__mbsnrtowcs (wchar_t *dst, const char **src, size_t nmc, size_t len, ++ mbstate_t *ps) + { + const unsigned char *srcend; + struct __gconv_step_data data; +diff --git a/wcsmbs/mbsrtowcs_l.c b/wcsmbs/mbsrtowcs_l.c +index d489266d38bddfd5..ec8b7bebb0a2cc9a 100644 +--- a/wcsmbs/mbsrtowcs_l.c ++++ b/wcsmbs/mbsrtowcs_l.c +@@ -37,12 +37,8 @@ + + size_t + attribute_hidden +-__mbsrtowcs_l (dst, src, len, ps, l) +- wchar_t *dst; +- const char **src; +- size_t len; +- mbstate_t *ps; +- __locale_t l; ++__mbsrtowcs_l (wchar_t *dst, const char **src, size_t len, mbstate_t *ps, ++ __locale_t l) + { + struct __gconv_step_data data; + size_t result; +diff --git a/wcsmbs/wcsnrtombs.c b/wcsmbs/wcsnrtombs.c +index e5e5db86b57fee44..7c0efad7a27c2920 100644 +--- a/wcsmbs/wcsnrtombs.c ++++ b/wcsmbs/wcsnrtombs.c +@@ -37,12 +37,8 @@ static mbstate_t state; + implementation of stdio because we have to deal with unterminated + buffers. At most NWC wide character will be converted. */ + size_t +-__wcsnrtombs (dst, src, nwc, len, ps) +- char *dst; +- const wchar_t **src; +- size_t nwc; +- size_t len; +- mbstate_t *ps; ++__wcsnrtombs (char *dst, const wchar_t **src, size_t nwc, size_t len, ++ mbstate_t *ps) + { + struct __gconv_step_data data; + const wchar_t *srcend; +diff --git a/wcsmbs/wcsrtombs.c b/wcsmbs/wcsrtombs.c +index dfb28d31254ec201..ab843f6dc47edc52 100644 +--- a/wcsmbs/wcsrtombs.c ++++ b/wcsmbs/wcsrtombs.c +@@ -35,11 +35,7 @@ + static mbstate_t state; + + size_t +-__wcsrtombs (dst, src, len, ps) +- char *dst; +- const wchar_t **src; +- size_t len; +- mbstate_t *ps; ++__wcsrtombs (char *dst, const wchar_t **src, size_t len, mbstate_t *ps) + { + struct __gconv_step_data data; + int status; diff --git a/SOURCES/glibc-rh1505492-prototypes-17.patch b/SOURCES/glibc-rh1505492-prototypes-17.patch new file mode 100644 index 0000000..0c04f3a --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-17.patch @@ -0,0 +1,1358 @@ +commit 80d9be8122d1fe181d2476b5dad9f4ce37204958 +Author: Joseph Myers +Date: Tue Oct 20 21:27:22 2015 +0000 + + Convert miscellaneous function definitions to prototype style. + + This patch converts various miscellaneous functions definitions in + glibc, found with grep and not covered by my previous scripted + conversions, from old-style K&R to prototype-style. These changes + were made manually. This is not necessarily exhaustive as formatting + variants may have prevented my grep from finding some such + definitions. + + Regarding the changes to files from GMP, they may originally have been + omitted when removing __STDC__ conditionals because of the files + coming from another package, but (a) GMP no longer has __STDC__ + conditionals there anyway and (b) we don't try to keep these files + verbatim in sync with GMP (and there are licensing differences), so + making the change to them in glibc seems reasonable. + + Tested for x86_64 and x86 (testsuite - this patch affects files + containing assertions). + + * debug/fortify_fail.c (__fortify_fail): Convert to + prototype-style function definition. Use internal_function. + * libio/genops.c (save_for_backup): Convert to prototype-style + function definition. + * libio/wgenops.c (save_for_wbackup): Likewise. + * login/grantpt.c (grantpt): Likewise. + * login/ptsname.c (ptsname): Likewise. + (__ptsname_r): Likewise. + * login/unlockpt.c (unlockpt): Likewise. + * mach/msgserver.c (__mach_msg_server): Likewise. + * misc/efgcvt.c (__APPEND (FUNC_PREFIX, fcvt)): Likewise. + (__APPEND (FUNC_PREFIX, ecvt)): Likewise. + (__APPEND (FUNC_PREFIX, gcvt)): Likewise. + * misc/efgcvt_r.c (__APPEND (FUNC_PREFIX, fcvt_r)): Likewise. + (__APPEND (FUNC_PREFIX, ecvt_r)): Likewise. + * nptl/cleanup_compat.c (_pthread_cleanup_push): Likewise. + * nptl/cleanup_defer_compat.c (_pthread_cleanup_push_defer): + Likewise. + * nptl/libc_pthread_init.c (__libc_pthread_init): Likewise. Use + internal_function. + * nptl/pthread_atfork.c (__pthread_atfork): Convert to + prototype-style function definition. + * nptl/pthread_create.c (__pthread_create_2_1): Likewise. + [SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1)] + (__pthread_create_2_0): Likewise. + * nptl/pthread_key_create.c (__pthread_key_create): Likewise. + * nptl/register-atfork.c (__register_atfork): Likewise. + * posix/glob.c (glob): Likewise. + * posix/regcomp.c (re_comp): Likewise. + * posix/regexec.c (re_exec): Likewise. + * stdlib/add_n.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/cmp.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/divmod_1.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/divrem.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/lshift.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/mod_1.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/mul.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/mul_n.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/rshift.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * stdlib/strtod.c (INTERNAL (STRTOF)): Convert to prototype-style + function definition. + (STRTOF): Likewise. + * stdlib/strtod_l.c (__STRTOF): Likewise. + * stdlib/strtol.c (INTERNAL (strtol)): Likewise. + * stdlib/strtol_l.c (INTERNAL (__strtol_l)): Likewise. + (__strtol_l): Likewise. + * stdlib/sub_n.c [__STDC__]: Make code unconditional. + [!__STDC__]: Remove conditional code. + * string/memrchr.c (MEMRCHR): Convert to prototype-style function + definition. + * string/strcasecmp.c (LOCALE_PARAM_DECL): Remove macro. + [USE_IN_EXTENDED_LOCALE_MODEL] (LOCALE_PARAM): Include argument + type. + (__strcasecmp): Convert to prototype-style function definition. + * string/strncase.c (LOCALE_PARAM_DECL): Remove macro. + [USE_IN_EXTENDED_LOCALE_MODEL] (LOCALE_PARAM): Include argument + type. + (__strncasecmp): Convert to prototype-style function definition. + * sunrpc/pm_getport.c (__libc_rpc_getport): Likewise. + * sunrpc/xdr.c (xdr_union): Likewise. + * sunrpc/xdr_array.c (xdr_array): Likewise. + * sunrpc/xdr_ref.c (xdr_reference): Likewise. + * sysdeps/m68k/m680x0/fpu/s_atan.c (__CONCATX(__,FUNC)): Likewise. + * sysdeps/m68k/m680x0/fpu/s_isinf.c (__CONCATX(__,FUNC)): + Likewise. + * sysdeps/m68k/m680x0/fpu/s_scalbn.c (__CONCATX(__scalbn,suffix): + Likewise. + * sysdeps/m68k/m680x0/fpu/s_sincos.c (CONCATX(__,FUNC)): Likewise. + * sysdeps/unix/sysv/linux/i386/scandir64.c (__old_scandir64): + Likewise. + * time/strftime_l.c (LOCALE_PARAM_DECL): Remove macro. + (LOCALE_PARAM_PROTO): Likewise. + [_LIBC && USE_IN_EXTENDED_LOCALE_MODEL] (LOCALE_PARAM): Include + argument type. + (ut_argument_spec): Remove macro. + (ut_argument_spec_iso): Rename to ut_argument_spec. + (memcpy_lowcase): Use LOCALE_PARAM in declaration. Convert to + prototype-style function definition. + (memcpy_uppcase): Likewise. + (__strftime_internal): Likewise. + (my_strftime): Likewise. + * time/strptime_l.c (LOCALE_PARAM_PROTO): Remove macro. + (LOCALE_PARAM_DECL): Likewise. + [_LIBC] (LOCALE_PARAM): Include argument type. + (__strptime_internal): Convert to prototype-style function + definition. + (strptime): Likewise. + * wcsmbs/wcscasecmp.c (LOCALE_PARAM_DECL): Remove macro. + [USE_IN_EXTENDED_LOCALE_MODEL] (LOCALE_PARAM): Include argument + type. + (__wcscasecmp): Convert to prototype-style function definition. + * wcsmbs/wcsncase.c (LOCALE_PARAM_DECL): Remove macro. + [USE_IN_EXTENDED_LOCALE_MODEL] (LOCALE_PARAM): Include argument + type. + (__wcsncasecmp): Convert to prototype-style function definition. + +Conflicts: + nptl/libc_pthread_init.c + (Applied to nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c.) + nptl/register-atfork.c + (Applied to nptl/sysdeps/unix/sysv/linux/register-atfork.c.) + +diff --git a/debug/fortify_fail.c b/debug/fortify_fail.c +index c5621ea6b5806603..d76ab3718e7814e4 100644 +--- a/debug/fortify_fail.c ++++ b/debug/fortify_fail.c +@@ -22,9 +22,8 @@ + extern char **__libc_argv attribute_hidden; + + void +-__attribute__ ((noreturn)) +-__fortify_fail (msg) +- const char *msg; ++__attribute__ ((noreturn)) internal_function ++__fortify_fail (const char *msg) + { + /* The loop is added only to keep gcc happy. */ + while (1) +diff --git a/libio/genops.c b/libio/genops.c +index 09a9c2eacf1fcaea..1362fd15a88130d8 100644 +--- a/libio/genops.c ++++ b/libio/genops.c +@@ -244,9 +244,7 @@ static int + #ifdef _LIBC + internal_function + #endif +-save_for_backup (fp, end_p) +- _IO_FILE *fp; +- char *end_p; ++save_for_backup (_IO_FILE *fp, char *end_p) + { + /* Append [_IO_read_base..end_p] to backup area. */ + _IO_ssize_t least_mark = _IO_least_marker (fp, end_p); +diff --git a/libio/wgenops.c b/libio/wgenops.c +index 3f34bbc92d8746be..7ec7ae0c0c2c8976 100644 +--- a/libio/wgenops.c ++++ b/libio/wgenops.c +@@ -468,9 +468,7 @@ static int + #ifdef _LIBC + internal_function + #endif +-save_for_wbackup (fp, end_p) +- _IO_FILE *fp; +- wchar_t *end_p; ++save_for_wbackup (_IO_FILE *fp, wchar_t *end_p) + { + /* Append [_IO_read_base..end_p] to backup area. */ + _IO_ssize_t least_mark = _IO_least_wmarker (fp, end_p); +diff --git a/login/grantpt.c b/login/grantpt.c +index fd7ee6c0bcf2f6b9..62d48b3c489b004f 100644 +--- a/login/grantpt.c ++++ b/login/grantpt.c +@@ -23,8 +23,7 @@ + with the slave to the calling process, and set its group and + mode appropriately. Note that this is an unprivileged operation. */ + int +-grantpt (fd) +- int fd __attribute__ ((unused)); ++grantpt (int fd __attribute__ ((unused))) + { + __set_errno (ENOSYS); + return -1; +diff --git a/login/ptsname.c b/login/ptsname.c +index d22ec4136257e1e1..5fe85a938558a0eb 100644 +--- a/login/ptsname.c ++++ b/login/ptsname.c +@@ -24,18 +24,16 @@ + of the associated slave. */ + + char * +-ptsname (fd) +- int fd __attribute__ ((unused)); ++ptsname (int fd __attribute__ ((unused))) + { + __set_errno (ENOSYS); + return NULL; + } + + int +-__ptsname_r (fd, buf, len) +- int fd __attribute__ ((unused)); +- char *buf __attribute__ ((unused)); +- size_t len __attribute__ ((unused)); ++__ptsname_r (int fd __attribute__ ((unused)), ++ char *buf __attribute__ ((unused)), ++ size_t len __attribute__ ((unused))) + { + __set_errno (ENOSYS); + return ENOSYS; +diff --git a/login/unlockpt.c b/login/unlockpt.c +index f00d88f9c1a5d8c4..14057d0fcdd4809c 100644 +--- a/login/unlockpt.c ++++ b/login/unlockpt.c +@@ -23,8 +23,7 @@ + the slave can be opened. This is to avoid a race between opening the + master and calling grantpt() to take possession of the slave. */ + int +-unlockpt (fd) +- int fd __attribute__ ((unused)); ++unlockpt (int fd __attribute__ ((unused))) + { + __set_errno (ENOSYS); + return -1; +diff --git a/mach/msgserver.c b/mach/msgserver.c +index b087e7263511b554..d1d90cdee476b2fc 100644 +--- a/mach/msgserver.c ++++ b/mach/msgserver.c +@@ -187,10 +187,10 @@ __mach_msg_server_timeout (boolean_t (*demux) (mach_msg_header_t *request, + weak_alias (__mach_msg_server_timeout, mach_msg_server_timeout) + + mach_msg_return_t +-__mach_msg_server (demux, max_size, rcv_name) +- boolean_t (*demux) (mach_msg_header_t *in, mach_msg_header_t *out); +- mach_msg_size_t max_size; +- mach_port_t rcv_name; ++__mach_msg_server (boolean_t (*demux) (mach_msg_header_t *in, ++ mach_msg_header_t *out), ++ mach_msg_size_t max_size, ++ mach_port_t rcv_name) + { + return __mach_msg_server_timeout (demux, max_size, rcv_name, + MACH_MSG_OPTION_NONE, +diff --git a/misc/efgcvt.c b/misc/efgcvt.c +index d7d15a1846ce1be4..e1304592dc8f36a9 100644 +--- a/misc/efgcvt.c ++++ b/misc/efgcvt.c +@@ -65,9 +65,8 @@ static char ECVT_BUFFER[MAXDIG]; + libc_freeres_ptr (static char *FCVT_BUFPTR); + + char * +-__APPEND (FUNC_PREFIX, fcvt) (value, ndigit, decpt, sign) +- FLOAT_TYPE value; +- int ndigit, *decpt, *sign; ++__APPEND (FUNC_PREFIX, fcvt) (FLOAT_TYPE value, int ndigit, int *decpt, ++ int *sign) + { + if (FCVT_BUFPTR == NULL) + { +@@ -88,9 +87,8 @@ __APPEND (FUNC_PREFIX, fcvt) (value, ndigit, decpt, sign) + + + char * +-__APPEND (FUNC_PREFIX, ecvt) (value, ndigit, decpt, sign) +- FLOAT_TYPE value; +- int ndigit, *decpt, *sign; ++__APPEND (FUNC_PREFIX, ecvt) (FLOAT_TYPE value, int ndigit, int *decpt, ++ int *sign) + { + (void) __APPEND (FUNC_PREFIX, ecvt_r) (value, ndigit, decpt, sign, + ECVT_BUFFER, MAXDIG); +@@ -99,10 +97,7 @@ __APPEND (FUNC_PREFIX, ecvt) (value, ndigit, decpt, sign) + } + + char * +-__APPEND (FUNC_PREFIX, gcvt) (value, ndigit, buf) +- FLOAT_TYPE value; +- int ndigit; +- char *buf; ++__APPEND (FUNC_PREFIX, gcvt) (FLOAT_TYPE value, int ndigit, char *buf) + { + sprintf (buf, "%.*" FLOAT_FMT_FLAG "g", MIN (ndigit, NDIGIT_MAX), value); + return buf; +diff --git a/misc/efgcvt_r.c b/misc/efgcvt_r.c +index e9f32d673132279d..4cd040fadc008399 100644 +--- a/misc/efgcvt_r.c ++++ b/misc/efgcvt_r.c +@@ -72,11 +72,8 @@ + + + int +-__APPEND (FUNC_PREFIX, fcvt_r) (value, ndigit, decpt, sign, buf, len) +- FLOAT_TYPE value; +- int ndigit, *decpt, *sign; +- char *buf; +- size_t len; ++__APPEND (FUNC_PREFIX, fcvt_r) (FLOAT_TYPE value, int ndigit, int *decpt, ++ int *sign, char *buf, size_t len) + { + ssize_t n; + ssize_t i; +@@ -170,11 +167,8 @@ __APPEND (FUNC_PREFIX, fcvt_r) (value, ndigit, decpt, sign, buf, len) + } + + int +-__APPEND (FUNC_PREFIX, ecvt_r) (value, ndigit, decpt, sign, buf, len) +- FLOAT_TYPE value; +- int ndigit, *decpt, *sign; +- char *buf; +- size_t len; ++__APPEND (FUNC_PREFIX, ecvt_r) (FLOAT_TYPE value, int ndigit, int *decpt, ++ int *sign, char *buf, size_t len) + { + int exponent = 0; + +diff --git a/nptl/cleanup_compat.c b/nptl/cleanup_compat.c +index 67ff5965dd45de61..ba36268f8af78085 100644 +--- a/nptl/cleanup_compat.c ++++ b/nptl/cleanup_compat.c +@@ -21,10 +21,8 @@ + + + void +-_pthread_cleanup_push (buffer, routine, arg) +- struct _pthread_cleanup_buffer *buffer; +- void (*routine) (void *); +- void *arg; ++_pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, ++ void (*routine) (void *), void *arg) + { + struct pthread *self = THREAD_SELF; + +diff --git a/nptl/cleanup_defer_compat.c b/nptl/cleanup_defer_compat.c +index e15723611c71d55a..96db28a26be0f7d4 100644 +--- a/nptl/cleanup_defer_compat.c ++++ b/nptl/cleanup_defer_compat.c +@@ -20,10 +20,8 @@ + + + void +-_pthread_cleanup_push_defer (buffer, routine, arg) +- struct _pthread_cleanup_buffer *buffer; +- void (*routine) (void *); +- void *arg; ++_pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, ++ void (*routine) (void *), void *arg) + { + struct pthread *self = THREAD_SELF; + +diff --git a/nptl/pthread_atfork.c b/nptl/pthread_atfork.c +index 7da2fd65d227931a..749f417c308c16cc 100644 +--- a/nptl/pthread_atfork.c ++++ b/nptl/pthread_atfork.c +@@ -48,10 +48,8 @@ int + /* Don't mark the compatibility function as hidden. */ + attribute_hidden + #endif +-__pthread_atfork (prepare, parent, child) +- void (*prepare) (void); +- void (*parent) (void); +- void (*child) (void); ++__pthread_atfork (void (*prepare) (void), void (*parent) (void), ++ void (*child) (void)) + { + return __register_atfork (prepare, parent, child, + &__dso_handle == NULL ? NULL : __dso_handle); +diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c +index 987469ba58e7bffa..7cd0003e57f5e759 100644 +--- a/nptl/pthread_create.c ++++ b/nptl/pthread_create.c +@@ -432,11 +432,8 @@ start_thread (void *arg) + + + int +-__pthread_create_2_1 (newthread, attr, start_routine, arg) +- pthread_t *newthread; +- const pthread_attr_t *attr; +- void *(*start_routine) (void *); +- void *arg; ++__pthread_create_2_1 (pthread_t *newthread, const pthread_attr_t *attr, ++ void *(*start_routine) (void *), void *arg) + { + STACK_VARIABLES; + +@@ -560,11 +557,8 @@ versioned_symbol (libpthread, __pthread_create_2_1, pthread_create, GLIBC_2_1); + + #if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1) + int +-__pthread_create_2_0 (newthread, attr, start_routine, arg) +- pthread_t *newthread; +- const pthread_attr_t *attr; +- void *(*start_routine) (void *); +- void *arg; ++__pthread_create_2_0 (pthread_t *newthread, const pthread_attr_t *attr, ++ void *(*start_routine) (void *), void *arg) + { + /* The ATTR attribute is not really of type `pthread_attr_t *'. It has + the old size and access to the new members might crash the program. +diff --git a/nptl/pthread_key_create.c b/nptl/pthread_key_create.c +index 96e21ce6d6674b34..2654e6cc8f73fa24 100644 +--- a/nptl/pthread_key_create.c ++++ b/nptl/pthread_key_create.c +@@ -22,9 +22,7 @@ + + + int +-__pthread_key_create (key, destr) +- pthread_key_t *key; +- void (*destr) (void *); ++__pthread_key_create (pthread_key_t *key, void (*destr) (void *)) + { + /* Find a slot in __pthread_kyes which is unused. */ + for (size_t cnt = 0; cnt < PTHREAD_KEYS_MAX; ++cnt) +diff --git a/nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c b/nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c +index adf0819f59c9d1f1..49bd2b47fe2d41cc 100644 +--- a/nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c ++++ b/nptl/sysdeps/unix/sysv/linux/libc_pthread_init.c +@@ -35,10 +35,9 @@ extern int __libc_multiple_threads attribute_hidden; + + int * + #endif +-__libc_pthread_init (ptr, reclaim, functions) +- unsigned long int *ptr; +- void (*reclaim) (void); +- const struct pthread_functions *functions; ++internal_function ++__libc_pthread_init (unsigned long int *ptr, void (*reclaim) (void), ++ const struct pthread_functions *functions) + { + /* Remember the pointer to the generation counter in libpthread. */ + __fork_generation_pointer = ptr; +diff --git a/nptl/sysdeps/unix/sysv/linux/register-atfork.c b/nptl/sysdeps/unix/sysv/linux/register-atfork.c +index 8b5557d89288d9b3..54b950f71c984ee2 100644 +--- a/nptl/sysdeps/unix/sysv/linux/register-atfork.c ++++ b/nptl/sysdeps/unix/sysv/linux/register-atfork.c +@@ -78,11 +78,8 @@ fork_handler_alloc (void) + + + int +-__register_atfork (prepare, parent, child, dso_handle) +- void (*prepare) (void); +- void (*parent) (void); +- void (*child) (void); +- void *dso_handle; ++__register_atfork (void (*prepare) (void), void (*parent) (void), ++ void (*child) (void), void *dso_handle) + { + /* Get the lock to not conflict with other allocations. */ + lll_lock (__fork_lock, LLL_PRIVATE); +diff --git a/posix/glob.c b/posix/glob.c +index e3d6fe0f15f7d9ce..01a1f2cba3d1d3da 100644 +--- a/posix/glob.c ++++ b/posix/glob.c +@@ -251,11 +251,8 @@ int + #ifdef GLOB_ATTRIBUTE + GLOB_ATTRIBUTE + #endif +-glob (pattern, flags, errfunc, pglob) +- const char *pattern; +- int flags; +- int (*errfunc) (const char *, int); +- glob_t *pglob; ++glob (const char *pattern, int flags, int (*errfunc) (const char *, int), ++ glob_t *pglob) + { + const char *filename; + char *dirname = NULL; +diff --git a/posix/regcomp.c b/posix/regcomp.c +index 80359e58db504ed6..049522f6efbee0c2 100644 +--- a/posix/regcomp.c ++++ b/posix/regcomp.c +@@ -656,8 +656,7 @@ char * + regcomp/regexec above without link errors. */ + weak_function + # endif +-re_comp (s) +- const char *s; ++re_comp (const char *s) + { + reg_errcode_t ret; + char *fastmap; +diff --git a/posix/regexec.c b/posix/regexec.c +index f315149af88ac6bb..6ca865dc9a7d44d5 100644 +--- a/posix/regexec.c ++++ b/posix/regexec.c +@@ -586,8 +586,7 @@ int + # ifdef _LIBC + weak_function + # endif +-re_exec (s) +- const char *s; ++re_exec (const char *s) + { + return 0 == regexec (&re_comp_buf, s, 0, NULL, 0); + } +diff --git a/stdlib/add_n.c b/stdlib/add_n.c +index afb8e09306d7ecc7..fc5a6dbf71c70c7d 100644 +--- a/stdlib/add_n.c ++++ b/stdlib/add_n.c +@@ -22,15 +22,7 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #include "gmp-impl.h" + + mp_limb_t +-#if __STDC__ + mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, mp_size_t size) +-#else +-mpn_add_n (res_ptr, s1_ptr, s2_ptr, size) +- register mp_ptr res_ptr; +- register mp_srcptr s1_ptr; +- register mp_srcptr s2_ptr; +- mp_size_t size; +-#endif + { + register mp_limb_t x, y, cy; + register mp_size_t j; +diff --git a/stdlib/cmp.c b/stdlib/cmp.c +index 003b9aa236cf9d6d..90a41bbf990e14ae 100644 +--- a/stdlib/cmp.c ++++ b/stdlib/cmp.c +@@ -27,14 +27,7 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + Return 1 if OP1 > OP2, 0 if they are equal, and -1 if OP1 < OP2. */ + + int +-#if __STDC__ + mpn_cmp (mp_srcptr op1_ptr, mp_srcptr op2_ptr, mp_size_t size) +-#else +-mpn_cmp (op1_ptr, op2_ptr, size) +- mp_srcptr op1_ptr; +- mp_srcptr op2_ptr; +- mp_size_t size; +-#endif + { + mp_size_t i; + mp_limb_t op1_word, op2_word; +diff --git a/stdlib/divmod_1.c b/stdlib/divmod_1.c +index 4e6966bc913927a3..275dceff87094b8a 100644 +--- a/stdlib/divmod_1.c ++++ b/stdlib/divmod_1.c +@@ -40,17 +40,9 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + here (not udiv_qrnnd). */ + + mp_limb_t +-#if __STDC__ + mpn_divmod_1 (mp_ptr quot_ptr, + mp_srcptr dividend_ptr, mp_size_t dividend_size, + mp_limb_t divisor_limb) +-#else +-mpn_divmod_1 (quot_ptr, dividend_ptr, dividend_size, divisor_limb) +- mp_ptr quot_ptr; +- mp_srcptr dividend_ptr; +- mp_size_t dividend_size; +- mp_limb_t divisor_limb; +-#endif + { + mp_size_t i; + mp_limb_t n1, n0, r; +diff --git a/stdlib/divrem.c b/stdlib/divrem.c +index c0abb4d9fbcfc0cf..0c5b2da7df0f6880 100644 +--- a/stdlib/divrem.c ++++ b/stdlib/divrem.c +@@ -40,19 +40,9 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + 3. NSIZE >= DSIZE, even if QEXTRA_LIMBS is non-zero. */ + + mp_limb_t +-#if __STDC__ + mpn_divrem (mp_ptr qp, mp_size_t qextra_limbs, + mp_ptr np, mp_size_t nsize, + mp_srcptr dp, mp_size_t dsize) +-#else +-mpn_divrem (qp, qextra_limbs, np, nsize, dp, dsize) +- mp_ptr qp; +- mp_size_t qextra_limbs; +- mp_ptr np; +- mp_size_t nsize; +- mp_srcptr dp; +- mp_size_t dsize; +-#endif + { + mp_limb_t most_significant_q_limb = 0; + +diff --git a/stdlib/lshift.c b/stdlib/lshift.c +index deb264177a5710f8..d2608e06e9113c4a 100644 +--- a/stdlib/lshift.c ++++ b/stdlib/lshift.c +@@ -31,17 +31,9 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + */ + + mp_limb_t +-#if __STDC__ + mpn_lshift (register mp_ptr wp, + register mp_srcptr up, mp_size_t usize, + register unsigned int cnt) +-#else +-mpn_lshift (wp, up, usize, cnt) +- register mp_ptr wp; +- register mp_srcptr up; +- mp_size_t usize; +- register unsigned int cnt; +-#endif + { + register mp_limb_t high_limb, low_limb; + register unsigned sh_1, sh_2; +diff --git a/stdlib/mod_1.c b/stdlib/mod_1.c +index d325a931adef007c..72d8ff8110e2c9e2 100644 +--- a/stdlib/mod_1.c ++++ b/stdlib/mod_1.c +@@ -37,15 +37,8 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + here (not udiv_qrnnd). */ + + mp_limb_t +-#if __STDC__ + mpn_mod_1 (mp_srcptr dividend_ptr, mp_size_t dividend_size, + mp_limb_t divisor_limb) +-#else +-mpn_mod_1 (dividend_ptr, dividend_size, divisor_limb) +- mp_srcptr dividend_ptr; +- mp_size_t dividend_size; +- mp_limb_t divisor_limb; +-#endif + { + mp_size_t i; + mp_limb_t n1, n0, r; +diff --git a/stdlib/mul.c b/stdlib/mul.c +index cab3e2b134080f08..1cb9d73ef96a4559 100644 +--- a/stdlib/mul.c ++++ b/stdlib/mul.c +@@ -42,18 +42,9 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #endif + + mp_limb_t +-#if __STDC__ + mpn_mul (mp_ptr prodp, + mp_srcptr up, mp_size_t usize, + mp_srcptr vp, mp_size_t vsize) +-#else +-mpn_mul (prodp, up, usize, vp, vsize) +- mp_ptr prodp; +- mp_srcptr up; +- mp_size_t usize; +- mp_srcptr vp; +- mp_size_t vsize; +-#endif + { + mp_ptr prod_endp = prodp + usize + vsize - 1; + mp_limb_t cy; +diff --git a/stdlib/mul_n.c b/stdlib/mul_n.c +index 36876c2473e46295..ac2ab42dc887389e 100644 +--- a/stdlib/mul_n.c ++++ b/stdlib/mul_n.c +@@ -49,15 +49,7 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + algorithm below. */ + + void +-#if __STDC__ + impn_mul_n_basecase (mp_ptr prodp, mp_srcptr up, mp_srcptr vp, mp_size_t size) +-#else +-impn_mul_n_basecase (prodp, up, vp, size) +- mp_ptr prodp; +- mp_srcptr up; +- mp_srcptr vp; +- mp_size_t size; +-#endif + { + mp_size_t i; + mp_limb_t cy_limb; +@@ -100,17 +92,8 @@ impn_mul_n_basecase (prodp, up, vp, size) + } + + void +-#if __STDC__ + impn_mul_n (mp_ptr prodp, + mp_srcptr up, mp_srcptr vp, mp_size_t size, mp_ptr tspace) +-#else +-impn_mul_n (prodp, up, vp, size, tspace) +- mp_ptr prodp; +- mp_srcptr up; +- mp_srcptr vp; +- mp_size_t size; +- mp_ptr tspace; +-#endif + { + if ((size & 1) != 0) + { +@@ -219,14 +202,7 @@ impn_mul_n (prodp, up, vp, size, tspace) + } + + void +-#if __STDC__ + impn_sqr_n_basecase (mp_ptr prodp, mp_srcptr up, mp_size_t size) +-#else +-impn_sqr_n_basecase (prodp, up, size) +- mp_ptr prodp; +- mp_srcptr up; +- mp_size_t size; +-#endif + { + mp_size_t i; + mp_limb_t cy_limb; +@@ -269,16 +245,8 @@ impn_sqr_n_basecase (prodp, up, size) + } + + void +-#if __STDC__ + impn_sqr_n (mp_ptr prodp, + mp_srcptr up, mp_size_t size, mp_ptr tspace) +-#else +-impn_sqr_n (prodp, up, size, tspace) +- mp_ptr prodp; +- mp_srcptr up; +- mp_size_t size; +- mp_ptr tspace; +-#endif + { + if ((size & 1) != 0) + { +@@ -358,15 +326,7 @@ impn_sqr_n (prodp, up, size, tspace) + + /* This should be made into an inline function in gmp.h. */ + void +-#if __STDC__ + mpn_mul_n (mp_ptr prodp, mp_srcptr up, mp_srcptr vp, mp_size_t size) +-#else +-mpn_mul_n (prodp, up, vp, size) +- mp_ptr prodp; +- mp_srcptr up; +- mp_srcptr vp; +- mp_size_t size; +-#endif + { + TMP_DECL (marker); + TMP_MARK (marker); +diff --git a/stdlib/rshift.c b/stdlib/rshift.c +index 13a12be35c673971..96562d474fca72a7 100644 +--- a/stdlib/rshift.c ++++ b/stdlib/rshift.c +@@ -31,17 +31,9 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + */ + + mp_limb_t +-#if __STDC__ + mpn_rshift (register mp_ptr wp, + register mp_srcptr up, mp_size_t usize, + register unsigned int cnt) +-#else +-mpn_rshift (wp, up, usize, cnt) +- register mp_ptr wp; +- register mp_srcptr up; +- mp_size_t usize; +- register unsigned int cnt; +-#endif + { + register mp_limb_t high_limb, low_limb; + register unsigned sh_1, sh_2; +diff --git a/stdlib/strtod.c b/stdlib/strtod.c +index 570780cdecbffde0..657d95de82169358 100644 +--- a/stdlib/strtod.c ++++ b/stdlib/strtod.c +@@ -46,10 +46,7 @@ + + + FLOAT +-INTERNAL (STRTOF) (nptr, endptr, group) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int group; ++INTERNAL (STRTOF) (const STRING_TYPE *nptr, STRING_TYPE **endptr, int group) + { + return INTERNAL(STRTOF_L) (nptr, endptr, group, _NL_CURRENT_LOCALE); + } +@@ -62,9 +59,7 @@ FLOAT + #ifdef weak_function + weak_function + #endif +-STRTOF (nptr, endptr) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; ++STRTOF (const STRING_TYPE *nptr, STRING_TYPE **endptr) + { + return INTERNAL(STRTOF_L) (nptr, endptr, 0, _NL_CURRENT_LOCALE); + } +diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c +index e5b30d443106ee91..bfbe9b4d96222823 100644 +--- a/stdlib/strtod_l.c ++++ b/stdlib/strtod_l.c +@@ -1738,10 +1738,7 @@ FLOAT + #ifdef weak_function + weak_function + #endif +-__STRTOF (nptr, endptr, loc) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- __locale_t loc; ++__STRTOF (const STRING_TYPE *nptr, STRING_TYPE **endptr, __locale_t loc) + { + return ____STRTOF_INTERNAL (nptr, endptr, 0, loc); + } +diff --git a/stdlib/strtol.c b/stdlib/strtol.c +index 67d758c57973b5d5..68b81ef557a6274c 100644 +--- a/stdlib/strtol.c ++++ b/stdlib/strtol.c +@@ -89,11 +89,8 @@ extern INT INTERNAL (__strtol_l) (const STRING_TYPE *, STRING_TYPE **, int, + + + INT +-INTERNAL (strtol) (nptr, endptr, base, group) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int base; +- int group; ++INTERNAL (strtol) (const STRING_TYPE *nptr, STRING_TYPE **endptr, ++ int base, int group) + { + return INTERNAL (__strtol_l) (nptr, endptr, base, group, _NL_CURRENT_LOCALE); + } +diff --git a/stdlib/strtol_l.c b/stdlib/strtol_l.c +index 8174d22f060c2149..3e686acec1484118 100644 +--- a/stdlib/strtol_l.c ++++ b/stdlib/strtol_l.c +@@ -222,12 +222,8 @@ extern const unsigned char __strtol_ull_rem_tab[] attribute_hidden; + one converted is stored in *ENDPTR. */ + + INT +-INTERNAL (__strtol_l) (nptr, endptr, base, group, loc) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int base; +- int group; +- __locale_t loc; ++INTERNAL (__strtol_l) (const STRING_TYPE *nptr, STRING_TYPE **endptr, ++ int base, int group, __locale_t loc) + { + int negative; + unsigned LONG int cutoff; +@@ -546,11 +542,8 @@ INT + #ifdef weak_function + weak_function + #endif +-__strtol_l (nptr, endptr, base, loc) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int base; +- __locale_t loc; ++__strtol_l (const STRING_TYPE *nptr, STRING_TYPE **endptr, ++ int base, __locale_t loc) + { + return INTERNAL (__strtol_l) (nptr, endptr, base, 0, loc); + } +diff --git a/stdlib/sub_n.c b/stdlib/sub_n.c +index 7e8ca2354554d062..db6928d82df8499d 100644 +--- a/stdlib/sub_n.c ++++ b/stdlib/sub_n.c +@@ -22,15 +22,7 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #include "gmp-impl.h" + + mp_limb_t +-#if __STDC__ + mpn_sub_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr, mp_size_t size) +-#else +-mpn_sub_n (res_ptr, s1_ptr, s2_ptr, size) +- register mp_ptr res_ptr; +- register mp_srcptr s1_ptr; +- register mp_srcptr s2_ptr; +- mp_size_t size; +-#endif + { + register mp_limb_t x, y, cy; + register mp_size_t j; +diff --git a/string/memrchr.c b/string/memrchr.c +index 2826f1305626fb7c..79d19aa18ff5bd3e 100644 +--- a/string/memrchr.c ++++ b/string/memrchr.c +@@ -61,10 +61,7 @@ __memrchr + #else + MEMRCHR + #endif +- (s, c_in, n) +- const __ptr_t s; +- int c_in; +- size_t n; ++ (const __ptr_t s, int c_in, size_t n) + { + const unsigned char *char_ptr; + const unsigned long int *longword_ptr; +diff --git a/string/strcasecmp.c b/string/strcasecmp.c +index e7a3c4481b27e954..73581256fc13cbb8 100644 +--- a/string/strcasecmp.c ++++ b/string/strcasecmp.c +@@ -35,21 +35,16 @@ + #endif + + #ifdef USE_IN_EXTENDED_LOCALE_MODEL +-# define LOCALE_PARAM , loc +-# define LOCALE_PARAM_DECL __locale_t loc; ++# define LOCALE_PARAM , __locale_t loc + #else + # define LOCALE_PARAM +-# define LOCALE_PARAM_DECL + #endif + + /* Compare S1 and S2, ignoring case, returning less than, equal to or + greater than zero if S1 is lexicographically less than, + equal to or greater than S2. */ + int +-__strcasecmp (s1, s2 LOCALE_PARAM) +- const char *s1; +- const char *s2; +- LOCALE_PARAM_DECL ++__strcasecmp (const char *s1, const char *s2 LOCALE_PARAM) + { + #if defined _LIBC && !defined USE_IN_EXTENDED_LOCALE_MODEL + __locale_t loc = _NL_CURRENT_LOCALE; +diff --git a/string/strncase.c b/string/strncase.c +index 02fd51fd40a8ee94..fbd85f3a2329850d 100644 +--- a/string/strncase.c ++++ b/string/strncase.c +@@ -36,11 +36,9 @@ + #endif + + #ifdef USE_IN_EXTENDED_LOCALE_MODEL +-# define LOCALE_PARAM , loc +-# define LOCALE_PARAM_DECL __locale_t loc; ++# define LOCALE_PARAM , __locale_t loc + #else + # define LOCALE_PARAM +-# define LOCALE_PARAM_DECL + #endif + + /* Compare no more than N characters of S1 and S2, +@@ -48,11 +46,7 @@ + greater than zero if S1 is lexicographically less + than, equal to or greater than S2. */ + int +-__strncasecmp (s1, s2, n LOCALE_PARAM) +- const char *s1; +- const char *s2; +- size_t n; +- LOCALE_PARAM_DECL ++__strncasecmp (const char *s1, const char *s2, size_t n LOCALE_PARAM) + { + #if defined _LIBC && !defined USE_IN_EXTENDED_LOCALE_MODEL + __locale_t loc = _NL_CURRENT_LOCALE; +diff --git a/sunrpc/pm_getport.c b/sunrpc/pm_getport.c +index 5c43acc0609d7377..f1fd462e181f7a8b 100644 +--- a/sunrpc/pm_getport.c ++++ b/sunrpc/pm_getport.c +@@ -82,14 +82,9 @@ __get_socket (struct sockaddr_in *saddr) + */ + u_short + internal_function +-__libc_rpc_getport (address, program, version, protocol, timeout_sec, +- tottimeout_sec) +- struct sockaddr_in *address; +- u_long program; +- u_long version; +- u_int protocol; +- time_t timeout_sec; +- time_t tottimeout_sec; ++__libc_rpc_getport (struct sockaddr_in *address, u_long program, ++ u_long version, u_int protocol, time_t timeout_sec, ++ time_t tottimeout_sec) + { + const struct timeval timeout = {timeout_sec, 0}; + const struct timeval tottimeout = {tottimeout_sec, 0}; +diff --git a/sunrpc/xdr.c b/sunrpc/xdr.c +index 9f1f7d417521044d..32dfa0aa1ab1e76a 100644 +--- a/sunrpc/xdr.c ++++ b/sunrpc/xdr.c +@@ -674,12 +674,15 @@ libc_hidden_nolink_sunrpc (xdr_netobj, GLIBC_2_0) + * If there is no specific or default routine an error is returned. + */ + bool_t +-xdr_union (xdrs, dscmp, unp, choices, dfault) +- XDR *xdrs; +- enum_t *dscmp; /* enum to decide which arm to work on */ +- char *unp; /* the union itself */ +- const struct xdr_discrim *choices; /* [value, xdr proc] for each arm */ +- xdrproc_t dfault; /* default xdr routine */ ++xdr_union (XDR *xdrs, ++ /* enum to decide which arm to work on */ ++ enum_t *dscmp, ++ /* the union itself */ ++ char *unp, ++ /* [value, xdr proc] for each arm */ ++ const struct xdr_discrim *choices, ++ /* default xdr routine */ ++ xdrproc_t dfault) + { + enum_t dscm; + +diff --git a/sunrpc/xdr_array.c b/sunrpc/xdr_array.c +index fd9d1fb42f744844..99a1d5d24520572f 100644 +--- a/sunrpc/xdr_array.c ++++ b/sunrpc/xdr_array.c +@@ -53,13 +53,17 @@ + * xdr procedure to call to handle each element of the array. + */ + bool_t +-xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc) +- XDR *xdrs; +- caddr_t *addrp; /* array pointer */ +- u_int *sizep; /* number of elements */ +- u_int maxsize; /* max numberof elements */ +- u_int elsize; /* size in bytes of each element */ +- xdrproc_t elproc; /* xdr routine to handle each element */ ++xdr_array (XDR *xdrs, ++ /* array pointer */ ++ caddr_t *addrp, ++ /* number of elements */ ++ u_int *sizep, ++ /* max numberof elements */ ++ u_int maxsize, ++ /* size in bytes of each element */ ++ u_int elsize, ++ /* xdr routine to handle each element */ ++ xdrproc_t elproc) + { + u_int i; + caddr_t target = *addrp; +diff --git a/sunrpc/xdr_ref.c b/sunrpc/xdr_ref.c +index a7d9264ed6be6fe2..2b7ebc8e11ca4dab 100644 +--- a/sunrpc/xdr_ref.c ++++ b/sunrpc/xdr_ref.c +@@ -54,11 +54,13 @@ + * proc is the routine to handle the referenced structure. + */ + bool_t +-xdr_reference (xdrs, pp, size, proc) +- XDR *xdrs; +- caddr_t *pp; /* the pointer to work on */ +- u_int size; /* size of the object pointed to */ +- xdrproc_t proc; /* xdr routine to handle the object */ ++xdr_reference (XDR *xdrs, ++ /* the pointer to work on */ ++ caddr_t *pp, ++ /* size of the object pointed to */ ++ u_int size, ++ /* xdr routine to handle the object */ ++ xdrproc_t proc) + { + caddr_t loc = *pp; + bool_t stat; +diff --git a/sysdeps/m68k/m680x0/fpu/s_atan.c b/sysdeps/m68k/m680x0/fpu/s_atan.c +index c7bba83f30a4174d..acb6900d82d5c77d 100644 +--- a/sysdeps/m68k/m680x0/fpu/s_atan.c ++++ b/sysdeps/m68k/m680x0/fpu/s_atan.c +@@ -27,8 +27,7 @@ + #define __CONCATX(a,b) __CONCAT(a,b) + + float_type +-__CONCATX(__,FUNC) (x) +- float_type x; ++__CONCATX(__,FUNC) (float_type x) + { + return __m81_u(__CONCATX(__,FUNC))(x); + } +diff --git a/sysdeps/m68k/m680x0/fpu/s_isinf.c b/sysdeps/m68k/m680x0/fpu/s_isinf.c +index 20872da536619d09..dfb9d99be8f8560c 100644 +--- a/sysdeps/m68k/m680x0/fpu/s_isinf.c ++++ b/sysdeps/m68k/m680x0/fpu/s_isinf.c +@@ -27,8 +27,7 @@ + #define __CONCATX(a,b) __CONCAT(a,b) + + int +-__CONCATX(__,FUNC) (x) +- float_type x; ++__CONCATX(__,FUNC) (float_type x) + { + return __m81_u(__CONCATX(__,FUNC))(x); + } +diff --git a/sysdeps/m68k/m680x0/fpu/s_scalbn.c b/sysdeps/m68k/m680x0/fpu/s_scalbn.c +index ce1b92a22c2107df..8861f7a522cc00f4 100644 +--- a/sysdeps/m68k/m680x0/fpu/s_scalbn.c ++++ b/sysdeps/m68k/m680x0/fpu/s_scalbn.c +@@ -39,9 +39,7 @@ + #define __CONCATX(a,b) __CONCAT(a,b) + + float_type +-__CONCATX(__scalbn,suffix) (x, exp) +- float_type x; +- int exp; ++__CONCATX(__scalbn,suffix) (float_type x, int exp) + { + return __m81_u(__CONCATX(__scalbn,suffix))(x, exp); + } +diff --git a/sysdeps/m68k/m680x0/fpu/s_sincos.c b/sysdeps/m68k/m680x0/fpu/s_sincos.c +index f7a40a3704204240..d2eb192363d6c907 100644 +--- a/sysdeps/m68k/m680x0/fpu/s_sincos.c ++++ b/sysdeps/m68k/m680x0/fpu/s_sincos.c +@@ -27,8 +27,7 @@ + #define CONCATX(a,b) __CONCAT(a,b) + + void +-CONCATX(__,FUNC) (x, sinx, cosx) +- float_type x, *sinx, *cosx; ++CONCATX(__,FUNC) (float_type x, float_type *sinx, float_type *cosx) + { + __m81_u(CONCATX(__,FUNC))(x, sinx, cosx); + } +diff --git a/sysdeps/unix/sysv/linux/i386/scandir64.c b/sysdeps/unix/sysv/linux/i386/scandir64.c +index aca505a320b99473..485c84bee3e09aea 100644 +--- a/sysdeps/unix/sysv/linux/i386/scandir64.c ++++ b/sysdeps/unix/sysv/linux/i386/scandir64.c +@@ -39,12 +39,10 @@ versioned_symbol (libc, __scandir64, scandir64, GLIBC_2_2); + # include "olddirent.h" + + int +-__old_scandir64 (dir, namelist, select, cmp) +- const char *dir; +- struct __old_dirent64 ***namelist; +- int (*select) (const struct __old_dirent64 *); +- int (*cmp) (const struct __old_dirent64 **, +- const struct __old_dirent64 **); ++__old_scandir64 (const char *dir, struct __old_dirent64 ***namelist, ++ int (*select) (const struct __old_dirent64 *), ++ int (*cmp) (const struct __old_dirent64 **, ++ const struct __old_dirent64 **)) + { + DIR *dp = __opendir (dir); + struct __old_dirent64 **v = NULL; +diff --git a/time/strftime_l.c b/time/strftime_l.c +index 0f6ac83d34d43755..a1fe2714d221f4f3 100644 +--- a/time/strftime_l.c ++++ b/time/strftime_l.c +@@ -284,16 +284,12 @@ static const CHAR_T zeroes[16] = /* "0000000000000000" */ + # undef _NL_CURRENT + # define _NL_CURRENT(category, item) \ + (current->values[_NL_ITEM_INDEX (item)].string) +-# define LOCALE_PARAM , loc ++# define LOCALE_PARAM , __locale_t loc + # define LOCALE_ARG , loc +-# define LOCALE_PARAM_DECL __locale_t loc; +-# define LOCALE_PARAM_PROTO , __locale_t loc + # define HELPER_LOCALE_ARG , current + #else + # define LOCALE_PARAM +-# define LOCALE_PARAM_PROTO + # define LOCALE_ARG +-# define LOCALE_PARAM_DECL + # ifdef _LIBC + # define HELPER_LOCALE_ARG , _NL_CURRENT_DATA (LC_TIME) + # else +@@ -330,14 +326,10 @@ static const CHAR_T zeroes[16] = /* "0000000000000000" */ + #define ISDIGIT(Ch) ((unsigned int) (Ch) - L_('0') <= 9) + + static CHAR_T *memcpy_lowcase (CHAR_T *dest, const CHAR_T *src, +- size_t len LOCALE_PARAM_PROTO) __THROW; ++ size_t len LOCALE_PARAM) __THROW; + + static CHAR_T * +-memcpy_lowcase (dest, src, len LOCALE_PARAM) +- CHAR_T *dest; +- const CHAR_T *src; +- size_t len; +- LOCALE_PARAM_DECL ++memcpy_lowcase (CHAR_T *dest, const CHAR_T *src, size_t len LOCALE_PARAM) + { + while (len-- > 0) + dest[len] = TOLOWER ((UCHAR_T) src[len], loc); +@@ -345,14 +337,10 @@ memcpy_lowcase (dest, src, len LOCALE_PARAM) + } + + static CHAR_T *memcpy_uppcase (CHAR_T *dest, const CHAR_T *src, +- size_t len LOCALE_PARAM_PROTO) __THROW; ++ size_t len LOCALE_PARAM) __THROW; + + static CHAR_T * +-memcpy_uppcase (dest, src, len LOCALE_PARAM) +- CHAR_T *dest; +- const CHAR_T *src; +- size_t len; +- LOCALE_PARAM_DECL ++memcpy_uppcase (CHAR_T *dest, const CHAR_T *src, size_t len LOCALE_PARAM) + { + while (len-- > 0) + dest[len] = TOUPPER ((UCHAR_T) src[len], loc); +@@ -429,8 +417,7 @@ static CHAR_T const month_name[][10] = + #ifdef emacs + # define my_strftime emacs_strftimeu + # define ut_argument , ut +-# define ut_argument_spec int ut; +-# define ut_argument_spec_iso , int ut ++# define ut_argument_spec , int ut + #else + # ifdef COMPILE_WIDE + # define my_strftime wcsftime +@@ -441,15 +428,14 @@ static CHAR_T const month_name[][10] = + # endif + # define ut_argument + # define ut_argument_spec +-# define ut_argument_spec_iso + /* We don't have this information in general. */ + # define ut 0 + #endif + + static size_t __strftime_internal (CHAR_T *, size_t, const CHAR_T *, + const struct tm *, bool * +- ut_argument_spec_iso +- LOCALE_PARAM_PROTO) __THROW; ++ ut_argument_spec ++ LOCALE_PARAM) __THROW; + + /* Write information from TP into S according to the format + string FORMAT, writing no more that MAXSIZE characters +@@ -459,13 +445,8 @@ static size_t __strftime_internal (CHAR_T *, size_t, const CHAR_T *, + written, use NULL for S and (size_t) UINT_MAX for MAXSIZE. */ + + size_t +-my_strftime (s, maxsize, format, tp ut_argument LOCALE_PARAM) +- CHAR_T *s; +- size_t maxsize; +- const CHAR_T *format; +- const struct tm *tp; +- ut_argument_spec +- LOCALE_PARAM_DECL ++my_strftime (CHAR_T *s, size_t maxsize, const CHAR_T *format, ++ const struct tm *tp ut_argument_spec LOCALE_PARAM) + { + #if !defined _LIBC && HAVE_TZNAME && HAVE_TZSET + /* Solaris 2.5 tzset sometimes modifies the storage returned by localtime. +@@ -483,15 +464,9 @@ libc_hidden_def (my_strftime) + #endif + + static size_t +-__strftime_internal (s, maxsize, format, tp, tzset_called ut_argument +- LOCALE_PARAM) +- CHAR_T *s; +- size_t maxsize; +- const CHAR_T *format; +- const struct tm *tp; +- bool *tzset_called; +- ut_argument_spec +- LOCALE_PARAM_DECL ++__strftime_internal (CHAR_T *s, size_t maxsize, const CHAR_T *format, ++ const struct tm *tp, bool *tzset_called ++ ut_argument_spec LOCALE_PARAM) + { + #if defined _LIBC && defined USE_IN_EXTENDED_LOCALE_MODEL + struct __locale_data *const current = loc->__locales[LC_TIME]; +diff --git a/time/strptime_l.c b/time/strptime_l.c +index cb2b8faa6d740748..7f1efa13374c5eb4 100644 +--- a/time/strptime_l.c ++++ b/time/strptime_l.c +@@ -181,17 +181,13 @@ static const unsigned short int __mon_yday[2][13] = + # undef _NL_CURRENT_WORD + # define _NL_CURRENT_WORD(category, item) \ + (current->values[_NL_ITEM_INDEX (item)].word) +-# define LOCALE_PARAM , locale ++# define LOCALE_PARAM , __locale_t locale + # define LOCALE_ARG , locale +-# define LOCALE_PARAM_PROTO , __locale_t locale +-# define LOCALE_PARAM_DECL __locale_t locale; + # define HELPER_LOCALE_ARG , current + # define ISSPACE(Ch) __isspace_l (Ch, locale) + #else + # define LOCALE_PARAM + # define LOCALE_ARG +-# define LOCALE_PARAM_DECL +-# define LOCALE_PARAM_PROTO + # define HELPER_LOCALE_ARG + # define ISSPACE(Ch) isspace (Ch) + #endif +@@ -239,12 +235,8 @@ internal_function + #else + static char * + #endif +-__strptime_internal (rp, fmt, tmp, statep LOCALE_PARAM) +- const char *rp; +- const char *fmt; +- struct tm *tmp; +- void *statep; +- LOCALE_PARAM_DECL ++__strptime_internal (const char *rp, const char *fmt, struct tm *tmp, ++ void *statep LOCALE_PARAM) + { + #ifdef _LIBC + struct __locale_data *const current = locale->__locales[LC_TIME]; +@@ -1204,11 +1196,7 @@ __strptime_internal (rp, fmt, tmp, statep LOCALE_PARAM) + + + char * +-strptime (buf, format, tm LOCALE_PARAM) +- const char *buf; +- const char *format; +- struct tm *tm; +- LOCALE_PARAM_DECL ++strptime (const char *buf, const char *format, struct tm *tm LOCALE_PARAM) + { + return __strptime_internal (buf, format, tm, NULL LOCALE_ARG); + } +diff --git a/wcsmbs/wcscasecmp.c b/wcsmbs/wcscasecmp.c +index f970057f504999c8..4943bb5b9b410426 100644 +--- a/wcsmbs/wcscasecmp.c ++++ b/wcsmbs/wcscasecmp.c +@@ -35,21 +35,16 @@ + #endif + + #ifdef USE_IN_EXTENDED_LOCALE_MODEL +-# define LOCALE_PARAM , loc +-# define LOCALE_PARAM_DECL __locale_t loc; ++# define LOCALE_PARAM , __locale_t loc + #else + # define LOCALE_PARAM +-# define LOCALE_PARAM_DECL + #endif + + /* Compare S1 and S2, ignoring case, returning less than, equal to or + greater than zero if S1 is lexicographically less than, + equal to or greater than S2. */ + int +-__wcscasecmp (s1, s2 LOCALE_PARAM) +- const wchar_t *s1; +- const wchar_t *s2; +- LOCALE_PARAM_DECL ++__wcscasecmp (const wchar_t *s1, const wchar_t *s2 LOCALE_PARAM) + { + wint_t c1, c2; + +diff --git a/wcsmbs/wcsncase.c b/wcsmbs/wcsncase.c +index 8b216b48184f793d..3e56ce5d25197a60 100644 +--- a/wcsmbs/wcsncase.c ++++ b/wcsmbs/wcsncase.c +@@ -37,11 +37,9 @@ + #endif + + #ifdef USE_IN_EXTENDED_LOCALE_MODEL +-# define LOCALE_PARAM , loc +-# define LOCALE_PARAM_DECL __locale_t loc; ++# define LOCALE_PARAM , __locale_t loc + #else + # define LOCALE_PARAM +-# define LOCALE_PARAM_DECL + #endif + + /* Compare no more than N wide characters of S1 and S2, +@@ -49,11 +47,7 @@ + greater than zero if S1 is lexicographically less + than, equal to or greater than S2. */ + int +-__wcsncasecmp (s1, s2, n LOCALE_PARAM) +- const wchar_t *s1; +- const wchar_t *s2; +- size_t n; +- LOCALE_PARAM_DECL ++__wcsncasecmp (const wchar_t *s1, const wchar_t *s2, size_t n LOCALE_PARAM) + { + wint_t c1, c2; + diff --git a/SOURCES/glibc-rh1505492-prototypes-18.patch b/SOURCES/glibc-rh1505492-prototypes-18.patch new file mode 100644 index 0000000..1ba9bb7 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-18.patch @@ -0,0 +1,261 @@ +commit 85231522bb178ebe0957529de20b7f3dda81168c +Author: Joseph Myers +Date: Wed Oct 21 11:57:23 2015 +0000 + + Convert a few more function definitions to prototype style. + + This patch converts a few more function definitions in glibc from + old-style K&R to prototype style. This is sufficient to build and + test on x86_64 and x86 with -Wold-style-definition (I'll test on some + more architectures before proposing the actual addition of + -Wold-style-definition). + + Tested for x86_64 and x86 with -Wold-style-definition in use + (testsuite - this patch affects files containing assertions). + + * io/fts.c (fts_open): Convert to prototype-style function + definition. + * malloc/mcheck.c (mcheck): Likewise. + (mcheck_pedantic): Likewise. + * posix/regexec.c (re_search_2_stub): Likewise. Use + internal_function. + (re_search_internal): Likewise. + * resolv/res_init.c [RESOLVSORT] (net_mask): Convert to + prototype-style function definition. + * sunrpc/clnt_udp.c (clntudp_call): Likewise. + * sunrpc/pmap_rmt.c (clnt_broadcast): Likewise. + * sunrpc/rpcsvc/rusers.x (xdr_utmp): Likewise. + (xdr_utmpptr): Likewise. + (xdr_utmparr): Likewise. + (xdr_utmpidle): Likewise. + (xdr_utmpidleptr): Likewise. + (xdr_utmpidlearr): Likewise. + +Conflicts: + malloc/mcheck.c + (Textual conflict due to malloc reformatting upstream.) + resolv/res_init.c + (Already part of the stub resolver rebase in + glibc-rh677316-resolv.patch.) + +diff --git a/io/fts.c b/io/fts.c +index 275608591739ce63..49d2de946b78f483 100644 +--- a/io/fts.c ++++ b/io/fts.c +@@ -85,10 +85,8 @@ static int fts_safe_changedir (FTS *, FTSENT *, int, const char *) + #define BREAD 3 /* fts_read */ + + FTS * +-fts_open(argv, options, compar) +- char * const *argv; +- int options; +- int (*compar) (const FTSENT **, const FTSENT **); ++fts_open (char * const *argv, int options, ++ int (*compar) (const FTSENT **, const FTSENT **)) + { + FTS *sp; + FTSENT *p, *root; +diff --git a/malloc/mcheck.c b/malloc/mcheck.c +index 680e03353e03f235..fa6b0309c5f28e79 100644 +--- a/malloc/mcheck.c ++++ b/malloc/mcheck.c +@@ -370,8 +370,7 @@ mabort (enum mcheck_status status) + ({ __typeof (x) __x = x; __asm ("" : "+m" (__x)); __x; }) + + int +-mcheck (func) +- void (*func) (enum mcheck_status); ++mcheck (void (*func) (enum mcheck_status)) + { + abortfunc = (func != NULL) ? func : &mabort; + +@@ -402,8 +401,7 @@ libc_hidden_def (mcheck) + #endif + + int +-mcheck_pedantic (func) +- void (*func) (enum mcheck_status); ++mcheck_pedantic (void (*func) (enum mcheck_status)) + { + int res = mcheck (func); + if (res == 0) +diff --git a/posix/regexec.c b/posix/regexec.c +index 6ca865dc9a7d44d5..7e1618561e61e41d 100644 +--- a/posix/regexec.c ++++ b/posix/regexec.c +@@ -343,12 +343,11 @@ weak_alias (__re_search_2, re_search_2) + #endif + + static int +-re_search_2_stub (bufp, string1, length1, string2, length2, start, range, regs, +- stop, ret_len) +- struct re_pattern_buffer *bufp; +- const char *string1, *string2; +- int length1, length2, start, range, stop, ret_len; +- struct re_registers *regs; ++internal_function ++re_search_2_stub (struct re_pattern_buffer *bufp, const char *string1, ++ int length1, const char *string2, int length2, int start, ++ int range, struct re_registers *regs, ++ int stop, int ret_len) + { + const char *str; + int rval; +@@ -604,14 +603,10 @@ re_exec (const char *s) + (START + RANGE >= 0 && START + RANGE <= LENGTH) */ + + static reg_errcode_t +-__attribute_warn_unused_result__ +-re_search_internal (preg, string, length, start, range, stop, nmatch, pmatch, +- eflags) +- const regex_t *preg; +- const char *string; +- int length, start, range, stop, eflags; +- size_t nmatch; +- regmatch_t pmatch[]; ++__attribute_warn_unused_result__ internal_function ++re_search_internal (const regex_t *preg, const char *string, int length, ++ int start, int range, int stop, size_t nmatch, ++ regmatch_t pmatch[], int eflags) + { + reg_errcode_t err; + const re_dfa_t *dfa = (const re_dfa_t *) preg->buffer; +diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c +index 1e0c7d45d33d23a1..069768ac213aa116 100644 +--- a/sunrpc/clnt_udp.c ++++ b/sunrpc/clnt_udp.c +@@ -293,14 +293,20 @@ is_network_up (int sock) + } + + static enum clnt_stat +-clntudp_call (cl, proc, xargs, argsp, xresults, resultsp, utimeout) +- CLIENT *cl; /* client handle */ +- u_long proc; /* procedure number */ +- xdrproc_t xargs; /* xdr routine for args */ +- caddr_t argsp; /* pointer to args */ +- xdrproc_t xresults; /* xdr routine for results */ +- caddr_t resultsp; /* pointer to results */ +- struct timeval utimeout; /* seconds to wait before giving up */ ++clntudp_call (/* client handle */ ++ CLIENT *cl, ++ /* procedure number */ ++ u_long proc, ++ /* xdr routine for args */ ++ xdrproc_t xargs, ++ /* pointer to args */ ++ caddr_t argsp, ++ /* xdr routine for results */ ++ xdrproc_t xresults, ++ /* pointer to results */ ++ caddr_t resultsp, ++ /* seconds to wait before giving up */ ++ struct timeval utimeout) + { + struct cu_data *cu = (struct cu_data *) cl->cl_private; + XDR *xdrs; +diff --git a/sunrpc/pmap_rmt.c b/sunrpc/pmap_rmt.c +index c8a8011ea5474b3b..e54fe1447004c6b1 100644 +--- a/sunrpc/pmap_rmt.c ++++ b/sunrpc/pmap_rmt.c +@@ -196,15 +196,22 @@ getbroadcastnets (struct in_addr *addrs, int naddrs) + + + enum clnt_stat +-clnt_broadcast (prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult) +- u_long prog; /* program number */ +- u_long vers; /* version number */ +- u_long proc; /* procedure number */ +- xdrproc_t xargs; /* xdr routine for args */ +- caddr_t argsp; /* pointer to args */ +- xdrproc_t xresults; /* xdr routine for results */ +- caddr_t resultsp; /* pointer to results */ +- resultproc_t eachresult; /* call with each result obtained */ ++clnt_broadcast (/* program number */ ++ u_long prog, ++ /* version number */ ++ u_long vers, ++ /* procedure number */ ++ u_long proc, ++ /* xdr routine for args */ ++ xdrproc_t xargs, ++ /* pointer to args */ ++ caddr_t argsp, ++ /* xdr routine for results */ ++ xdrproc_t xresults, ++ /* pointer to results */ ++ caddr_t resultsp, ++ /* call with each result obtained */ ++ resultproc_t eachresult) + { + enum clnt_stat stat = RPC_FAILED; + AUTH *unix_auth = authunix_create_default (); +diff --git a/sunrpc/rpcsvc/rusers.x b/sunrpc/rpcsvc/rusers.x +index 476ed7400c445d2a..5bbfe97e79e27aa2 100644 +--- a/sunrpc/rpcsvc/rusers.x ++++ b/sunrpc/rpcsvc/rusers.x +@@ -137,9 +137,7 @@ program RUSERSPROG { + %bool_t xdr_utmp (XDR *xdrs, struct ru_utmp *objp); + % + %bool_t +-%xdr_utmp(xdrs, objp) +-% XDR *xdrs; +-% struct ru_utmp *objp; ++%xdr_utmp (XDR *xdrs, struct ru_utmp *objp) + %{ + % /* Since the fields are char foo [xxx], we should not free them. */ + % if (xdrs->x_op != XDR_FREE) +@@ -171,9 +169,7 @@ program RUSERSPROG { + %bool_t xdr_utmpptr(XDR *xdrs, struct ru_utmp **objpp); + % + %bool_t +-%xdr_utmpptr(xdrs, objpp) +-% XDR *xdrs; +-% struct ru_utmp **objpp; ++%xdr_utmpptr (XDR *xdrs, struct ru_utmp **objpp) + %{ + % if (!xdr_reference(xdrs, (char **) objpp, sizeof (struct ru_utmp), + % (xdrproc_t) xdr_utmp)) { +@@ -183,9 +179,7 @@ program RUSERSPROG { + %} + % + %bool_t +-%xdr_utmparr(xdrs, objp) +-% XDR *xdrs; +-% struct utmparr *objp; ++%xdr_utmparr (XDR *xdrs, struct utmparr *objp) + %{ + % if (!xdr_array(xdrs, (char **)&objp->uta_arr, (u_int *)&objp->uta_cnt, + % MAXUSERS, sizeof(struct ru_utmp *), +@@ -198,9 +192,7 @@ program RUSERSPROG { + %bool_t xdr_utmpidle(XDR *xdrs, struct utmpidle *objp); + % + %bool_t +-%xdr_utmpidle(xdrs, objp) +-% XDR *xdrs; +-% struct utmpidle *objp; ++%xdr_utmpidle (XDR *xdrs, struct utmpidle *objp) + %{ + % if (!xdr_utmp(xdrs, &objp->ui_utmp)) { + % return (FALSE); +@@ -214,9 +206,7 @@ program RUSERSPROG { + %bool_t xdr_utmpidleptr(XDR *xdrs, struct utmpidle **objp); + % + %bool_t +-%xdr_utmpidleptr(xdrs, objpp) +-% XDR *xdrs; +-% struct utmpidle **objpp; ++%xdr_utmpidleptr (XDR *xdrs, struct utmpidle **objpp) + %{ + % if (!xdr_reference(xdrs, (char **) objpp, sizeof (struct utmpidle), + % (xdrproc_t) xdr_utmpidle)) { +@@ -226,9 +216,7 @@ program RUSERSPROG { + %} + % + %bool_t +-%xdr_utmpidlearr(xdrs, objp) +-% XDR *xdrs; +-% struct utmpidlearr *objp; ++%xdr_utmpidlearr (XDR *xdrs, struct utmpidlearr *objp) + %{ + % if (!xdr_array(xdrs, (char **)&objp->uia_arr, (u_int *)&objp->uia_cnt, + % MAXUSERS, sizeof(struct utmpidle *), diff --git a/SOURCES/glibc-rh1505492-prototypes-2.patch b/SOURCES/glibc-rh1505492-prototypes-2.patch new file mode 100644 index 0000000..c60fc32 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-2.patch @@ -0,0 +1,20 @@ +commit 5cc45e102bdc19dec494e4ae8f0eb832f11af3e5 +Author: Joseph Myers +Date: Fri Mar 8 16:47:43 2013 +0000 + + Use ISO C prototype for __default_morecore. + +diff --git a/malloc/morecore.c b/malloc/morecore.c +index 1e7b77749ff1700d..de013bda22ff6fb9 100644 +--- a/malloc/morecore.c ++++ b/malloc/morecore.c +@@ -42,8 +42,7 @@ libc_hidden_proto (__sbrk) + and return the start of data space, or NULL on errors. + If INCREMENT is negative, shrink data space. */ + __malloc_ptr_t +-__default_morecore (increment) +- ptrdiff_t increment; ++__default_morecore (ptrdiff_t increment) + { + __malloc_ptr_t result = (__malloc_ptr_t) __sbrk (increment); + if (result == (__malloc_ptr_t) -1) diff --git a/SOURCES/glibc-rh1505492-prototypes-3.patch b/SOURCES/glibc-rh1505492-prototypes-3.patch new file mode 100644 index 0000000..d6b7848 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-3.patch @@ -0,0 +1,1222 @@ +commit 60d2f8f3c7f1cdacafcbd60dc004e32cc90035ca +Author: Joseph Myers +Date: Sat Jun 8 00:22:23 2013 +0000 + + Use (void) in no-arguments function definitions. + +Conflicts: + resolv/compat-gethnamaddr.c + +Changes were already port of the stub resolver rebase in +glibc-rh677316-resolv.patch. + +diff --git a/catgets/gencat.c b/catgets/gencat.c +index 5078e3c8282cfa00..28dd8a5b05e5b0a0 100644 +--- a/catgets/gencat.c ++++ b/catgets/gencat.c +@@ -260,7 +260,7 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\ + /* The address of this function will be assigned to the hook in the + error functions. */ + static void +-error_print () ++error_print (void) + { + /* We don't want the program name to be printed in messages. Emacs' + compile.el does not like this. */ +diff --git a/crypt/crypt_util.c b/crypt/crypt_util.c +index e08dd8fa994a3ab1..1ae7711915822715 100644 +--- a/crypt/crypt_util.c ++++ b/crypt/crypt_util.c +@@ -554,7 +554,7 @@ small_tables_done: + } + + void +-__init_des() ++__init_des (void) + { + __init_des_r(&_ufc_foobar); + } +diff --git a/crypt/speeds.c b/crypt/speeds.c +index 7362391892aabe55..3afefb954216d8f2 100644 +--- a/crypt/speeds.c ++++ b/crypt/speeds.c +@@ -42,7 +42,7 @@ struct tms tstart, tfinish; + char *crypt(), *fcrypt(); + + void +-Stop () ++Stop (void) + { + double elapsed; + #ifdef NO_ITIMER +@@ -76,7 +76,7 @@ static void clearmem(start, cnt) + *start++ = '\0'; + } + +-main () ++main (void) + { + char *s; + #ifdef NO_ITIMER +diff --git a/hurd/hurdmalloc.c b/hurd/hurdmalloc.c +index 886b40208da56866..da611653b602975f 100644 +--- a/hurd/hurdmalloc.c ++++ b/hurd/hurdmalloc.c +@@ -380,7 +380,7 @@ realloc(old_base, new_size) + + #ifdef DEBUG + void +-print_malloc_free_list() ++print_malloc_free_list (void) + { + int i, size; + free_list_t fl; +diff --git a/inet/ruserpass.c b/inet/ruserpass.c +index 71a734dfdac934b7..f64ca3f1c12d478e 100644 +--- a/inet/ruserpass.c ++++ b/inet/ruserpass.c +@@ -289,7 +289,7 @@ bad: + libc_hidden_def (ruserpass) + + static int +-token() ++token (void) + { + char *cp; + int c; +diff --git a/intl/finddomain.c b/intl/finddomain.c +index fec3156985051234..4fff9dad5de54dad 100644 +--- a/intl/finddomain.c ++++ b/intl/finddomain.c +@@ -171,7 +171,7 @@ out: + /* This is called from iconv/gconv_db.c's free_mem, as locales must + be freed before freeing gconv steps arrays. */ + void __libc_freeres_fn_section +-_nl_finddomain_subfreeres () ++_nl_finddomain_subfreeres (void) + { + struct loaded_l10nfile *runp = _nl_loaded_domains; + +diff --git a/intl/localealias.c b/intl/localealias.c +index 1341228716241ffe..2f067dfe2cd7a130 100644 +--- a/intl/localealias.c ++++ b/intl/localealias.c +@@ -362,7 +362,7 @@ out: + + + static int +-extend_alias_table () ++extend_alias_table (void) + { + size_t new_size; + struct alias_map *new_map; +diff --git a/intl/plural-exp.c b/intl/plural-exp.c +index 2fa27bd7f3afca65..e157bba4adfca8df 100644 +--- a/intl/plural-exp.c ++++ b/intl/plural-exp.c +@@ -72,7 +72,7 @@ static struct expression plone; + struct expression GERMANIC_PLURAL; + + static void +-init_germanic_plural () ++init_germanic_plural (void) + { + if (plone.val.num == 0) + { +diff --git a/libio/fcloseall.c b/libio/fcloseall.c +index 0864690a85504969..46184f6c4a7ad741 100644 +--- a/libio/fcloseall.c ++++ b/libio/fcloseall.c +@@ -28,7 +28,7 @@ + #include + + int +-__fcloseall () ++__fcloseall (void) + { + /* Close all streams. */ + return _IO_cleanup (); +diff --git a/libio/genops.c b/libio/genops.c +index 02d7dfd02ac3ea7c..4e0a40f90c8223dd 100644 +--- a/libio/genops.c ++++ b/libio/genops.c +@@ -876,7 +876,7 @@ _IO_flush_all_lockp (int do_lock) + + + int +-_IO_flush_all () ++_IO_flush_all (void) + { + /* We want locking. */ + return _IO_flush_all_lockp (1); +@@ -884,7 +884,7 @@ _IO_flush_all () + libc_hidden_def (_IO_flush_all) + + void +-_IO_flush_all_linebuffered () ++_IO_flush_all_linebuffered (void) + { + struct _IO_FILE *fp; + int last_stamp; +@@ -1009,7 +1009,7 @@ libc_freeres_fn (buffer_free) + + + int +-_IO_cleanup () ++_IO_cleanup (void) + { + /* We do *not* want locking. Some threads might use streams but + that is their problem, we flush them underneath them. */ +@@ -1269,14 +1269,14 @@ _IO_default_imbue (fp, locale) + } + + _IO_ITER +-_IO_iter_begin() ++_IO_iter_begin (void) + { + return (_IO_ITER) _IO_list_all; + } + libc_hidden_def (_IO_iter_begin) + + _IO_ITER +-_IO_iter_end() ++_IO_iter_end (void) + { + return NULL; + } +@@ -1299,7 +1299,7 @@ _IO_iter_file(iter) + libc_hidden_def (_IO_iter_file) + + void +-_IO_list_lock() ++_IO_list_lock (void) + { + #ifdef _IO_MTSAFE_IO + _IO_lock_lock (list_all_lock); +@@ -1308,7 +1308,7 @@ _IO_list_lock() + libc_hidden_def (_IO_list_lock) + + void +-_IO_list_unlock() ++_IO_list_unlock (void) + { + #ifdef _IO_MTSAFE_IO + _IO_lock_unlock (list_all_lock); +@@ -1317,7 +1317,7 @@ _IO_list_unlock() + libc_hidden_def (_IO_list_unlock) + + void +-_IO_list_resetlock() ++_IO_list_resetlock (void) + { + #ifdef _IO_MTSAFE_IO + _IO_lock_init (list_all_lock); +diff --git a/libio/getchar.c b/libio/getchar.c +index 3e35a0e524ef5236..d34398e69b9d42c2 100644 +--- a/libio/getchar.c ++++ b/libio/getchar.c +@@ -30,7 +30,7 @@ + #undef getchar + + int +-getchar () ++getchar (void) + { + int result; + _IO_acquire_lock (_IO_stdin); +diff --git a/libio/getchar_u.c b/libio/getchar_u.c +index de0d1498737bb36a..4821163a486c8474 100644 +--- a/libio/getchar_u.c ++++ b/libio/getchar_u.c +@@ -30,7 +30,7 @@ + #undef getchar_unlocked + + int +-getchar_unlocked () ++getchar_unlocked (void) + { + return _IO_getc_unlocked (_IO_stdin); + } +diff --git a/libio/getwchar.c b/libio/getwchar.c +index 8a9cb5cde21b5dfa..8344998f6fd2de65 100644 +--- a/libio/getwchar.c ++++ b/libio/getwchar.c +@@ -30,7 +30,7 @@ + #undef getwchar + + wint_t +-getwchar () ++getwchar (void) + { + wint_t result; + _IO_acquire_lock (_IO_stdin); +diff --git a/libio/getwchar_u.c b/libio/getwchar_u.c +index 4ac335b4fce84b7a..a395fd6e78309944 100644 +--- a/libio/getwchar_u.c ++++ b/libio/getwchar_u.c +@@ -30,7 +30,7 @@ + #undef getwchar_unlocked + + wint_t +-getwchar_unlocked () ++getwchar_unlocked (void) + { + return _IO_getwc_unlocked (_IO_stdin); + } +diff --git a/libio/oldstdfiles.c b/libio/oldstdfiles.c +index 5a67d73e27cc7e3b..870cb0536c52024f 100644 +--- a/libio/oldstdfiles.c ++++ b/libio/oldstdfiles.c +@@ -73,7 +73,7 @@ static void _IO_check_libio (void) __THROW __attribute__ ((constructor)); + _IO_list_all accordingly. */ + + static void +-_IO_check_libio () ++_IO_check_libio (void) + { + if (&_IO_stdin_used == NULL) + { +diff --git a/login/getpt.c b/login/getpt.c +index 4b9b037b986de2cc..89293d8cdf8d9523 100644 +--- a/login/getpt.c ++++ b/login/getpt.c +@@ -22,7 +22,7 @@ + /* Open the master side of a pseudoterminal and return its file + descriptor, or -1 on error. */ + int +-__getpt () ++__getpt (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/login/tst-utmp.c b/login/tst-utmp.c +index cce79b4980ed4841..7cc39cb2b7ff2dba 100644 +--- a/login/tst-utmp.c ++++ b/login/tst-utmp.c +@@ -395,7 +395,7 @@ do_test (int argc, char *argv[]) + + /* No field 'ut_type' in struct utmp. */ + int +-main () ++main (void) + { + return 0; + } +diff --git a/malloc/hooks.c b/malloc/hooks.c +index a63668fdd07e89ef..e7bfb7e002b4fcdc 100644 +--- a/malloc/hooks.c ++++ b/malloc/hooks.c +@@ -69,7 +69,7 @@ static int disallow_malloc_check; + + /* Activate a standard set of debugging hooks. */ + void +-__malloc_check_init() ++__malloc_check_init (void) + { + if (disallow_malloc_check) { + disallow_malloc_check = 0; +diff --git a/malloc/malloc.c b/malloc/malloc.c +index cad40661cd0a6b8a..fc86b344ee3b3a7c 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -4708,7 +4708,7 @@ struct mallinfo __libc_mallinfo() + */ + + void +-__malloc_stats() ++__malloc_stats (void) + { + int i; + mstate ar_ptr; +diff --git a/malloc/mtrace.c b/malloc/mtrace.c +index 0a26ccc65d81bd2a..34ec2a85b219882c 100644 +--- a/malloc/mtrace.c ++++ b/malloc/mtrace.c +@@ -72,7 +72,7 @@ static __ptr_t (*tr_old_memalign_hook) (size_t __alignment, size_t __size, + extern void tr_break (void) __THROW; + libc_hidden_proto (tr_break) + void +-tr_break () ++tr_break (void) + { + } + libc_hidden_def (tr_break) +@@ -293,7 +293,7 @@ release_libc_mem (void) + don't forget to set a breakpoint on tr_break! */ + + void +-mtrace () ++mtrace (void) + { + #ifdef _LIBC + static int added_atexit_handler; +@@ -358,7 +358,7 @@ mtrace () + } + + void +-muntrace () ++muntrace (void) + { + if (mallstream == NULL) + return; +diff --git a/misc/fstab.c b/misc/fstab.c +index d53845a9087771ec..86680466938ecc04 100644 +--- a/misc/fstab.c ++++ b/misc/fstab.c +@@ -96,7 +96,7 @@ getfsfile (name) + + + void +-endfsent () ++endfsent (void) + { + struct fstab_state *state; + +diff --git a/misc/getclktck.c b/misc/getclktck.c +index fe8e1338b11f19b9..5f9918c0121c02e5 100644 +--- a/misc/getclktck.c ++++ b/misc/getclktck.c +@@ -19,7 +19,7 @@ + + /* Return frequency of times(). */ + int +-__getclktck () ++__getclktck (void) + { + #ifdef CLK_TCK + return CLK_TCK; +diff --git a/misc/getdtsz.c b/misc/getdtsz.c +index 7c6f7e633998daee..5c08127f82ee10dd 100644 +--- a/misc/getdtsz.c ++++ b/misc/getdtsz.c +@@ -21,7 +21,7 @@ + /* Return the maximum number of file descriptors + the current process could possibly have. */ + int +-__getdtablesize () ++__getdtablesize (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/misc/gethostid.c b/misc/gethostid.c +index 876c83c691994d92..09e2e6bf76a55b41 100644 +--- a/misc/gethostid.c ++++ b/misc/gethostid.c +@@ -20,7 +20,7 @@ + + /* Return the current machine's Internet number. */ + long int +-gethostid () ++gethostid (void) + { + __set_errno (ENOSYS); + return -1L; +diff --git a/misc/getpagesize.c b/misc/getpagesize.c +index 6d3821aef1be0a45..1374a208511a47e3 100644 +--- a/misc/getpagesize.c ++++ b/misc/getpagesize.c +@@ -20,7 +20,7 @@ + + /* Return the system page size. */ + int +-__getpagesize () ++__getpagesize (void) + { + __set_errno (ENOSYS); + return 0; +diff --git a/misc/getsysstats.c b/misc/getsysstats.c +index c5ce2fdb9fec724a..9ad2ad22c32c7f10 100644 +--- a/misc/getsysstats.c ++++ b/misc/getsysstats.c +@@ -21,7 +21,7 @@ + #include + + int +-__get_nprocs_conf () ++__get_nprocs_conf (void) + { + /* We don't know how to determine the number. Simply return always 1. */ + return 1; +@@ -33,7 +33,7 @@ link_warning (get_nprocs_conf, "warning: get_nprocs_conf will always return 1") + + + int +-__get_nprocs () ++__get_nprocs (void) + { + /* We don't know how to determine the number. Simply return always 1. */ + return 1; +@@ -44,7 +44,7 @@ link_warning (get_nprocs, "warning: get_nprocs will always return 1") + + + long int +-__get_phys_pages () ++__get_phys_pages (void) + { + /* We have no general way to determine this value. */ + __set_errno (ENOSYS); +@@ -56,7 +56,7 @@ stub_warning (get_phys_pages) + + + long int +-__get_avphys_pages () ++__get_avphys_pages (void) + { + /* We have no general way to determine this value. */ + __set_errno (ENOSYS); +diff --git a/misc/getttyent.c b/misc/getttyent.c +index 18944e2b99150aea..864f65f523de2522 100644 +--- a/misc/getttyent.c ++++ b/misc/getttyent.c +@@ -61,7 +61,7 @@ static char *skip (char *) __THROW internal_function; + static char *value (char *) __THROW internal_function; + + struct ttyent * +-getttyent() ++getttyent (void) + { + static struct ttyent tty; + int c; +@@ -184,7 +184,7 @@ value(p) + } + + int +-setttyent() ++setttyent (void) + { + + if (tf) { +@@ -200,7 +200,7 @@ setttyent() + libc_hidden_def (setttyent) + + int +-endttyent() ++endttyent (void) + { + int rval; + +diff --git a/misc/getusershell.c b/misc/getusershell.c +index 677377c3f7fb9081..fc2c43b771439c08 100644 +--- a/misc/getusershell.c ++++ b/misc/getusershell.c +@@ -62,7 +62,7 @@ static char **initshells (void) __THROW; + * Get a list of shells from _PATH_SHELLS, if it exists. + */ + char * +-getusershell() ++getusershell (void) + { + char *ret; + +@@ -75,7 +75,7 @@ getusershell() + } + + void +-endusershell() ++endusershell (void) + { + + free(shells); +@@ -86,14 +86,14 @@ endusershell() + } + + void +-setusershell() ++setusershell (void) + { + + curshell = initshells(); + } + + static char ** +-initshells() ++initshells (void) + { + char **sp, *cp; + FILE *fp; +diff --git a/misc/hsearch.c b/misc/hsearch.c +index 928b192a5df9197c..26d12a96939f64d6 100644 +--- a/misc/hsearch.c ++++ b/misc/hsearch.c +@@ -45,7 +45,7 @@ hcreate (nel) + + + void +-__hdestroy () ++__hdestroy (void) + { + hdestroy_r (&htab); + } +diff --git a/misc/sync.c b/misc/sync.c +index 01a1696ce2e1d5e5..d71d4334368d3e2e 100644 +--- a/misc/sync.c ++++ b/misc/sync.c +@@ -20,7 +20,7 @@ + + /* Make all changes done to all files actually appear on disk. */ + void +-sync () ++sync (void) + { + __set_errno (ENOSYS); + } +diff --git a/misc/syslog.c b/misc/syslog.c +index 4976e89b6ea56364..70daa9e1f3b7b745 100644 +--- a/misc/syslog.c ++++ b/misc/syslog.c +@@ -425,7 +425,7 @@ sigpipe_handler (int signo) + #endif + + static void +-closelog_internal() ++closelog_internal (void) + { + if (!connected) + return; +@@ -436,7 +436,7 @@ closelog_internal() + } + + void +-closelog () ++closelog (void) + { + /* Protect against multiple users and cancellation. */ + __libc_cleanup_push (cancel_handler, NULL); +diff --git a/misc/ttyslot.c b/misc/ttyslot.c +index 75ca6a2d42d2c79d..9c69589daee2b164 100644 +--- a/misc/ttyslot.c ++++ b/misc/ttyslot.c +@@ -38,7 +38,7 @@ static char sccsid[] = "@(#)ttyslot.c 8.1 (Berkeley) 6/4/93"; + #include + + int +-ttyslot() ++ttyslot (void) + { + struct ttyent *ttyp; + int slot; +diff --git a/misc/vhangup.c b/misc/vhangup.c +index 0d8ce287c999e08f..1f86262f9c9fcd56 100644 +--- a/misc/vhangup.c ++++ b/misc/vhangup.c +@@ -22,7 +22,7 @@ + with the control terminal, and then send a SIGHUP signal to the process + group of the control terminal. */ + int +-vhangup () ++vhangup (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c b/ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c +index ade9123a3a79d621..007cc09646352fdb 100644 +--- a/ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c ++++ b/ports/sysdeps/unix/sysv/linux/ia64/getpagesize.c +@@ -29,7 +29,7 @@ + as mmap and friends. --davidm 99/11/30 */ + + int +-__getpagesize () ++__getpagesize (void) + { + assert (GLRO(dl_pagesize) != 0); + return GLRO(dl_pagesize); +diff --git a/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c b/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c +index 9e6000a196e3fe70..c50bc00a21a59020 100644 +--- a/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c ++++ b/ports/sysdeps/unix/sysv/linux/m68k/getpagesize.c +@@ -26,7 +26,7 @@ + + /* Return the system page size. */ + int +-__getpagesize () ++__getpagesize (void) + { + #ifdef __NR_getpagesize + int result; +diff --git a/posix/fork.c b/posix/fork.c +index 08c69b69bd9cbbe3..107b76e293c155ad 100644 +--- a/posix/fork.c ++++ b/posix/fork.c +@@ -23,7 +23,7 @@ + Return -1 for errors, 0 to the new process, + and the process ID of the new process to the old process. */ + int +-__fork () ++__fork (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/getegid.c b/posix/getegid.c +index 6692bc0837ec0066..1cffdc4e10b8e749 100644 +--- a/posix/getegid.c ++++ b/posix/getegid.c +@@ -20,7 +20,7 @@ + + /* Get the effective group ID of the calling process. */ + __gid_t +-__getegid () ++__getegid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/geteuid.c b/posix/geteuid.c +index eb59db35d88d522a..9e2087babc4dc02c 100644 +--- a/posix/geteuid.c ++++ b/posix/geteuid.c +@@ -21,7 +21,7 @@ + + /* Get the effective user ID of the calling process. */ + __uid_t +-__geteuid () ++__geteuid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/getgid.c b/posix/getgid.c +index 54c7d18705c971a5..464f03f9b2727d0d 100644 +--- a/posix/getgid.c ++++ b/posix/getgid.c +@@ -21,7 +21,7 @@ + + /* Get the real group ID of the calling process. */ + gid_t +-__getgid () ++__getgid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/getpid.c b/posix/getpid.c +index 3c3bb6a2afe4d5c5..5b5f11b0c091fe0a 100644 +--- a/posix/getpid.c ++++ b/posix/getpid.c +@@ -20,7 +20,7 @@ + + /* Get the process ID of the calling process. */ + int +-__getpid () ++__getpid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/getppid.c b/posix/getppid.c +index 92c8b9b6dfca4592..7e3baacce8b98140 100644 +--- a/posix/getppid.c ++++ b/posix/getppid.c +@@ -21,7 +21,7 @@ + + /* Get the parent process ID of the calling process. */ + int +-__getppid () ++__getppid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/getuid.c b/posix/getuid.c +index 2afbe583fd76f520..c16a72a4ae5182cc 100644 +--- a/posix/getuid.c ++++ b/posix/getuid.c +@@ -21,7 +21,7 @@ + + /* Get the real user ID of the calling process. */ + uid_t +-__getuid () ++__getuid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/pause.c b/posix/pause.c +index 095051002bb62799..6440f68562dc07b0 100644 +--- a/posix/pause.c ++++ b/posix/pause.c +@@ -23,7 +23,7 @@ + This is supposed to always return -1 and set errno to EINTR, + but rules were meant to be broken. */ + int +-pause () ++pause (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/setpgrp.c b/posix/setpgrp.c +index 3f89a3218e6089de..31ff59518a966340 100644 +--- a/posix/setpgrp.c ++++ b/posix/setpgrp.c +@@ -18,7 +18,7 @@ + #include + + int +-setpgrp () ++setpgrp (void) + { + return __setpgid (0, 0); + } +diff --git a/posix/setsid.c b/posix/setsid.c +index a4f05254e136ba5e..5ccc2d6710dd7ac2 100644 +--- a/posix/setsid.c ++++ b/posix/setsid.c +@@ -23,7 +23,7 @@ + The process group IDs of the session and the calling process + are set to the process ID of the calling process, which is returned. */ + int +-__setsid () ++__setsid (void) + { + __set_errno (ENOSYS); + return -1; +diff --git a/posix/test-vfork.c b/posix/test-vfork.c +index c4904e36e130d928..6dfb7d47e36a65eb 100644 +--- a/posix/test-vfork.c ++++ b/posix/test-vfork.c +@@ -37,6 +37,6 @@ main (void) + } + + void +-noop () ++noop (void) + { + } +diff --git a/stdlib/drand48.c b/stdlib/drand48.c +index 9b54e4bc0db1eca1..d70e8ebaa0b611ad 100644 +--- a/stdlib/drand48.c ++++ b/stdlib/drand48.c +@@ -20,7 +20,7 @@ + + + double +-drand48 () ++drand48 (void) + { + double result; + +diff --git a/stdlib/lrand48.c b/stdlib/lrand48.c +index e38ce91dd2b46306..70db2ab852dbc09d 100644 +--- a/stdlib/lrand48.c ++++ b/stdlib/lrand48.c +@@ -20,7 +20,7 @@ + + + long int +-lrand48 () ++lrand48 (void) + { + long int result; + +diff --git a/stdlib/mrand48.c b/stdlib/mrand48.c +index 248781b767da3786..d2257bd542312ad8 100644 +--- a/stdlib/mrand48.c ++++ b/stdlib/mrand48.c +@@ -20,7 +20,7 @@ + + + long int +-mrand48 () ++mrand48 (void) + { + long int result; + +diff --git a/stdlib/rand.c b/stdlib/rand.c +index 92916e833f7fc94a..15b2a647dcaea6a4 100644 +--- a/stdlib/rand.c ++++ b/stdlib/rand.c +@@ -22,7 +22,7 @@ + + /* Return a random integer between 0 and RAND_MAX. */ + int +-rand () ++rand (void) + { + return (int) __random (); + } +diff --git a/stdlib/random.c b/stdlib/random.c +index ff6bdd2b5d5a8f76..537555c90098d426 100644 +--- a/stdlib/random.c ++++ b/stdlib/random.c +@@ -288,7 +288,7 @@ weak_alias (__setstate, setstate) + pointer if the front one has wrapped. Returns a 31-bit random number. */ + + long int +-__random () ++__random (void) + { + int32_t retval; + +diff --git a/stdlib/setenv.c b/stdlib/setenv.c +index 6185c69243464623..56b9bc67d93cbcc0 100644 +--- a/stdlib/setenv.c ++++ b/stdlib/setenv.c +@@ -349,7 +349,7 @@ unsetenv (name) + never made it. Nevertheless the POSIX.9 standard (POSIX bindings + for Fortran 77) requires this function. */ + int +-clearenv () ++clearenv (void) + { + LOCK; + +diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c +index ec85930e44730415..b46905fb06eb2a49 100644 +--- a/sunrpc/clnt_tcp.c ++++ b/sunrpc/clnt_tcp.c +@@ -356,7 +356,7 @@ clnttcp_freeres (cl, xdr_res, res_ptr) + } + + static void +-clnttcp_abort () ++clnttcp_abort (void) + { + } + +diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c +index 9b5d7ca82256290b..2ad81972561aa6b0 100644 +--- a/sunrpc/clnt_unix.c ++++ b/sunrpc/clnt_unix.c +@@ -330,7 +330,7 @@ clntunix_freeres (cl, xdr_res, res_ptr) + } + + static void +-clntunix_abort () ++clntunix_abort (void) + { + } + +diff --git a/sysdeps/mach/getpagesize.c b/sysdeps/mach/getpagesize.c +index a4c59715acdc46f9..7586ffd455ae8a6d 100644 +--- a/sysdeps/mach/getpagesize.c ++++ b/sysdeps/mach/getpagesize.c +@@ -20,7 +20,7 @@ + + /* Return the system page size. */ + int +-__getpagesize () ++__getpagesize (void) + { + return __vm_page_size; + } +diff --git a/sysdeps/mach/getsysstats.c b/sysdeps/mach/getsysstats.c +index 4820b35113aca031..8765004d9b48185d 100644 +--- a/sysdeps/mach/getsysstats.c ++++ b/sysdeps/mach/getsysstats.c +@@ -24,7 +24,7 @@ + + /* Return the number of processors configured on the system. */ + int +-__get_nprocs_conf () ++__get_nprocs_conf (void) + { + struct host_basic_info hbi; + kern_return_t err; +@@ -43,7 +43,7 @@ weak_alias (__get_nprocs_conf, get_nprocs_conf) + + /* Return the number of processors currently available on the system. */ + int +-__get_nprocs () ++__get_nprocs (void) + { + struct host_basic_info hbi; + kern_return_t err; +@@ -62,7 +62,7 @@ weak_alias (__get_nprocs, get_nprocs) + + /* Return the number of physical pages on the system. */ + long int +-__get_phys_pages () ++__get_phys_pages (void) + { + struct host_basic_info hbi; + kern_return_t err; +@@ -81,7 +81,7 @@ weak_alias (__get_phys_pages, get_phys_pages) + + /* Return the number of available physical pages */ + long int +-__get_avphys_pages () ++__get_avphys_pages (void) + { + vm_statistics_data_t vs; + kern_return_t err; +diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c +index 4eefe3af04f845c3..c3f31e2c8eb6bc2f 100644 +--- a/sysdeps/mach/hurd/dl-sysdep.c ++++ b/sysdeps/mach/hurd/dl-sysdep.c +@@ -554,7 +554,7 @@ __access (const char *file, int type) + } + + pid_t weak_function +-__getpid () ++__getpid (void) + { + pid_t pid, ppid; + int orphaned; +diff --git a/sysdeps/mach/hurd/getclktck.c b/sysdeps/mach/hurd/getclktck.c +index 5ea4781c1b40cade..d3cebc17778a3633 100644 +--- a/sysdeps/mach/hurd/getclktck.c ++++ b/sysdeps/mach/hurd/getclktck.c +@@ -21,7 +21,7 @@ + /* Return frequency of `times'. + Since Mach reports CPU times in microseconds, we always use 1 million. */ + int +-__getclktck () ++__getclktck (void) + { + return 1000000; + } +diff --git a/sysdeps/mach/hurd/getdtsz.c b/sysdeps/mach/hurd/getdtsz.c +index 9c754a79041f31ec..527a0e3130cc52a3 100644 +--- a/sysdeps/mach/hurd/getdtsz.c ++++ b/sysdeps/mach/hurd/getdtsz.c +@@ -24,7 +24,7 @@ + /* Return the maximum number of file descriptors the current process + could possibly have (until it raises the resource limit). */ + int +-__getdtablesize () ++__getdtablesize (void) + { + rlim_t limit; + +diff --git a/sysdeps/mach/hurd/getegid.c b/sysdeps/mach/hurd/getegid.c +index cb1955356bba6304..8e63d640ca917688 100644 +--- a/sysdeps/mach/hurd/getegid.c ++++ b/sysdeps/mach/hurd/getegid.c +@@ -22,7 +22,7 @@ + + /* Get the effective group ID of the calling process. */ + gid_t +-__getegid () ++__getegid (void) + { + error_t err; + gid_t egid; +diff --git a/sysdeps/mach/hurd/geteuid.c b/sysdeps/mach/hurd/geteuid.c +index 4bcf6f56acedc2aa..5b5228958d9733a0 100644 +--- a/sysdeps/mach/hurd/geteuid.c ++++ b/sysdeps/mach/hurd/geteuid.c +@@ -22,7 +22,7 @@ + + /* Get the effective user ID of the calling process. */ + uid_t +-__geteuid () ++__geteuid (void) + { + error_t err; + uid_t euid; +diff --git a/sysdeps/mach/hurd/getgid.c b/sysdeps/mach/hurd/getgid.c +index a479ddf41429ecf2..0c297c392d69ee6d 100644 +--- a/sysdeps/mach/hurd/getgid.c ++++ b/sysdeps/mach/hurd/getgid.c +@@ -22,7 +22,7 @@ + + /* Get the real group ID of the calling process. */ + gid_t +-__getgid () ++__getgid (void) + { + error_t err; + gid_t gid; +diff --git a/sysdeps/mach/hurd/gethostid.c b/sysdeps/mach/hurd/gethostid.c +index 0a8bbbe1b9b4ee52..4265b9574e7d97c2 100644 +--- a/sysdeps/mach/hurd/gethostid.c ++++ b/sysdeps/mach/hurd/gethostid.c +@@ -21,7 +21,7 @@ + + /* Return the current machine's Internet number. */ + long int +-gethostid () ++gethostid (void) + { + /* The hostid is just the contents of the file /etc/hostid, + kept as text of hexadecimal digits. */ +diff --git a/sysdeps/mach/hurd/getlogin.c b/sysdeps/mach/hurd/getlogin.c +index 0f94c631a927ce68..83d1bfca649b70ef 100644 +--- a/sysdeps/mach/hurd/getlogin.c ++++ b/sysdeps/mach/hurd/getlogin.c +@@ -23,7 +23,7 @@ + /* Return the login name of the user, or NULL if it can't be determined. + The returned pointer, if not NULL, is good only until the next call. */ + char * +-getlogin () ++getlogin (void) + { + static char login[1024]; /* XXX */ + error_t err; +diff --git a/sysdeps/mach/hurd/getpid.c b/sysdeps/mach/hurd/getpid.c +index 4698f3ce729f82b0..89c2dc138b90be5b 100644 +--- a/sysdeps/mach/hurd/getpid.c ++++ b/sysdeps/mach/hurd/getpid.c +@@ -21,7 +21,7 @@ + + /* Get the process ID of the calling process. */ + pid_t +-__getpid () ++__getpid (void) + { + /* Assumes atomic word fetch and store, so doesn't lock _hurd_pid_lock. */ + return _hurd_pid; +diff --git a/sysdeps/mach/hurd/getppid.c b/sysdeps/mach/hurd/getppid.c +index a775b7a73e486cdc..4a8bca8d4a155197 100644 +--- a/sysdeps/mach/hurd/getppid.c ++++ b/sysdeps/mach/hurd/getppid.c +@@ -23,7 +23,7 @@ + + /* Get the parent process ID of the calling process. */ + pid_t +-__getppid () ++__getppid (void) + { + /* Assumes atomic word fetch and store, so doesn't lock _hurd_pid_lock. */ + return _hurd_ppid; +diff --git a/sysdeps/mach/hurd/getuid.c b/sysdeps/mach/hurd/getuid.c +index b9feb903964b734e..e6d047a2bb281584 100644 +--- a/sysdeps/mach/hurd/getuid.c ++++ b/sysdeps/mach/hurd/getuid.c +@@ -22,7 +22,7 @@ + + /* Get the real user ID of the calling process. */ + uid_t +-__getuid () ++__getuid (void) + { + error_t err; + uid_t uid; +diff --git a/sysdeps/mach/hurd/sync.c b/sysdeps/mach/hurd/sync.c +index 4042cb1625b8dbfa..e97aed373c982e2c 100644 +--- a/sysdeps/mach/hurd/sync.c ++++ b/sysdeps/mach/hurd/sync.c +@@ -21,7 +21,7 @@ + + /* Make all changes done to all files actually appear on disk. */ + void +-sync () ++sync (void) + { + /* This is not actually synchronous; we don't wait. */ + error_t err = __USEPORT (CRDIR, __file_syncfs (port, 0, 1)); +diff --git a/sysdeps/posix/clock.c b/sysdeps/posix/clock.c +index f670a35a6e5b2db1..78ee5806bf53293c 100644 +--- a/sysdeps/posix/clock.c ++++ b/sysdeps/posix/clock.c +@@ -20,7 +20,7 @@ + + /* Return the time used by the program so far (user time + system time). */ + clock_t +-clock () ++clock (void) + { + struct tms buf; + +diff --git a/sysdeps/unix/bsd/setsid.c b/sysdeps/unix/bsd/setsid.c +index dbad2711ce78ceda..ac8930eefa8b46e2 100644 +--- a/sysdeps/unix/bsd/setsid.c ++++ b/sysdeps/unix/bsd/setsid.c +@@ -25,7 +25,7 @@ + The process group IDs of the session and the calling process + are set to the process ID of the calling process, which is returned. */ + int +-__setsid () ++__setsid (void) + { + pid_t pid = getpid (); + int tty; +diff --git a/sysdeps/unix/getpagesize.c b/sysdeps/unix/getpagesize.c +index bcd5dca4aa634e0f..68d18ec47cdfb815 100644 +--- a/sysdeps/unix/getpagesize.c ++++ b/sysdeps/unix/getpagesize.c +@@ -20,7 +20,7 @@ + + /* Return the system page size. */ + int +-__getpagesize () ++__getpagesize (void) + { + #ifdef EXEC_PAGESIZE + return EXEC_PAGESIZE; +diff --git a/sysdeps/unix/sysv/linux/getclktck.c b/sysdeps/unix/sysv/linux/getclktck.c +index 3866bf9aa56bb95a..a1e036ebeb0372b9 100644 +--- a/sysdeps/unix/sysv/linux/getclktck.c ++++ b/sysdeps/unix/sysv/linux/getclktck.c +@@ -25,7 +25,7 @@ + + /* Return frequency of times(). */ + int +-__getclktck () ++__getclktck (void) + { + return GLRO(dl_clktck) ?: SYSTEM_CLK_TCK; + } +diff --git a/sysdeps/unix/sysv/linux/gethostid.c b/sysdeps/unix/sysv/linux/gethostid.c +index 9441bb2f9b313c6d..c9f4b4cbcbad6bdb 100644 +--- a/sysdeps/unix/sysv/linux/gethostid.c ++++ b/sysdeps/unix/sysv/linux/gethostid.c +@@ -67,7 +67,7 @@ sethostid (id) + # include + + long int +-gethostid () ++gethostid (void) + { + char hostname[MAXHOSTNAMELEN + 1]; + size_t buflen; +diff --git a/sysdeps/unix/sysv/linux/getpagesize.c b/sysdeps/unix/sysv/linux/getpagesize.c +index a09bda8c9a527aa3..420e97235118efd0 100644 +--- a/sysdeps/unix/sysv/linux/getpagesize.c ++++ b/sysdeps/unix/sysv/linux/getpagesize.c +@@ -25,7 +25,7 @@ + + /* Return the system page size. */ + int +-__getpagesize () ++__getpagesize (void) + { + assert (GLRO(dl_pagesize) != 0); + return GLRO(dl_pagesize); +diff --git a/sysdeps/unix/sysv/linux/getsysstats.c b/sysdeps/unix/sysv/linux/getsysstats.c +index 9082b1a7ab29a9f9..7478e735c6333104 100644 +--- a/sysdeps/unix/sysv/linux/getsysstats.c ++++ b/sysdeps/unix/sysv/linux/getsysstats.c +@@ -124,7 +124,7 @@ next_line (int fd, char *const buffer, char **cp, char **re, + + + int +-__get_nprocs () ++__get_nprocs (void) + { + static int cached_result; + static time_t timestamp; +@@ -234,7 +234,7 @@ weak_alias (__get_nprocs, get_nprocs) + /* On some architectures it is possible to distinguish between configured + and active cpus. */ + int +-__get_nprocs_conf () ++__get_nprocs_conf (void) + { + /* XXX Here will come a test for the new system call. */ + +@@ -333,7 +333,7 @@ phys_pages_info (const char *format) + But not all systems have support for the /proc filesystem. If it + is not available we return -1 as an error signal. */ + long int +-__get_phys_pages () ++__get_phys_pages (void) + { + /* XXX Here will come a test for the new system call. */ + +@@ -354,7 +354,7 @@ weak_alias (__get_phys_pages, get_phys_pages) + But not all systems have support for the /proc filesystem. If it + is not available we return -1 as an error signal. */ + long int +-__get_avphys_pages () ++__get_avphys_pages (void) + { + /* XXX Here will come a test for the new system call. */ + +diff --git a/time/clock.c b/time/clock.c +index 2e10fd3e3aaa1561..918a97c4d3077fe4 100644 +--- a/time/clock.c ++++ b/time/clock.c +@@ -21,7 +21,7 @@ + + /* Return the time used by the program so far (user time + system time). */ + clock_t +-clock () ++clock (void) + { + __set_errno (ENOSYS); + return (clock_t) -1; diff --git a/SOURCES/glibc-rh1505492-prototypes-4.patch b/SOURCES/glibc-rh1505492-prototypes-4.patch new file mode 100644 index 0000000..d89789c --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-4.patch @@ -0,0 +1,127 @@ +commit c13a72b7c4864f23b9f2e96a3369e5875ed3b51b +Author: Will Newton +Date: Thu Feb 6 08:54:20 2014 +0000 + + malloc/mtrace.c: Cosmetic cleanup. + + Remove an unused #define and use ANSI prototypes. + + Generated code identical on x86_64-unknown-linux-gnu. + + ChangeLog: + + 2014-02-11 Will Newton + + * malloc/mtrace.c (attribute_hidden): Remove unused macro + definition. (tr_where, tr_freehook, tr_mallochook, + tr_reallochook, tr_memalignhook): Use ANSI protoype. + +Conflicts: + malloc/mtrace.c + +Textual conflicts due to missing backport of commit +6c8dbf00f536d78b1937b5af6f57be47fd376344 (Reformat malloc to gnu +style.). + +diff --git a/malloc/mtrace.c b/malloc/mtrace.c +index 34ec2a85b219882c..5c4deda5a55a799c 100644 +--- a/malloc/mtrace.c ++++ b/malloc/mtrace.c +@@ -41,10 +41,6 @@ + + #include + +-#ifndef attribute_hidden +-# define attribute_hidden +-#endif +- + #define TRACE_BUFFER_SIZE 512 + + static FILE *mallstream; +@@ -77,12 +73,8 @@ tr_break (void) + } + libc_hidden_def (tr_break) + +-static void tr_where (const __ptr_t, Dl_info *) __THROW internal_function; +-static void +-internal_function +-tr_where (caller, info) +- const __ptr_t caller; +- Dl_info *info; ++static void internal_function ++tr_where (const __ptr_t caller, Dl_info *info) + { + if (caller != NULL) + { +@@ -115,7 +107,6 @@ tr_where (caller, info) + } + } + +- + static Dl_info * + lock_and_info (const __ptr_t caller, Dl_info *mem) + { +@@ -129,12 +120,8 @@ lock_and_info (const __ptr_t caller, Dl_info *mem) + return res; + } + +- +-static void tr_freehook (__ptr_t, const __ptr_t) __THROW; + static void +-tr_freehook (ptr, caller) +- __ptr_t ptr; +- const __ptr_t caller; ++tr_freehook (__ptr_t ptr, const __ptr_t caller) + { + if (ptr == NULL) + return; +@@ -159,11 +146,8 @@ tr_freehook (ptr, caller) + __libc_lock_unlock (lock); + } + +-static __ptr_t tr_mallochook (size_t, const __ptr_t) __THROW; + static __ptr_t +-tr_mallochook (size, caller) +- size_t size; +- const __ptr_t caller; ++tr_mallochook (size_t size, const __ptr_t caller) + { + __ptr_t hdr; + +@@ -189,13 +173,8 @@ tr_mallochook (size, caller) + return hdr; + } + +-static __ptr_t tr_reallochook (__ptr_t, size_t, const __ptr_t) +- __THROW; + static __ptr_t +-tr_reallochook (ptr, size, caller) +- __ptr_t ptr; +- size_t size; +- const __ptr_t caller; ++tr_reallochook (__ptr_t ptr, size_t size, const __ptr_t caller) + { + __ptr_t hdr; + +@@ -237,12 +216,8 @@ tr_reallochook (ptr, size, caller) + return hdr; + } + +-static __ptr_t tr_memalignhook (size_t, size_t, +- const __ptr_t) __THROW; + static __ptr_t +-tr_memalignhook (alignment, size, caller) +- size_t alignment, size; +- const __ptr_t caller; ++tr_memalignhook (size_t alignment, size_t size, const __ptr_t caller) + { + __ptr_t hdr; + +@@ -271,7 +246,6 @@ tr_memalignhook (alignment, size, caller) + } + + +- + #ifdef _LIBC + + /* This function gets called to make sure all memory the library diff --git a/SOURCES/glibc-rh1505492-prototypes-5.patch b/SOURCES/glibc-rh1505492-prototypes-5.patch new file mode 100644 index 0000000..70d8505 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-5.patch @@ -0,0 +1,192 @@ +commit 8667f90ec51aa88146dce815a9105daf23d9bd07 +Author: Will Newton +Date: Mon Mar 31 13:47:56 2014 +0100 + + string: Cosmetic cleanup of string functions + + Clean up string functions that do not have a version in gnulib on + the assumption that glibc is the canonical upstream copy of this + code. basename has a copy in gnulib but it is largely written to + handle Windows paths so merging it is not really viable. The changes + mostly consist of switching to ANSI function prototypes and removing + unused includes. + + As many of these functions do not get built in a typical build due + to architecture optimized versions being used instead I built these + by hand to verify there were no build warnings and the code was + identical. + + 2014-04-07 Will Newton + + * string/basename.c [HAVE_CONFIG_H]: Remove #ifdef and + and contents. [!_LIBC] Remove #ifndef and contents. + (basename): Use ANSI prototype. [_LIBC] Remove #idef. + * string/memccpy.c (__memccpy): Use ANSI prototype. + * string/memfrob.c (memfrob): Likewise. + * string/strcoll.c (STRCOLL): Likewise. + * string/strlen.c (strlen): Likewise. + * string/strtok.c (STRTOK): Likewise. + * string/strcat.c: Remove unused #include of memcopy.h. + (strcat): Use ANSI prototype. + * string/strchr.c: Remove unused #include of memcopy.h. + (strchr): Use ANSI prototype. + * string/strcmp.c: Remove unused #include of memcopy.h. + (strcmp): Use ANSI prototype. + * string/strcpy.c: Remove unused #include of memcopy.h. + (strcpy): Use ANSI prototype. + +Conflicts: + string/strcat.c + string/strchr.c + string/strcmp.c + string/strlen.c + +Textual conflicts due to previous backports in glibc-rh1268008-*.patch. + +diff --git a/string/basename.c b/string/basename.c +index c42b81c70fc761be..37fcebc56685e596 100644 +--- a/string/basename.c ++++ b/string/basename.c +@@ -16,26 +16,12 @@ + License along with the GNU C Library; if not, see + . */ + +-#ifdef HAVE_CONFIG_H +-# include +-#endif +- + #include + +-#ifndef _LIBC +-/* We cannot generally use the name `basename' since XPG defines an unusable +- variant of the function but we cannot use it. */ +-# define basename gnu_basename +-#endif +- +- + char * +-basename (filename) +- const char *filename; ++basename (const char *filename) + { + char *p = strrchr (filename, '/'); + return p ? p + 1 : (char *) filename; + } +-#ifdef _LIBC + libc_hidden_def (basename) +-#endif +diff --git a/string/memccpy.c b/string/memccpy.c +index 64c3c0196845f102..b2e4e399b75b5d84 100644 +--- a/string/memccpy.c ++++ b/string/memccpy.c +@@ -28,11 +28,7 @@ + Return the position in DEST one byte past where C was copied, or + NULL if C was not found in the first N bytes of SRC. */ + void * +-__memccpy (dest, src, c, n) +- void *dest; +- const void *src; +- int c; +- size_t n; ++__memccpy (void *dest, const void *src, int c, size_t n) + { + const char *s = src; + char *d = dest; +diff --git a/string/memfrob.c b/string/memfrob.c +index 6ef996ce3f70b642..320fae7e850dd05c 100644 +--- a/string/memfrob.c ++++ b/string/memfrob.c +@@ -18,9 +18,7 @@ + #include + + void * +-memfrob (s, n) +- void *s; +- size_t n; ++memfrob (void *s, size_t n) + { + char *p = (char *) s; + +diff --git a/string/strcat.c b/string/strcat.c +index 017bb41ebb490fbc..1ed18b5015e00a72 100644 +--- a/string/strcat.c ++++ b/string/strcat.c +@@ -16,7 +16,6 @@ + . */ + + #include +-#include + + #undef strcat + +diff --git a/string/strchr.c b/string/strchr.c +index 69a9cd9b1bdd7368..9ca5bcd3496a5ee9 100644 +--- a/string/strchr.c ++++ b/string/strchr.c +@@ -22,7 +22,6 @@ + . */ + + #include +-#include + #include + + #undef strchr +diff --git a/string/strcmp.c b/string/strcmp.c +index 47fd2827ad9d64cf..cc96a99f7bb6ebcd 100644 +--- a/string/strcmp.c ++++ b/string/strcmp.c +@@ -16,7 +16,6 @@ + . */ + + #include +-#include + + #undef strcmp + +@@ -28,9 +27,7 @@ + greater than zero if S1 is lexicographically less than, + equal to or greater than S2. */ + int +-STRCMP (p1, p2) +- const char *p1; +- const char *p2; ++STRCMP (const char *p1, const char *p2) + { + const unsigned char *s1 = (const unsigned char *) p1; + const unsigned char *s2 = (const unsigned char *) p2; +diff --git a/string/strcoll.c b/string/strcoll.c +index 02cb61e8e4f45d81..80a62f37d8640325 100644 +--- a/string/strcoll.c ++++ b/string/strcoll.c +@@ -29,9 +29,7 @@ + + + int +-STRCOLL (s1, s2) +- const STRING_TYPE *s1; +- const STRING_TYPE *s2; ++STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2) + { + return STRCOLL_L (s1, s2, _NL_CURRENT_LOCALE); + } +diff --git a/string/strcpy.c b/string/strcpy.c +index 22467bb88dc8cef8..f726d6bd8993271c 100644 +--- a/string/strcpy.c ++++ b/string/strcpy.c +@@ -17,15 +17,12 @@ + + #include + #include +-#include + + #undef strcpy + + /* Copy SRC to DEST. */ + char * +-strcpy (dest, src) +- char *dest; +- const char *src; ++strcpy (char *dest, const char *src) + { + char c; + char *s = (char *) src; diff --git a/SOURCES/glibc-rh1505492-prototypes-6.patch b/SOURCES/glibc-rh1505492-prototypes-6.patch new file mode 100644 index 0000000..2d62390 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-6.patch @@ -0,0 +1,81 @@ +commit c079afb7724ce4b9ff2d6b1ca4d7e3cdebcbcd1f +Author: Roland McGrath +Date: Fri Sep 12 14:58:55 2014 -0700 + + Don't use a nested function in rpmatch. + +diff --git a/stdlib/rpmatch.c b/stdlib/rpmatch.c +index 31285879ee7e6ff6..8c6290551bae1bcf 100644 +--- a/stdlib/rpmatch.c ++++ b/stdlib/rpmatch.c +@@ -22,42 +22,40 @@ + #include + + +-int +-rpmatch (response) +- const char *response; ++/* Match against one of the response patterns, compiling the pattern ++ first if necessary. */ ++static int ++try (const char *response, ++ const int tag, const int match, const int nomatch, ++ const char **lastp, regex_t *re) + { +- /* Match against one of the response patterns, compiling the pattern +- first if necessary. */ +- auto int try (const int tag, const int match, const int nomatch, +- const char **lastp, regex_t *re); +- +- int try (const int tag, const int match, const int nomatch, +- const char **lastp, regex_t *re) ++ const char *pattern = nl_langinfo (tag); ++ if (pattern != *lastp) + { +- const char *pattern = nl_langinfo (tag); +- if (pattern != *lastp) +- { +- /* The pattern has changed. */ +- if (*lastp) +- { +- /* Free the old compiled pattern. */ +- __regfree (re); +- *lastp = NULL; +- } +- /* Compile the pattern and cache it for future runs. */ +- if (__regcomp (re, pattern, REG_EXTENDED) != 0) +- return -1; +- *lastp = pattern; +- } +- +- /* Try the pattern. */ +- return __regexec (re, response, 0, NULL, 0) == 0 ? match : nomatch; ++ /* The pattern has changed. */ ++ if (*lastp != NULL) ++ { ++ /* Free the old compiled pattern. */ ++ __regfree (re); ++ *lastp = NULL; ++ } ++ /* Compile the pattern and cache it for future runs. */ ++ if (__regcomp (re, pattern, REG_EXTENDED) != 0) ++ return -1; ++ *lastp = pattern; + } + ++ /* Try the pattern. */ ++ return __regexec (re, response, 0, NULL, 0) == 0 ? match : nomatch; ++} ++ ++int ++rpmatch (const char *response) ++{ + /* We cache the response patterns and compiled regexps here. */ + static const char *yesexpr, *noexpr; + static regex_t yesre, nore; + +- return (try (YESEXPR, 1, 0, &yesexpr, &yesre) ?: +- try (NOEXPR, 0, -1, &noexpr, &nore)); ++ return (try (response, YESEXPR, 1, 0, &yesexpr, &yesre) ?: ++ try (response, NOEXPR, 0, -1, &noexpr, &nore)); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-7.patch b/SOURCES/glibc-rh1505492-prototypes-7.patch new file mode 100644 index 0000000..3a4665e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-7.patch @@ -0,0 +1,34 @@ +commit 70996a373dd38296254029423ae6d87c02e7184a +Author: Roland McGrath +Date: Fri Oct 24 12:37:36 2014 -0700 + + Prototypify htonl and htons definitions. + +diff --git a/inet/htonl.c b/inet/htonl.c +index 1d2d25f0498ba468..40145e55e0e7931f 100644 +--- a/inet/htonl.c ++++ b/inet/htonl.c +@@ -21,8 +21,7 @@ + #undef ntohl + + uint32_t +-htonl (x) +- uint32_t x; ++htonl (uint32_t x) + { + #if BYTE_ORDER == BIG_ENDIAN + return x; +diff --git a/inet/htons.c b/inet/htons.c +index 92cb4ea56786a91c..9651ebbd3a83fdbb 100644 +--- a/inet/htons.c ++++ b/inet/htons.c +@@ -21,8 +21,7 @@ + #undef ntohs + + uint16_t +-htons (x) +- uint16_t x; ++htons (uint16_t x) + { + #if BYTE_ORDER == BIG_ENDIAN + return x; diff --git a/SOURCES/glibc-rh1505492-prototypes-8.patch b/SOURCES/glibc-rh1505492-prototypes-8.patch new file mode 100644 index 0000000..c6bec53 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-8.patch @@ -0,0 +1,35 @@ +commit bf438382bd8ffcc614b01e9a273a577b3ed54f9f +Author: Joseph Myers +Date: Thu Nov 13 21:37:53 2014 +0000 + + Use prototype definition for __strtol. + + This patch fixes those warnings by using a prototype definition for + __strtol. + + Tested for x86_64 that stripped installed shared libraries are + unchanged by this patch. + + * stdlib/strtol.c (__strtol): Use prototype definition. + +Conflicts: + stdlib/strtol.c + +Adjusted for missing backport of the fix for swbz#17594. + +diff --git a/stdlib/strtol.c b/stdlib/strtol.c +index 44e2af472ddc4144..67d758c57973b5d5 100644 +--- a/stdlib/strtol.c ++++ b/stdlib/strtol.c +@@ -101,10 +101,7 @@ libc_hidden_def (INTERNAL (strtol)) + + + INT +-strtol (nptr, endptr, base) +- const STRING_TYPE *nptr; +- STRING_TYPE **endptr; +- int base; ++strtol (const STRING_TYPE *nptr, STRING_TYPE **endptr, int base) + { + return INTERNAL (__strtol_l) (nptr, endptr, base, 0, _NL_CURRENT_LOCALE); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-9.patch b/SOURCES/glibc-rh1505492-prototypes-9.patch new file mode 100644 index 0000000..f8d1375 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-9.patch @@ -0,0 +1,420 @@ +commit 24b9788285effddba3d52f174d483583cf820d19 +Author: Siddhesh Poyarekar +Date: Thu Dec 4 08:45:55 2014 +0530 + + Fix up function definition style + + Don't use K&R style for function definitions. + +Conflicts: + libio/fileops.c + +Due to vtable hardening in glibc-rh1398413.patch. + +diff --git a/libio/fileops.c b/libio/fileops.c +index ae56437168efc524..29aec8265a0317f6 100644 +--- a/libio/fileops.c ++++ b/libio/fileops.c +@@ -139,8 +139,7 @@ extern struct __gconv_trans_data __libio_translit attribute_hidden; + + + void +-_IO_new_file_init_internal (fp) +- struct _IO_FILE_plus *fp; ++_IO_new_file_init_internal (struct _IO_FILE_plus *fp) + { + /* POSIX.1 allows another file handle to be used to change the position + of our file descriptor. Hence we actually don't know the actual +@@ -162,8 +161,7 @@ _IO_new_file_init (struct _IO_FILE_plus *fp) + } + + int +-_IO_new_file_close_it (fp) +- _IO_FILE *fp; ++_IO_new_file_close_it (_IO_FILE *fp) + { + int write_status; + if (!_IO_file_is_open (fp)) +@@ -205,9 +203,7 @@ _IO_new_file_close_it (fp) + libc_hidden_ver (_IO_new_file_close_it, _IO_file_close_it) + + void +-_IO_new_file_finish (fp, dummy) +- _IO_FILE *fp; +- int dummy; ++_IO_new_file_finish (_IO_FILE *fp, int dummy) + { + if (_IO_file_is_open (fp)) + { +@@ -220,13 +216,8 @@ _IO_new_file_finish (fp, dummy) + libc_hidden_ver (_IO_new_file_finish, _IO_file_finish) + + _IO_FILE * +-_IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64) +- _IO_FILE *fp; +- const char *filename; +- int posix_mode; +- int prot; +- int read_write; +- int is32not64; ++_IO_file_open (_IO_FILE *fp, const char *filename, int posix_mode, int prot, ++ int read_write, int is32not64) + { + int fdesc; + #ifdef _LIBC +@@ -260,11 +251,8 @@ _IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64) + libc_hidden_def (_IO_file_open) + + _IO_FILE * +-_IO_new_file_fopen (fp, filename, mode, is32not64) +- _IO_FILE *fp; +- const char *filename; +- const char *mode; +- int is32not64; ++_IO_new_file_fopen (_IO_FILE *fp, const char *filename, const char *mode, ++ int is32not64) + { + int oflags = 0, omode; + int read_write; +@@ -439,9 +427,7 @@ _IO_new_file_fopen (fp, filename, mode, is32not64) + libc_hidden_ver (_IO_new_file_fopen, _IO_file_fopen) + + _IO_FILE * +-_IO_new_file_attach (fp, fd) +- _IO_FILE *fp; +- int fd; ++_IO_new_file_attach (_IO_FILE *fp, int fd) + { + if (_IO_file_is_open (fp)) + return NULL; +@@ -461,10 +447,7 @@ _IO_new_file_attach (fp, fd) + libc_hidden_ver (_IO_new_file_attach, _IO_file_attach) + + _IO_FILE * +-_IO_new_file_setbuf (fp, p, len) +- _IO_FILE *fp; +- char *p; +- _IO_ssize_t len; ++_IO_new_file_setbuf (_IO_FILE *fp, char *p, _IO_ssize_t len) + { + if (_IO_default_setbuf (fp, p, len) == NULL) + return NULL; +@@ -479,10 +462,7 @@ libc_hidden_ver (_IO_new_file_setbuf, _IO_file_setbuf) + + + _IO_FILE * +-_IO_file_setbuf_mmap (fp, p, len) +- _IO_FILE *fp; +- char *p; +- _IO_ssize_t len; ++_IO_file_setbuf_mmap (_IO_FILE *fp, char *p, _IO_ssize_t len) + { + _IO_FILE *result; + +@@ -509,10 +489,7 @@ static _IO_size_t new_do_write (_IO_FILE *, const char *, _IO_size_t); + Then mark FP as having empty buffers. */ + + int +-_IO_new_do_write (fp, data, to_do) +- _IO_FILE *fp; +- const char *data; +- _IO_size_t to_do; ++_IO_new_do_write (_IO_FILE *fp, const char *data, _IO_size_t to_do) + { + return (to_do == 0 + || (_IO_size_t) new_do_write (fp, data, to_do) == to_do) ? 0 : EOF; +@@ -521,10 +498,7 @@ libc_hidden_ver (_IO_new_do_write, _IO_do_write) + + static + _IO_size_t +-new_do_write (fp, data, to_do) +- _IO_FILE *fp; +- const char *data; +- _IO_size_t to_do; ++new_do_write (_IO_FILE *fp, const char *data, _IO_size_t to_do) + { + _IO_size_t count; + if (fp->_flags & _IO_IS_APPENDING) +@@ -554,8 +528,7 @@ new_do_write (fp, data, to_do) + } + + int +-_IO_new_file_underflow (fp) +- _IO_FILE *fp; ++_IO_new_file_underflow (_IO_FILE *fp) + { + _IO_ssize_t count; + #if 0 +@@ -825,9 +798,7 @@ _IO_file_underflow_maybe_mmap (_IO_FILE *fp) + + + int +-_IO_new_file_overflow (f, ch) +- _IO_FILE *f; +- int ch; ++_IO_new_file_overflow (_IO_FILE *f, int ch) + { + if (f->_flags & _IO_NO_WRITES) /* SET ERROR */ + { +@@ -888,8 +859,7 @@ _IO_new_file_overflow (f, ch) + libc_hidden_ver (_IO_new_file_overflow, _IO_file_overflow) + + int +-_IO_new_file_sync (fp) +- _IO_FILE *fp; ++_IO_new_file_sync (_IO_FILE *fp) + { + _IO_ssize_t delta; + int retval = 0; +@@ -1007,11 +977,7 @@ do_ftell (_IO_FILE *fp) + } + + _IO_off64_t +-_IO_new_file_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_new_file_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t result; + _IO_off64_t delta, new_offset; +@@ -1167,11 +1133,7 @@ resync: + libc_hidden_ver (_IO_new_file_seekoff, _IO_file_seekoff) + + _IO_off64_t +-_IO_file_seekoff_mmap (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_file_seekoff_mmap (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t result; + +@@ -1242,10 +1204,7 @@ _IO_file_seekoff_maybe_mmap (_IO_FILE *fp, _IO_off64_t offset, int dir, + } + + _IO_ssize_t +-_IO_file_read (fp, buf, size) +- _IO_FILE *fp; +- void *buf; +- _IO_ssize_t size; ++_IO_file_read (_IO_FILE *fp, void *buf, _IO_ssize_t size) + { + return (__builtin_expect (fp->_flags2 & _IO_FLAGS2_NOTCANCEL, 0) + ? read_not_cancel (fp->_fileno, buf, size) +@@ -1254,27 +1213,21 @@ _IO_file_read (fp, buf, size) + libc_hidden_def (_IO_file_read) + + _IO_off64_t +-_IO_file_seek (fp, offset, dir) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; ++_IO_file_seek (_IO_FILE *fp, _IO_off64_t offset, int dir) + { + return __lseek64 (fp->_fileno, offset, dir); + } + libc_hidden_def (_IO_file_seek) + + int +-_IO_file_stat (fp, st) +- _IO_FILE *fp; +- void *st; ++_IO_file_stat (_IO_FILE *fp, void *st) + { + return __fxstat64 (_STAT_VER, fp->_fileno, (struct stat64 *) st); + } + libc_hidden_def (_IO_file_stat) + + int +-_IO_file_close_mmap (fp) +- _IO_FILE *fp; ++_IO_file_close_mmap (_IO_FILE *fp) + { + /* In addition to closing the file descriptor we have to unmap the file. */ + (void) __munmap (fp->_IO_buf_base, fp->_IO_buf_end - fp->_IO_buf_base); +@@ -1285,8 +1238,7 @@ _IO_file_close_mmap (fp) + } + + int +-_IO_file_close (fp) +- _IO_FILE *fp; ++_IO_file_close (_IO_FILE *fp) + { + /* Cancelling close should be avoided if possible since it leaves an + unrecoverable state behind. */ +@@ -1295,10 +1247,7 @@ _IO_file_close (fp) + libc_hidden_def (_IO_file_close) + + _IO_ssize_t +-_IO_new_file_write (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_ssize_t n; ++_IO_new_file_write (_IO_FILE *f, const void *data, _IO_ssize_t n) + { + _IO_ssize_t to_do = n; + while (to_do > 0) +@@ -1322,10 +1271,7 @@ _IO_new_file_write (f, data, n) + } + + _IO_size_t +-_IO_new_file_xsputn (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_size_t n; ++_IO_new_file_xsputn (_IO_FILE *f, const void *data, _IO_size_t n) + { + const char *s = (const char *) data; + _IO_size_t to_do = n; +@@ -1405,10 +1351,7 @@ _IO_new_file_xsputn (f, data, n) + libc_hidden_ver (_IO_new_file_xsputn, _IO_file_xsputn) + + _IO_size_t +-_IO_file_xsgetn (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_file_xsgetn (_IO_FILE *fp, void *data, _IO_size_t n) + { + _IO_size_t want, have; + _IO_ssize_t count; +@@ -1505,12 +1448,8 @@ _IO_file_xsgetn (fp, data, n) + } + libc_hidden_def (_IO_file_xsgetn) + +-static _IO_size_t _IO_file_xsgetn_mmap (_IO_FILE *, void *, _IO_size_t); + static _IO_size_t +-_IO_file_xsgetn_mmap (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_file_xsgetn_mmap (_IO_FILE *fp, void *data, _IO_size_t n) + { + _IO_size_t have; + char *read_ptr = fp->_IO_read_ptr; +@@ -1564,12 +1503,8 @@ _IO_file_xsgetn_mmap (fp, data, n) + return s - (char *) data; + } + +-static _IO_size_t _IO_file_xsgetn_maybe_mmap (_IO_FILE *, void *, _IO_size_t); + static _IO_size_t +-_IO_file_xsgetn_maybe_mmap (fp, data, n) +- _IO_FILE *fp; +- void *data; +- _IO_size_t n; ++_IO_file_xsgetn_maybe_mmap (_IO_FILE *fp, void *data, _IO_size_t n) + { + /* We only get here if this is the first attempt to read something. + Decide which operations to use and then punt to the chosen one. */ +diff --git a/libio/iofopen.c b/libio/iofopen.c +index 44ba253e072ef18d..9262038a57b96215 100644 +--- a/libio/iofopen.c ++++ b/libio/iofopen.c +@@ -35,8 +35,7 @@ + #endif + + _IO_FILE * +-__fopen_maybe_mmap (fp) +- _IO_FILE *fp; ++__fopen_maybe_mmap (_IO_FILE *fp) + { + #ifdef _G_HAVE_MMAP + if ((fp->_flags2 & _IO_FLAGS2_MMAP) && (fp->_flags & _IO_NO_WRITES)) +@@ -58,10 +57,7 @@ __fopen_maybe_mmap (fp) + + + _IO_FILE * +-__fopen_internal (filename, mode, is32) +- const char *filename; +- const char *mode; +- int is32; ++__fopen_internal (const char *filename, const char *mode, int is32) + { + struct locked_FILE + { +@@ -96,9 +92,7 @@ __fopen_internal (filename, mode, is32) + } + + _IO_FILE * +-_IO_new_fopen (filename, mode) +- const char *filename; +- const char *mode; ++_IO_new_fopen (const char *filename, const char *mode) + { + return __fopen_internal (filename, mode, 1); + } +diff --git a/libio/wfileops.c b/libio/wfileops.c +index 5ed1a922ae6ccbd0..d26b6e9f0a769d0b 100644 +--- a/libio/wfileops.c ++++ b/libio/wfileops.c +@@ -54,10 +54,7 @@ + /* Convert TO_DO wide character from DATA to FP. + Then mark FP as having empty buffers. */ + int +-_IO_wdo_write (fp, data, to_do) +- _IO_FILE *fp; +- const wchar_t *data; +- _IO_size_t to_do; ++_IO_wdo_write (_IO_FILE *fp, const wchar_t *data, _IO_size_t to_do) + { + struct _IO_codecvt *cc = fp->_codecvt; + +@@ -116,8 +113,7 @@ libc_hidden_def (_IO_wdo_write) + + + wint_t +-_IO_wfile_underflow (fp) +- _IO_FILE *fp; ++_IO_wfile_underflow (_IO_FILE *fp) + { + struct _IO_codecvt *cd; + enum __codecvt_result status; +@@ -410,9 +406,7 @@ _IO_wfile_underflow_maybe_mmap (_IO_FILE *fp) + + + wint_t +-_IO_wfile_overflow (f, wch) +- _IO_FILE *f; +- wint_t wch; ++_IO_wfile_overflow (_IO_FILE *f, wint_t wch) + { + if (f->_flags & _IO_NO_WRITES) /* SET ERROR */ + { +@@ -484,8 +478,7 @@ _IO_wfile_overflow (f, wch) + libc_hidden_def (_IO_wfile_overflow) + + wint_t +-_IO_wfile_sync (fp) +- _IO_FILE *fp; ++_IO_wfile_sync (_IO_FILE *fp) + { + _IO_ssize_t delta; + wint_t retval = 0; +@@ -746,11 +739,7 @@ do_ftell_wide (_IO_FILE *fp) + } + + _IO_off64_t +-_IO_wfile_seekoff (fp, offset, dir, mode) +- _IO_FILE *fp; +- _IO_off64_t offset; +- int dir; +- int mode; ++_IO_wfile_seekoff (_IO_FILE *fp, _IO_off64_t offset, int dir, int mode) + { + _IO_off64_t result; + _IO_off64_t delta, new_offset; +@@ -961,10 +950,7 @@ libc_hidden_def (_IO_wfile_seekoff) + + + _IO_size_t +-_IO_wfile_xsputn (f, data, n) +- _IO_FILE *f; +- const void *data; +- _IO_size_t n; ++_IO_wfile_xsputn (_IO_FILE *f, const void *data, _IO_size_t n) + { + const wchar_t *s = (const wchar_t *) data; + _IO_size_t to_do = n; diff --git a/SOURCES/glibc-rh1505492-prototypes-Xat.patch b/SOURCES/glibc-rh1505492-prototypes-Xat.patch new file mode 100644 index 0000000..636ed0a --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-Xat.patch @@ -0,0 +1,143 @@ +Introduce prototype-style definitions for various *at functions. +Upstream, these function definitions were removed in: + +commit 754a15c61cd6834685386a134d0a0fed5f3ac4c1 +Author: Joseph Myers +Date: Tue Sep 30 14:32:08 2014 +0000 + + Move some *at definitions to syscalls.list (bug 14138). + +diff --git a/sysdeps/unix/sysv/linux/fchownat.c b/sysdeps/unix/sysv/linux/fchownat.c +index 624804fa8cbfd8a1..0673118ad1c72958 100644 +--- a/sysdeps/unix/sysv/linux/fchownat.c ++++ b/sysdeps/unix/sysv/linux/fchownat.c +@@ -29,12 +29,7 @@ + + /* Change the owner and group of FILE. */ + int +-fchownat (fd, file, owner, group, flag) +- int fd; +- const char *file; +- uid_t owner; +- gid_t group; +- int flag; ++fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/futimesat.c b/sysdeps/unix/sysv/linux/futimesat.c +index e3d034f800dfe61b..77f320d94aef5435 100644 +--- a/sysdeps/unix/sysv/linux/futimesat.c ++++ b/sysdeps/unix/sysv/linux/futimesat.c +@@ -29,10 +29,7 @@ + /* Change the access time of FILE relative to FD to TVP[0] and + the modification time of FILE to TVP[1]. */ + int +-futimesat (fd, file, tvp) +- int fd; +- const char *file; +- const struct timeval tvp[2]; ++futimesat (int fd, const char *file, const struct timeval tvp[2]) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/linkat.c b/sysdeps/unix/sysv/linux/linkat.c +index 90e0a79a7014ab72..0526861c007d773f 100644 +--- a/sysdeps/unix/sysv/linux/linkat.c ++++ b/sysdeps/unix/sysv/linux/linkat.c +@@ -27,12 +27,7 @@ + /* Make a link to FROM named TO but relative paths in TO and FROM are + interpreted relative to FROMFD and TOFD respectively. */ + int +-linkat (fromfd, from, tofd, to, flags) +- int fromfd; +- const char *from; +- int tofd; +- const char *to; +- int flags; ++linkat (int fromfd, const char *from, int tofd, const char *to, int flags) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/mkdirat.c b/sysdeps/unix/sysv/linux/mkdirat.c +index c5ac40ad70c78b62..3989c13f6d511389 100644 +--- a/sysdeps/unix/sysv/linux/mkdirat.c ++++ b/sysdeps/unix/sysv/linux/mkdirat.c +@@ -28,10 +28,7 @@ + /* Create a new directory with permission bits MODE. But interpret + relative PATH names relative to the directory associated with FD. */ + int +-mkdirat (fd, file, mode) +- int fd; +- const char *file; +- mode_t mode; ++mkdirat (int fd, const char *file, mode_t mode) + { + int res; + +diff --git a/sysdeps/unix/sysv/linux/readlinkat.c b/sysdeps/unix/sysv/linux/readlinkat.c +index 1638cbb38063477e..05ac0c31743e0d09 100644 +--- a/sysdeps/unix/sysv/linux/readlinkat.c ++++ b/sysdeps/unix/sysv/linux/readlinkat.c +@@ -29,11 +29,7 @@ + /* Read the contents of the symbolic link PATH relative to FD into no + more than LEN bytes of BUF. */ + ssize_t +-readlinkat (fd, path, buf, len) +- int fd; +- const char *path; +- char *buf; +- size_t len; ++readlinkat (int fd, const char *path, char *buf, size_t len) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/renameat.c b/sysdeps/unix/sysv/linux/renameat.c +index 7623f5230306baaf..6b9e87016b17ab6c 100644 +--- a/sysdeps/unix/sysv/linux/renameat.c ++++ b/sysdeps/unix/sysv/linux/renameat.c +@@ -104,11 +104,7 @@ __atfct_seterrno_2 (int errval, int fd1, const char *buf1, int fd2, + + /* Rename the file OLD relative to OLDFD to NEW relative to NEWFD. */ + int +-renameat (oldfd, old, newfd, new) +- int oldfd; +- const char *old; +- int newfd; +- const char *new; ++renameat (int oldfd, const char *old, int newfd, const char *new) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/symlinkat.c b/sysdeps/unix/sysv/linux/symlinkat.c +index 7e3812914c99ad8c..c8f8be9892dc41db 100644 +--- a/sysdeps/unix/sysv/linux/symlinkat.c ++++ b/sysdeps/unix/sysv/linux/symlinkat.c +@@ -28,10 +28,7 @@ + + /* Make a symbolic link to FROM named TO relative to TOFD. */ + int +-symlinkat (from, tofd, to) +- const char *from; +- int tofd; +- const char *to; ++symlinkat (const char *from, int tofd, const char *to) + { + int result; + +diff --git a/sysdeps/unix/sysv/linux/unlinkat.c b/sysdeps/unix/sysv/linux/unlinkat.c +index 7c50a2a914486808..d4beb82b065068f7 100644 +--- a/sysdeps/unix/sysv/linux/unlinkat.c ++++ b/sysdeps/unix/sysv/linux/unlinkat.c +@@ -29,10 +29,7 @@ + + /* Remove the link named NAME. */ + int +-unlinkat (fd, file, flag) +- int fd; +- const char *file; +- int flag; ++unlinkat (int fd, const char *file, int flag) + { + int result; + diff --git a/SOURCES/glibc-rh1505492-prototypes-activate.patch b/SOURCES/glibc-rh1505492-prototypes-activate.patch new file mode 100644 index 0000000..bd375e4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-activate.patch @@ -0,0 +1,52 @@ +commit 8e2f7c68111ba8fae795ee08b6822e21ab8cfa38 +Author: Joseph Myers +Date: Wed Oct 21 15:14:13 2015 +0000 + + Use -Wold-style-definition. + + This patch makes glibc build with -Wold-style-definition to avoid + old-style function definitions creeping back in by accident. + + Tested for x86_64 and x86 (testsuite, and that installed shared + libraries are unchanged by the patch). Also tested build for arm, + mips64 and powerpc32. Hopefully there aren't any remaining + system-specific files with old-style definitions whose formatting + evaded my searches, but if there are, they will be easy to fix. + + * Makeconfig (+gccwarn-c): Add -Wold-style-definition. + * Makefile ($(objpfx)c++-types-check.out): Filter out + $(+gccwarn-c) instead of -Wstrict-prototypes. + +Conflicts: + Makefile + +Resolved conflict due to missing $(evaluate-test) in the tree (commit +f0881698bf244bcb16c394d2d6258d975a11baef, Generate .test-result files +for tests with special rules.). + +diff --git a/Makeconfig b/Makeconfig +index 3c0d4abc5f5f30df..f8313c9774d47522 100644 +--- a/Makeconfig ++++ b/Makeconfig +@@ -647,7 +647,7 @@ endif + ifeq ($(enable-werror),yes) + +gccwarn += -Werror + endif +-+gccwarn-c = -Wstrict-prototypes +++gccwarn-c = -Wstrict-prototypes -Wold-style-definition + + # We do not depend on the address of constants in different files to be + # actually different, so allow the compiler to merge them all. +diff --git a/Makefile b/Makefile +index bebb0a865a150a3a..f4128c2627dd0bb9 100644 +--- a/Makefile ++++ b/Makefile +@@ -279,7 +279,7 @@ ifneq ($(CXX),no) + vpath c++-types.data $(+sysdep_dirs) + + $(objpfx)c++-types-check.out: c++-types.data scripts/check-c++-types.sh +- scripts/check-c++-types.sh $< $(CXX) $(filter-out -std=gnu99 -Wstrict-prototypes,$(CFLAGS)) $(CPPFLAGS) > $@ ++ scripts/check-c++-types.sh $< $(CXX) $(filter-out -std=gnu99 $(+gccwarn-c),$(CFLAGS)) $(CPPFLAGS) > $@ + endif + + $(objpfx)check-local-headers.out: scripts/check-local-headers.sh diff --git a/SOURCES/glibc-rh1505492-prototypes-bzero.patch b/SOURCES/glibc-rh1505492-prototypes-bzero.patch new file mode 100644 index 0000000..ce9199e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-bzero.patch @@ -0,0 +1,25 @@ +Introduce prototype-style function definition for bzero. This happened +upstream as part of: + +commit ddcf6798d35beca3c4eec80ea448b57fd45558f4 +Author: Wilco Dijkstra +Date: Fri Feb 27 14:41:46 2015 +0000 + + Rather than using a C implementation of memset, directly call memset, which + typically has a much faster optimized implementation. + +diff --git a/string/bzero.c b/string/bzero.c +index b7a88ec9253bdf0c..c3276e7752935801 100644 +--- a/string/bzero.c ++++ b/string/bzero.c +@@ -23,9 +23,7 @@ + + /* Set N bytes of S to 0. */ + void +-__bzero (s, len) +- void *s; +- size_t len; ++__bzero (void *s, size_t len) + { + long int dstp = (long int) s; + const op_t zero = 0; diff --git a/SOURCES/glibc-rh1505492-prototypes-ctermid.patch b/SOURCES/glibc-rh1505492-prototypes-ctermid.patch new file mode 100644 index 0000000..52e8d9c --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-ctermid.patch @@ -0,0 +1,23 @@ +Introduce prototype-style function definition for ctermid. Upstream, +this was part of: + +commit 7729e0e91afbf8d45bb322d7e2d53f417fab01ed +Author: Alexandre Oliva +Date: Fri Nov 21 02:06:22 2014 -0200 + + ctermid: return string literal, document MT-Safety pitfall + +diff --git a/sysdeps/posix/ctermid.c b/sysdeps/posix/ctermid.c +index 8a0ebac8afaf23ff..94c0a6d25a5b430e 100644 +--- a/sysdeps/posix/ctermid.c ++++ b/sysdeps/posix/ctermid.c +@@ -23,8 +23,7 @@ + If S is not NULL, the name is copied into it (it should be at + least L_ctermid bytes long), otherwise a static buffer is used. */ + char * +-ctermid (s) +- char *s; ++ctermid (char *s) + { + static char name[L_ctermid]; + diff --git a/SOURCES/glibc-rh1505492-prototypes-debug.patch b/SOURCES/glibc-rh1505492-prototypes-debug.patch new file mode 100644 index 0000000..0303921 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-debug.patch @@ -0,0 +1,41 @@ +Convert __stpcpy_chk and __strcpy_chk to prototype-style function +definitions. Upstream, this happened as part of: + +commit 0d0325ed4b1052f32069eb3a51f7e16485a73568 +Author: Ondřej Bílka +Date: Tue Aug 25 12:23:24 2015 +0200 + + Fix strcpy_chk and stpcpy_chk performance. + +diff --git a/debug/stpcpy_chk.c b/debug/stpcpy_chk.c +index 3934d132d930093c..ba8058051857ef16 100644 +--- a/debug/stpcpy_chk.c ++++ b/debug/stpcpy_chk.c +@@ -24,10 +24,7 @@ + + /* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ + char * +-__stpcpy_chk (dest, src, destlen) +- char *dest; +- const char *src; +- size_t destlen; ++__stpcpy_chk (char *dest, const char *src, size_t destlen) + { + char *d = dest; + const char *s = src; +diff --git a/debug/strcpy_chk.c b/debug/strcpy_chk.c +index ee22b11cd33afdde..7cbe14a327dc7992 100644 +--- a/debug/strcpy_chk.c ++++ b/debug/strcpy_chk.c +@@ -23,10 +23,7 @@ + + /* Copy SRC to DEST with checking of destination buffer overflow. */ + char * +-__strcpy_chk (dest, src, destlen) +- char *dest; +- const char *src; +- size_t destlen; ++__strcpy_chk (char *dest, const char *src, size_t destlen) + { + char c; + char *s = (char *) src; diff --git a/SOURCES/glibc-rh1505492-prototypes-execve.patch b/SOURCES/glibc-rh1505492-prototypes-execve.patch new file mode 100644 index 0000000..475607d --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-execve.patch @@ -0,0 +1,25 @@ +Introduce prototype-style definition for execve. Upstream, the +old-style function definition was removed in: + +commit 6268f532b6c6be7971cb57883d042bd771966548 +Author: Joseph Myers +Date: Wed Oct 1 20:58:20 2014 +0000 + + Move execve to syscalls.list (bug 14138). + +diff --git a/sysdeps/unix/sysv/linux/execve.c b/sysdeps/unix/sysv/linux/execve.c +index 34fd14bf6afc5417..872b150784d41007 100644 +--- a/sysdeps/unix/sysv/linux/execve.c ++++ b/sysdeps/unix/sysv/linux/execve.c +@@ -25,10 +25,7 @@ + /* Consider moving to syscalls.list. */ + + int +-__execve (file, argv, envp) +- const char *file; +- char *const argv[]; +- char *const envp[]; ++__execve (const char *file, char *const argv[], char *const envp[]) + { + return INLINE_SYSCALL (execve, 3, file, argv, envp); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-gettimeofday.patch b/SOURCES/glibc-rh1505492-prototypes-gettimeofday.patch new file mode 100644 index 0000000..5880780 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-gettimeofday.patch @@ -0,0 +1,41 @@ +Introduce prototype-style function definitions for architecture-specific +gettimeofday implementations. + +Upstream did this as part of: + +commit 97554e4382e5d85eccf146b58f85aaad7e3d687c +Author: Adhemerval Zanella +Date: Fri Apr 17 11:48:51 2015 -0300 + + Consolidate gettimeofday across aarch64/s390/tile + +diff --git a/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c b/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +index 90d115577bad42ec..0a43a1bf94432006 100644 +--- a/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c ++++ b/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +@@ -27,9 +27,7 @@ + putting it into *tv and *tz. If tz is null, *tz is not filled. + Returns 0 on success, -1 on errors. */ + int +-__gettimeofday (tv, tz) +- struct timeval *tv; +- struct timezone *tz; ++__gettimeofday (struct timeval *tv, struct timezone *tz) + { + return INLINE_VSYSCALL (gettimeofday, 2, tv, tz); + } +diff --git a/sysdeps/unix/sysv/linux/s390/gettimeofday.c b/sysdeps/unix/sysv/linux/s390/gettimeofday.c +index d897e1a6b68c069a..10777d17828fa9d0 100644 +--- a/sysdeps/unix/sysv/linux/s390/gettimeofday.c ++++ b/sysdeps/unix/sysv/linux/s390/gettimeofday.c +@@ -28,9 +28,7 @@ + Returns 0 on success, -1 on errors. */ + + int +-__gettimeofday (tv, tz) +- struct timeval *tv; +- struct timezone *tz; ++__gettimeofday (struct timeval *tv, struct timezone *tz) + { + return INLINE_VSYSCALL (gettimeofday, 2, tv, tz); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-getttynam.patch b/SOURCES/glibc-rh1505492-prototypes-getttynam.patch new file mode 100644 index 0000000..42fbb76 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-getttynam.patch @@ -0,0 +1,23 @@ +Introduce prototype-style function definition for getttynam. Upstream, +this was part of: + +commit abccad04b4172d552dbdae948c0e567ba266ad76 +Author: Joseph Myers +Date: Wed Jun 17 20:21:19 2015 +0000 + + Fix ttyslot namespace (bug 18547). + +diff --git a/misc/getttyent.c b/misc/getttyent.c +index 864f65f523de2522..018789a801b8b764 100644 +--- a/misc/getttyent.c ++++ b/misc/getttyent.c +@@ -44,8 +44,7 @@ static char zapchar; + static FILE *tf; + + struct ttyent * +-getttynam(tty) +- const char *tty; ++getttynam (const char *tty) + { + struct ttyent *t; + diff --git a/SOURCES/glibc-rh1505492-prototypes-intl.patch b/SOURCES/glibc-rh1505492-prototypes-intl.patch new file mode 100644 index 0000000..09b5985 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-intl.patch @@ -0,0 +1,725 @@ +Introduce prototype-style function definitions in the intl +subdirectory. Upstream, this was done as part of a gnulib import: + +commit 6d248857845aee307440a77062a93b167cd2ac9c +Author: Will Newton +Date: Wed Dec 10 12:03:53 2014 +0000 + + intl: Merge with gettext version 0.19.3 + +diff --git a/intl/bindtextdom.c b/intl/bindtextdom.c +index 98a3606db1353957..64c683384e62ce36 100644 +--- a/intl/bindtextdom.c ++++ b/intl/bindtextdom.c +@@ -96,10 +96,8 @@ static void set_binding_values PARAMS ((const char *domainname, + If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither + modified nor returned. */ + static void +-set_binding_values (domainname, dirnamep, codesetp) +- const char *domainname; +- const char **dirnamep; +- const char **codesetp; ++set_binding_values (const char *domainname, const char **dirnamep, ++ const char **codesetp) + { + struct binding *binding; + int modified; +@@ -341,9 +339,7 @@ set_binding_values (domainname, dirnamep, codesetp) + /* Specify that the DOMAINNAME message catalog will be found + in DIRNAME rather than in the system locale data base. */ + char * +-BINDTEXTDOMAIN (domainname, dirname) +- const char *domainname; +- const char *dirname; ++BINDTEXTDOMAIN (const char *domainname, const char *dirname) + { + set_binding_values (domainname, &dirname, NULL); + return (char *) dirname; +@@ -352,9 +348,7 @@ BINDTEXTDOMAIN (domainname, dirname) + /* Specify the character encoding in which the messages from the + DOMAINNAME message catalog will be returned. */ + char * +-BIND_TEXTDOMAIN_CODESET (domainname, codeset) +- const char *domainname; +- const char *codeset; ++BIND_TEXTDOMAIN_CODESET (const char *domainname, const char *codeset) + { + set_binding_values (domainname, NULL, &codeset); + return (char *) codeset; +diff --git a/intl/dcgettext.c b/intl/dcgettext.c +index 0f2942be4556ef97..a54c747e346b7599 100644 +--- a/intl/dcgettext.c ++++ b/intl/dcgettext.c +@@ -44,10 +44,7 @@ + /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ + char * +-DCGETTEXT (domainname, msgid, category) +- const char *domainname; +- const char *msgid; +- int category; ++DCGETTEXT (const char *domainname, const char *msgid, int category) + { + return DCIGETTEXT (domainname, msgid, NULL, 0, 0, category); + } +diff --git a/intl/dcigettext.c b/intl/dcigettext.c +index c005f1b88d2da1a5..02eb8ad10ebd6eb4 100644 +--- a/intl/dcigettext.c ++++ b/intl/dcigettext.c +@@ -225,9 +225,7 @@ static void *root; + /* Function to compare two entries in the table of known translations. */ + static int transcmp PARAMS ((const void *p1, const void *p2)); + static int +-transcmp (p1, p2) +- const void *p1; +- const void *p2; ++transcmp (const void *p1, const void *p2) + { + const struct known_translation_t *s1; + const struct known_translation_t *s2; +@@ -407,13 +405,8 @@ static int enable_secure; + CATEGORY locale and, if PLURAL is nonzero, search over string + depending on the plural form determined by N. */ + char * +-DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category) +- const char *domainname; +- const char *msgid1; +- const char *msgid2; +- int plural; +- unsigned long int n; +- int category; ++DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, ++ int plural, unsigned long int n, int category) + { + #ifndef HAVE_ALLOCA + struct block_list *block_list = NULL; +@@ -743,12 +736,8 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category) + + char * + internal_function +-_nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp) +- struct loaded_l10nfile *domain_file; +- struct binding *domainbinding; +- const char *msgid; +- int convert; +- size_t *lengthp; ++_nl_find_msg (struct loaded_l10nfile *domain_file, struct binding *domainbinding, ++ const char *msgid, int convert, size_t *lengthp) + { + struct loaded_domain *domain; + nls_uint32 nstrings; +@@ -1242,11 +1231,8 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp) + /* Look up a plural variant. */ + static char * + internal_function +-plural_lookup (domain, n, translation, translation_len) +- struct loaded_l10nfile *domain; +- unsigned long int n; +- const char *translation; +- size_t translation_len; ++plural_lookup (struct loaded_l10nfile *domain, unsigned long int n, ++ const char *translation, size_t translation_len) + { + struct loaded_domain *domaindata = (struct loaded_domain *) domain->data; + unsigned long int index; +@@ -1283,8 +1269,7 @@ plural_lookup (domain, n, translation, translation_len) + /* Return string representation of locale CATEGORY. */ + static const char * + internal_function +-category_to_name (category) +- int category; ++category_to_name (int category) + { + const char *retval; + +@@ -1344,9 +1329,7 @@ category_to_name (category) + /* Guess value of current locale from value of the environment variables. */ + static const char * + internal_function +-guess_category_value (category, categoryname) +- int category; +- const char *categoryname; ++guess_category_value (int category, const char *categoryname) + { + const char *language; + const char *retval; +@@ -1374,8 +1357,7 @@ guess_category_value (category, categoryname) + /* Returns the output charset. */ + static const char * + internal_function +-get_output_charset (domainbinding) +- struct binding *domainbinding; ++get_output_charset (struct binding *domainbinding) + { + /* The output charset should normally be determined by the locale. But + sometimes the locale is not used or not correctly set up, so we provide +@@ -1433,9 +1415,7 @@ get_output_charset (domainbinding) + to be defined. */ + #if !_LIBC && !HAVE_STPCPY + static char * +-stpcpy (dest, src) +- char *dest; +- const char *src; ++stpcpy (char *dest, const char *src) + { + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; +@@ -1445,10 +1425,7 @@ stpcpy (dest, src) + + #if !_LIBC && !HAVE_MEMPCPY + static void * +-mempcpy (dest, src, n) +- void *dest; +- const void *src; +- size_t n; ++mempcpy (void *dest, const void *src, size_t n) + { + return (void *) ((char *) memcpy (dest, src, n) + n); + } +diff --git a/intl/dcngettext.c b/intl/dcngettext.c +index b0e2ee8d8cb214ea..1a64fd1f818823c8 100644 +--- a/intl/dcngettext.c ++++ b/intl/dcngettext.c +@@ -44,12 +44,8 @@ + /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ + char * +-DCNGETTEXT (domainname, msgid1, msgid2, n, category) +- const char *domainname; +- const char *msgid1; +- const char *msgid2; +- unsigned long int n; +- int category; ++DCNGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, ++ unsigned long int n, int category) + { + return DCIGETTEXT (domainname, msgid1, msgid2, 1, n, category); + } +diff --git a/intl/dgettext.c b/intl/dgettext.c +index 7718f4e4e021bbfd..eba96b745c0c24c7 100644 +--- a/intl/dgettext.c ++++ b/intl/dgettext.c +@@ -46,9 +46,7 @@ + /* Look up MSGID in the DOMAINNAME message catalog of the current + LC_MESSAGES locale. */ + char * +-DGETTEXT (domainname, msgid) +- const char *domainname; +- const char *msgid; ++DGETTEXT (const char *domainname, const char *msgid) + { + return DCGETTEXT (domainname, msgid, LC_MESSAGES); + } +diff --git a/intl/dngettext.c b/intl/dngettext.c +index 18ff68e94e7b19b3..8b62b1b7d60608b3 100644 +--- a/intl/dngettext.c ++++ b/intl/dngettext.c +@@ -46,11 +46,8 @@ + /* Look up MSGID in the DOMAINNAME message catalog of the current + LC_MESSAGES locale and skip message according to the plural form. */ + char * +-DNGETTEXT (domainname, msgid1, msgid2, n) +- const char *domainname; +- const char *msgid1; +- const char *msgid2; +- unsigned long int n; ++DNGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, ++ unsigned long int n) + { + return DCNGETTEXT (domainname, msgid1, msgid2, n, LC_MESSAGES); + } +diff --git a/intl/explodename.c b/intl/explodename.c +index 52506c4c70671a29..679deebfc4a8a628 100644 +--- a/intl/explodename.c ++++ b/intl/explodename.c +@@ -40,8 +40,7 @@ + static char *_nl_find_language PARAMS ((const char *name)); + + static char * +-_nl_find_language (name) +- const char *name; ++_nl_find_language (const char *name) + { + while (name[0] != '\0' && name[0] != '_' && name[0] != '@' && name[0] != '.') + ++name; +@@ -51,14 +50,9 @@ _nl_find_language (name) + + + int +-_nl_explode_name (name, language, modifier, territory, codeset, +- normalized_codeset) +- char *name; +- const char **language; +- const char **modifier; +- const char **territory; +- const char **codeset; +- const char **normalized_codeset; ++_nl_explode_name (char *name, const char **language, const char **modifier, ++ const char **territory, const char **codeset, ++ const char **normalized_codeset) + { + char *cp; + int mask; +diff --git a/intl/finddomain.c b/intl/finddomain.c +index 4fff9dad5de54dad..6c3b80b26b6fc88f 100644 +--- a/intl/finddomain.c ++++ b/intl/finddomain.c +@@ -49,11 +49,8 @@ static struct loaded_l10nfile *_nl_loaded_domains; + established bindings. */ + struct loaded_l10nfile * + internal_function +-_nl_find_domain (dirname, locale, domainname, domainbinding) +- const char *dirname; +- char *locale; +- const char *domainname; +- struct binding *domainbinding; ++_nl_find_domain (const char *dirname, char *locale, const char *domainname, ++ struct binding *domainbinding) + { + struct loaded_l10nfile *retval; + const char *language; +diff --git a/intl/gettext.c b/intl/gettext.c +index fbc598407d9a7e3a..028f0e713971b475 100644 +--- a/intl/gettext.c ++++ b/intl/gettext.c +@@ -52,8 +52,7 @@ + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ + char * +-GETTEXT (msgid) +- const char *msgid; ++GETTEXT (const char *msgid) + { + return DCGETTEXT (NULL, msgid, LC_MESSAGES); + } +diff --git a/intl/hash-string.c b/intl/hash-string.c +index 1b6cfa01b683a9f2..cf267492cc8d3834 100644 +--- a/intl/hash-string.c ++++ b/intl/hash-string.c +@@ -23,8 +23,7 @@ + [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, + 1986, 1987 Bell Telephone Laboratories, Inc.] */ + unsigned long int +-__hash_string (str_param) +- const char *str_param; ++__hash_string (const char *str_param) + { + unsigned long int hval, g; + const char *str = str_param; +diff --git a/intl/l10nflist.c b/intl/l10nflist.c +index 424f2dffc3d7b8e6..7bc2ec81bbbc3d9c 100644 +--- a/intl/l10nflist.c ++++ b/intl/l10nflist.c +@@ -69,9 +69,7 @@ static char *stpcpy PARAMS ((char *dest, const char *src)); + static size_t argz_count__ PARAMS ((const char *argz, size_t len)); + + static size_t +-argz_count__ (argz, len) +- const char *argz; +- size_t len; ++argz_count__ (const char *argz, size_t len) + { + size_t count = 0; + while (len > 0) +@@ -93,10 +91,7 @@ argz_count__ (argz, len) + static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep)); + + static void +-argz_stringify__ (argz, len, sep) +- char *argz; +- size_t len; +- int sep; ++argz_stringify__ (char *argz, size_t len, int sep) + { + while (len > 0) + { +@@ -116,10 +111,7 @@ static char *argz_next__ PARAMS ((char *argz, size_t argz_len, + const char *entry)); + + static char * +-argz_next__ (argz, argz_len, entry) +- char *argz; +- size_t argz_len; +- const char *entry; ++argz_next__ (char *argz, size_t argz_len, const char *entry) + { + if (entry) + { +@@ -144,8 +136,7 @@ argz_next__ (argz, argz_len, entry) + static int pop PARAMS ((int x)); + + static inline int +-pop (x) +- int x; ++pop (int x) + { + /* We assume that no more than 16 bits are used. */ + x = ((x & ~0x5555) >> 1) + (x & 0x5555); +@@ -159,20 +150,12 @@ pop (x) + + + struct loaded_l10nfile * +-_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, +- territory, codeset, normalized_codeset, modifier, +- filename, do_allocate) +- struct loaded_l10nfile **l10nfile_list; +- const char *dirlist; +- size_t dirlist_len; +- int mask; +- const char *language; +- const char *territory; +- const char *codeset; +- const char *normalized_codeset; +- const char *modifier; +- const char *filename; +- int do_allocate; ++_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list, ++ const char *dirlist, size_t dirlist_len, ++ int mask, const char *language, ++ const char *territory, const char *codeset, ++ const char *normalized_codeset, const char *modifier, ++ const char *filename, int do_allocate) + { + char *abs_filename; + struct loaded_l10nfile *last = NULL; +@@ -315,9 +298,7 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, + names. The return value is dynamically allocated and has to be + freed by the caller. */ + const char * +-_nl_normalize_codeset (codeset, name_len) +- const char *codeset; +- size_t name_len; ++_nl_normalize_codeset (const char *codeset, size_t name_len) + { + int len = 0; + int only_digit = 1; +@@ -368,9 +349,7 @@ _nl_normalize_codeset (codeset, name_len) + to be defined. */ + #if !_LIBC && !HAVE_STPCPY + static char * +-stpcpy (dest, src) +- char *dest; +- const char *src; ++stpcpy (char *dest, const char *src) + { + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; +diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c +index 243783a9ac4d0929..8ee719d9c3034724 100644 +--- a/intl/loadmsgcat.c ++++ b/intl/loadmsgcat.c +@@ -487,8 +487,7 @@ int _nl_msg_cat_cntr; + + /* Expand a system dependent string segment. Return NULL if unsupported. */ + static const char * +-get_sysdep_segment_value (name) +- const char *name; ++get_sysdep_segment_value (const char *name) + { + /* Test for an ISO C 99 section 7.8.1 format string directive. + Syntax: +@@ -757,9 +756,8 @@ get_sysdep_segment_value (name) + message catalog do nothing. */ + void + internal_function +-_nl_load_domain (domain_file, domainbinding) +- struct loaded_l10nfile *domain_file; +- struct binding *domainbinding; ++_nl_load_domain (struct loaded_l10nfile *domain_file, ++ struct binding *domainbinding) + { + __libc_lock_define_initialized_recursive (static, lock); + int fd = -1; +@@ -1278,8 +1276,7 @@ _nl_load_domain (domain_file, domainbinding) + #ifdef _LIBC + void + internal_function __libc_freeres_fn_section +-_nl_unload_domain (domain) +- struct loaded_domain *domain; ++_nl_unload_domain (struct loaded_domain *domain) + { + size_t i; + +diff --git a/intl/localealias.c b/intl/localealias.c +index 2f067dfe2cd7a130..29eef89c9e3d86bc 100644 +--- a/intl/localealias.c ++++ b/intl/localealias.c +@@ -137,8 +137,7 @@ static int alias_compare PARAMS ((const struct alias_map *map1, + + + const char * +-_nl_expand_alias (name) +- const char *name; ++_nl_expand_alias (const char *name) + { + static const char *locale_alias_path = LOCALE_ALIAS_PATH; + struct alias_map *retval; +@@ -200,9 +199,7 @@ _nl_expand_alias (name) + + static size_t + internal_function +-read_alias_file (fname, fname_len) +- const char *fname; +- int fname_len; ++read_alias_file (const char *fname, int fname_len) + { + FILE *fp; + char *full_fname; +@@ -381,9 +378,7 @@ extend_alias_table (void) + + + static int +-alias_compare (map1, map2) +- const struct alias_map *map1; +- const struct alias_map *map2; ++alias_compare (const struct alias_map *map1, const struct alias_map *map2) + { + #if defined _LIBC || defined HAVE_STRCASECMP + return strcasecmp (map1->alias, map2->alias); +diff --git a/intl/ngettext.c b/intl/ngettext.c +index 109e9da0e5cdc5d4..f3f8e076a1fc55aa 100644 +--- a/intl/ngettext.c ++++ b/intl/ngettext.c +@@ -54,10 +54,7 @@ + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ + char * +-NGETTEXT (msgid1, msgid2, n) +- const char *msgid1; +- const char *msgid2; +- unsigned long int n; ++NGETTEXT (const char *msgid1, const char *msgid2, unsigned long int n) + { + return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES); + } +diff --git a/intl/plural-eval.c b/intl/plural-eval.c +index e692e379b14100b7..d44eb257e466e852 100644 +--- a/intl/plural-eval.c ++++ b/intl/plural-eval.c +@@ -22,9 +22,7 @@ static unsigned long int plural_eval (const struct expression *pexp, + + static unsigned long int + internal_function +-plural_eval (pexp, n) +- const struct expression *pexp; +- unsigned long int n; ++plural_eval (const struct expression *pexp, unsigned long int n) + { + switch (pexp->nargs) + { +diff --git a/intl/plural-exp.c b/intl/plural-exp.c +index e157bba4adfca8df..abfbf0a1ef26a76d 100644 +--- a/intl/plural-exp.c ++++ b/intl/plural-exp.c +@@ -96,10 +96,9 @@ init_germanic_plural (void) + + void + internal_function +-EXTRACT_PLURAL_EXPRESSION (nullentry, pluralp, npluralsp) +- const char *nullentry; +- const struct expression **pluralp; +- unsigned long int *npluralsp; ++EXTRACT_PLURAL_EXPRESSION (const char *nullentry, ++ const struct expression **pluralp, ++ unsigned long int *npluralsp) + { + if (nullentry != NULL) + { +diff --git a/intl/plural.c b/intl/plural.c +index 0d8bf4c6d59ff646..3898ab6aeaadcc2d 100644 +--- a/intl/plural.c ++++ b/intl/plural.c +@@ -212,10 +212,7 @@ static void yyerror PARAMS ((const char *str)); + /* Allocation of expressions. */ + + static struct expression * +-new_exp (nargs, op, args) +- int nargs; +- enum operator op; +- struct expression * const *args; ++new_exp (int nargs, enum operator op, struct expression * const *args) + { + int i; + struct expression *newp; +@@ -244,16 +241,13 @@ new_exp (nargs, op, args) + } + + static inline struct expression * +-new_exp_0 (op) +- enum operator op; ++new_exp_0 (enum operator op) + { + return new_exp (0, op, NULL); + } + + static inline struct expression * +-new_exp_1 (op, right) +- enum operator op; +- struct expression *right; ++new_exp_1 (enum operator op, struct expression *right) + { + struct expression *args[1]; + +@@ -262,10 +256,7 @@ new_exp_1 (op, right) + } + + static struct expression * +-new_exp_2 (op, left, right) +- enum operator op; +- struct expression *left; +- struct expression *right; ++new_exp_2 (enum operator op, struct expression *left, struct expression *right) + { + struct expression *args[2]; + +@@ -275,11 +266,8 @@ new_exp_2 (op, left, right) + } + + static inline struct expression * +-new_exp_3 (op, bexp, tbranch, fbranch) +- enum operator op; +- struct expression *bexp; +- struct expression *tbranch; +- struct expression *fbranch; ++new_exp_3 (enum operator op, struct expression *bexp, ++ struct expression *tbranch, struct expression *fbranch) + { + struct expression *args[3]; + +@@ -1874,8 +1862,7 @@ yyreturn: + + void + internal_function +-FREE_EXPRESSION (exp) +- struct expression *exp; ++FREE_EXPRESSION (struct expression *exp) + { + if (exp == NULL) + return; +@@ -1901,9 +1888,7 @@ FREE_EXPRESSION (exp) + + + static int +-yylex (lval, pexp) +- YYSTYPE *lval; +- const char **pexp; ++yylex (YYSTYPE *lval, const char **pexp) + { + const char *exp = *pexp; + int result; +@@ -2046,8 +2031,7 @@ yylex (lval, pexp) + + + static void +-yyerror (str) +- const char *str; ++yyerror (const char *str) + { + /* Do nothing. We don't print error messages here. */ + } +diff --git a/intl/plural.y b/intl/plural.y +index 2df3604dcf7ecfb6..7cfac172bd157b8a 100644 +--- a/intl/plural.y ++++ b/intl/plural.y +@@ -72,10 +72,7 @@ static void yyerror PARAMS ((const char *str)); + /* Allocation of expressions. */ + + static struct expression * +-new_exp (nargs, op, args) +- int nargs; +- enum operator op; +- struct expression * const *args; ++new_exp (int nargs, enum operator op, struct expression * const *args) + { + int i; + struct expression *newp; +@@ -104,16 +101,13 @@ new_exp (nargs, op, args) + } + + static inline struct expression * +-new_exp_0 (op) +- enum operator op; ++new_exp_0 (enum operator op) + { + return new_exp (0, op, NULL); + } + + static inline struct expression * +-new_exp_1 (op, right) +- enum operator op; +- struct expression *right; ++new_exp_1 (enum operator op, struct expression *right) + { + struct expression *args[1]; + +@@ -122,10 +116,7 @@ new_exp_1 (op, right) + } + + static struct expression * +-new_exp_2 (op, left, right) +- enum operator op; +- struct expression *left; +- struct expression *right; ++new_exp_2 (enum operator op, struct expression *left, struct expression *right) + { + struct expression *args[2]; + +@@ -135,11 +126,8 @@ new_exp_2 (op, left, right) + } + + static inline struct expression * +-new_exp_3 (op, bexp, tbranch, fbranch) +- enum operator op; +- struct expression *bexp; +- struct expression *tbranch; +- struct expression *fbranch; ++new_exp_3 (enum operator op, struct expression *bexp, ++ struct expression *tbranch, struct expression *fbranch) + { + struct expression *args[3]; + +@@ -230,8 +218,7 @@ exp: exp '?' exp ':' exp + + void + internal_function +-FREE_EXPRESSION (exp) +- struct expression *exp; ++FREE_EXPRESSION (struct expression *exp) + { + if (exp == NULL) + return; +@@ -257,9 +244,7 @@ FREE_EXPRESSION (exp) + + + static int +-yylex (lval, pexp) +- YYSTYPE *lval; +- const char **pexp; ++yylex (YYSTYPE *lval, const char **pexp) + { + const char *exp = *pexp; + int result; +@@ -402,8 +387,7 @@ yylex (lval, pexp) + + + static void +-yyerror (str) +- const char *str; ++yyerror (const char *str) + { + /* Do nothing. We don't print error messages here. */ + } +diff --git a/intl/textdomain.c b/intl/textdomain.c +index 35fb2e4c9951fe74..7d1029fa02ffdb34 100644 +--- a/intl/textdomain.c ++++ b/intl/textdomain.c +@@ -77,8 +77,7 @@ __libc_rwlock_define (extern, _nl_state_lock attribute_hidden) + If DOMAINNAME is null, return the current default. + If DOMAINNAME is "", reset to the default of "messages". */ + char * +-TEXTDOMAIN (domainname) +- const char *domainname; ++TEXTDOMAIN (const char *domainname) + { + char *new_domain; + char *old_domain; diff --git a/SOURCES/glibc-rh1505492-prototypes-libc_fatal.patch b/SOURCES/glibc-rh1505492-prototypes-libc_fatal.patch new file mode 100644 index 0000000..f0485a0 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-libc_fatal.patch @@ -0,0 +1,23 @@ +Introduce prototype-style definition for __libc_fatal. Upstream, this +was done as part of: + +commit a600e5cef53e10147932d910cdb2fdfc62afae4e +Author: Roland McGrath +Date: Tue Mar 19 17:07:15 2013 -0700 + + Consolidate Linux and POSIX libc_fatal code. + +diff --git a/sysdeps/unix/sysv/linux/libc_fatal.c b/sysdeps/unix/sysv/linux/libc_fatal.c +index 6cc96d76e98fe191..90dd6265152824e5 100644 +--- a/sysdeps/unix/sysv/linux/libc_fatal.c ++++ b/sysdeps/unix/sysv/linux/libc_fatal.c +@@ -199,8 +199,7 @@ __libc_message (int do_abort, const char *fmt, ...) + + + void +-__libc_fatal (message) +- const char *message; ++__libc_fatal (const char *message) + { + /* The loop is added only to keep gcc happy. */ + while (1) diff --git a/SOURCES/glibc-rh1505492-prototypes-memchr.patch b/SOURCES/glibc-rh1505492-prototypes-memchr.patch new file mode 100644 index 0000000..1bc7a67 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-memchr.patch @@ -0,0 +1,25 @@ +Introduce prototype-style function definitin for generic memchr. +Upstream did this as part of: + +commit 1570a72bb8359c9a3a64c4e22d9ea47ce6fcff31 +Author: Will Newton +Date: Thu Jun 26 16:00:44 2014 +0100 + + string/memchr.c: Merge from gnulib + +diff --git a/string/memchr.c b/string/memchr.c +index d1880cfbaed951a6..f4650672e01385de 100644 +--- a/string/memchr.c ++++ b/string/memchr.c +@@ -57,10 +57,7 @@ + + /* Search no more than N bytes of S for C. */ + __ptr_t +-MEMCHR (s, c_in, n) +- const __ptr_t s; +- int c_in; +- size_t n; ++MEMCHR (const __ptr_t s, int c_in, size_t n) + { + const unsigned char *char_ptr; + const unsigned long int *longword_ptr; diff --git a/SOURCES/glibc-rh1505492-prototypes-no_cancellation.patch b/SOURCES/glibc-rh1505492-prototypes-no_cancellation.patch new file mode 100644 index 0000000..0c7e7c6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-no_cancellation.patch @@ -0,0 +1,25 @@ +Adjust various functions to prototype style which are defined under +NO_CANCELLATION conditionals. + +Upstream, the function definitions were removed in: + +commit c6bb095eb544aa32d3f4b8e9aa434d686915446e +Author: Adhemerval Zanella +Date: Sun Sep 28 08:46:23 2014 -0300 + + nptl: Rewrite cancellation macros + +diff --git a/sysdeps/unix/sysv/linux/sigsuspend.c b/sysdeps/unix/sysv/linux/sigsuspend.c +index 1cd1de88d303fd66..e5ae86382bc74c7d 100644 +--- a/sysdeps/unix/sysv/linux/sigsuspend.c ++++ b/sysdeps/unix/sysv/linux/sigsuspend.c +@@ -53,8 +53,7 @@ strong_alias (__sigsuspend, __libc_sigsuspend) + + #ifndef NO_CANCELLATION + int +-__sigsuspend_nocancel (set) +- const sigset_t *set; ++__sigsuspend_nocancel (const sigset_t *set) + { + return do_sigsuspend (set); + } diff --git a/SOURCES/glibc-rh1505492-prototypes-powerpc-memmove.patch b/SOURCES/glibc-rh1505492-prototypes-powerpc-memmove.patch new file mode 100644 index 0000000..624fe58 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-powerpc-memmove.patch @@ -0,0 +1,25 @@ +Introduce prototype-style function definition for POWER memmove. +Upstream removed the old-style definition in: + +commit d6f68bbef4427850c2901728a1d13efc0e687297 +Author: Adhemerval Zanella +Date: Tue Jun 24 06:42:31 2014 -0500 + + PowerPC: memmove default implementation cleanup + +diff --git a/sysdeps/powerpc/memmove.c b/sysdeps/powerpc/memmove.c +index 50734e45458352c5..7d736bc0b0eb7d63 100644 +--- a/sysdeps/powerpc/memmove.c ++++ b/sysdeps/powerpc/memmove.c +@@ -40,10 +40,7 @@ + #endif + + rettype +-MEMMOVE (a1, a2, len) +- a1const void *a1; +- a2const void *a2; +- size_t len; ++MEMMOVE (a1const void *a1, a2const void *a2, size_t len) + { + unsigned long int dstp = (long int) dest; + unsigned long int srcp = (long int) src; diff --git a/SOURCES/glibc-rh1505492-prototypes-powerpc-pread-pwrite.patch b/SOURCES/glibc-rh1505492-prototypes-powerpc-pread-pwrite.patch new file mode 100644 index 0000000..4877e57 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-powerpc-pread-pwrite.patch @@ -0,0 +1,78 @@ +Introduce prototype-style function definitions for pread, pwrite, +pread64, pwrite64. Upstream removed the old-style function definitions +in: + +commit 94a42455257226361fedf37a0ad7fc1d9d131645 +Author: Joseph Myers +Date: Fri Oct 31 21:13:32 2014 +0000 + + Move powerpc64 pread/pwrite definitions to syscalls.list (bug 14138). + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c +index 43ead1af67b0c0da..010fca1b6bb0d4b0 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c +@@ -29,11 +29,7 @@ + /* Consider moving to syscalls.list. */ + + ssize_t +-__libc_pread (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off_t offset; ++__libc_pread (int fd, void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c +index dc9fc81c4ccf067e..bcf1bebd75ebf8f5 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c +@@ -28,11 +28,7 @@ + /* Consider moving to syscalls.list. */ + + ssize_t +-__libc_pread64 (fd, buf, count, offset) +- int fd; +- void *buf; +- size_t count; +- off64_t offset; ++__libc_pread64 (int fd, void *buf, size_t count, off64_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c +index 57c62bdb74805836..ff9f5c4d8ef3e26d 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c +@@ -29,11 +29,7 @@ + /* Consider moving to syscalls.list. */ + + ssize_t +-__libc_pwrite (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off_t offset; ++__libc_pwrite (int fd, const void *buf, size_t count, off_t offset) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c +index 430bb4ef2bd2eb3e..b2f630396cf53b39 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c +@@ -28,11 +28,7 @@ + /* Consider moving to syscalls.list. */ + + ssize_t +-__libc_pwrite64 (fd, buf, count, offset) +- int fd; +- const void *buf; +- size_t count; +- off64_t offset; ++__libc_pwrite64 (int fd, const void *buf, size_t count, off64_t offset) + { + ssize_t result; + diff --git a/SOURCES/glibc-rh1505492-prototypes-powerpc-wcscpy.patch b/SOURCES/glibc-rh1505492-prototypes-powerpc-wcscpy.patch new file mode 100644 index 0000000..1ddf7c4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-powerpc-wcscpy.patch @@ -0,0 +1,24 @@ +Introduce prototype-style function definition for wcscpy on 32-bit +POWER. The old-style function definition was removed upstream in: + +commit 93be09e7259caf227dd586404f3c74b61c830cb4 +Author: Adhemerval Zanella +Date: Mon Oct 14 09:43:31 2013 -0500 + + PowerPC: multiarch wcscpy for PowerPC32 + +diff --git a/sysdeps/powerpc/powerpc32/power6/wcscpy.c b/sysdeps/powerpc/powerpc32/power6/wcscpy.c +index 9bd907788e6f2337..0af09793f7ce43e0 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wcscpy.c ++++ b/sysdeps/powerpc/powerpc32/power6/wcscpy.c +@@ -22,9 +22,7 @@ + + /* Copy SRC to DEST. */ + wchar_t * +-wcscpy (dest, src) +- wchar_t *dest; +- const wchar_t *src; ++wcscpy (wchar_t *dest, const wchar_t *src) + { + wint_t c,d; + wchar_t *wcp, *wcp2; diff --git a/SOURCES/glibc-rh1505492-prototypes-powerpc-wordcopy.patch b/SOURCES/glibc-rh1505492-prototypes-powerpc-wordcopy.patch new file mode 100644 index 0000000..2333102 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-powerpc-wordcopy.patch @@ -0,0 +1,113 @@ +Introduce prototype-style function definitions for the POWER wordcopy +functions. Upstream, this happened as a side-effect of this commit: + +commit ea5a72f882f878a5ea00d69e56a19c2fc3fd2d2a +Author: Adhemerval Zanella +Date: Mon Oct 14 09:59:59 2013 -0500 + + PowerPC: multiarch wordcopy routines for PowerPC32 + +diff --git a/sysdeps/powerpc/powerpc32/power4/wordcopy.c b/sysdeps/powerpc/powerpc32/power4/wordcopy.c +index e8a35eaeef6e92fe..233a183cd8d8cf8b 100644 +--- a/sysdeps/powerpc/powerpc32/power4/wordcopy.c ++++ b/sysdeps/powerpc/powerpc32/power4/wordcopy.c +@@ -27,10 +27,7 @@ + Both SRCP and DSTP should be aligned for memory operations on `op_t's. */ + + void +-_wordcopy_fwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + +@@ -65,10 +62,7 @@ _wordcopy_fwd_aligned (dstp, srcp, len) + *not* be aligned. */ + + void +-_wordcopy_fwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1, a2; + int sh_1, sh_2; +@@ -119,10 +113,7 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len) + operations on `op_t's. */ + + void +-_wordcopy_bwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + +@@ -158,10 +149,7 @@ _wordcopy_bwd_aligned (dstp, srcp, len) + operations on `op_t', but SRCP must *not* be aligned. */ + + void +-_wordcopy_bwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1, a2; + int sh_1, sh_2; +diff --git a/sysdeps/powerpc/powerpc32/power6/wordcopy.c b/sysdeps/powerpc/powerpc32/power6/wordcopy.c +index 698b82f4fbda9445..bee5e9d53e5fd780 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wordcopy.c ++++ b/sysdeps/powerpc/powerpc32/power6/wordcopy.c +@@ -28,10 +28,7 @@ + Both SRCP and DSTP should be aligned for memory operations on `op_t's. */ + + void +-_wordcopy_fwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + +@@ -80,10 +77,7 @@ _wordcopy_fwd_aligned (dstp, srcp, len) + while (len != 0) + + void +-_wordcopy_fwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_fwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1, a2; + int sh_1, sh_2; +@@ -125,10 +119,7 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len) + operations on `op_t's. */ + + void +-_wordcopy_bwd_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1; + +@@ -178,10 +169,7 @@ _wordcopy_bwd_aligned (dstp, srcp, len) + operations on `op_t', but SRCP must *not* be aligned. */ + + void +-_wordcopy_bwd_dest_aligned (dstp, srcp, len) +- long int dstp; +- long int srcp; +- size_t len; ++_wordcopy_bwd_dest_aligned (long int dstp, long int srcp, size_t len) + { + op_t a0, a1, a2; + int sh_1, sh_2; diff --git a/SOURCES/glibc-rh1505492-prototypes-putXent.patch b/SOURCES/glibc-rh1505492-prototypes-putXent.patch new file mode 100644 index 0000000..4dc5b1e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-putXent.patch @@ -0,0 +1,39 @@ +Introduce prototype-style definitions for putgrent, putpwent. Upstream, +this was done as part of this commit (not backported here): + +commit 676599b36a92f3c201c5682ee7a5caddd9f370a4 +Author: Florian Weimer +Date: Fri Oct 2 11:34:13 2015 +0200 + + Harden putpwent, putgrent, putspent, putspent against injection [BZ #18724] + +diff --git a/grp/putgrent.c b/grp/putgrent.c +index 176a7a15d8bb6ec2..1d69136c30c81bcd 100644 +--- a/grp/putgrent.c ++++ b/grp/putgrent.c +@@ -27,9 +27,7 @@ + /* Write an entry to the given stream. + This must know the format of the group file. */ + int +-putgrent (gr, stream) +- const struct group *gr; +- FILE *stream; ++putgrent (const struct group *gr, FILE *stream) + { + int retval; + +diff --git a/pwd/putpwent.c b/pwd/putpwent.c +index e9470ed1012a1789..9a9f04dcf4b596ee 100644 +--- a/pwd/putpwent.c ++++ b/pwd/putpwent.c +@@ -24,9 +24,7 @@ + /* Write an entry to the given stream. + This must know the format of the password file. */ + int +-putpwent (p, stream) +- const struct passwd *p; +- FILE *stream; ++putpwent (const struct passwd *p, FILE *stream) + { + if (p == NULL || stream == NULL) + { diff --git a/SOURCES/glibc-rh1505492-prototypes-readv-writev.patch b/SOURCES/glibc-rh1505492-prototypes-readv-writev.patch new file mode 100644 index 0000000..63d3fd9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-readv-writev.patch @@ -0,0 +1,41 @@ +Introduce prototype-style function definitions for readv and writev. +Upstream, the old-style function definitions were removed in: + +commit 42b7f5d48549b85386a9b28a1a90e66fd81ba273 +Author: Joseph Myers +Date: Mon Oct 20 15:49:08 2014 +0000 + + Move readv and writev definitions to syscalls.list (bug 14138). + +diff --git a/sysdeps/unix/sysv/linux/readv.c b/sysdeps/unix/sysv/linux/readv.c +index e8acd65ce377963a..e49d54ede39d45af 100644 +--- a/sysdeps/unix/sysv/linux/readv.c ++++ b/sysdeps/unix/sysv/linux/readv.c +@@ -39,10 +39,7 @@ static ssize_t __atomic_readv_replacement (int, const struct iovec *, + + + ssize_t +-__libc_readv (fd, vector, count) +- int fd; +- const struct iovec *vector; +- int count; ++__libc_readv (int fd, const struct iovec *vector, int count) + { + ssize_t result; + +diff --git a/sysdeps/unix/sysv/linux/writev.c b/sysdeps/unix/sysv/linux/writev.c +index 8b018ecdf6fbc323..847a1057aa443238 100644 +--- a/sysdeps/unix/sysv/linux/writev.c ++++ b/sysdeps/unix/sysv/linux/writev.c +@@ -38,10 +38,7 @@ static ssize_t __atomic_writev_replacement (int, const struct iovec *, + + + ssize_t +-__libc_writev (fd, vector, count) +- int fd; +- const struct iovec *vector; +- int count; ++__libc_writev (int fd, const struct iovec *vector, int count) + { + ssize_t result; + diff --git a/SOURCES/glibc-rh1505492-prototypes-rtkaio.patch b/SOURCES/glibc-rh1505492-prototypes-rtkaio.patch new file mode 100644 index 0000000..c58846f --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-rtkaio.patch @@ -0,0 +1,63 @@ +Introduce prototype-style function definitions to rtkaio (which is not +upstream). + +diff --git a/rtkaio/sysdeps/unix/sysv/linux/kaio_cancel.c b/rtkaio/sysdeps/unix/sysv/linux/kaio_cancel.c +index 018ccb6941d49e26..a531f7d5047860b8 100644 +--- a/rtkaio/sysdeps/unix/sysv/linux/kaio_cancel.c ++++ b/rtkaio/sysdeps/unix/sysv/linux/kaio_cancel.c +@@ -42,9 +42,7 @@ + #include + + int +-aio_cancel (fildes, aiocbp) +- int fildes; +- struct aiocb *aiocbp; ++aio_cancel (int fildes, struct aiocb *aiocbp) + { + struct requestlist *req = NULL; + int result = AIO_ALLDONE; +diff --git a/rtkaio/sysdeps/unix/sysv/linux/kaio_error.c b/rtkaio/sysdeps/unix/sysv/linux/kaio_error.c +index 23859c363a42bfc2..bc582cd3395b622e 100644 +--- a/rtkaio/sysdeps/unix/sysv/linux/kaio_error.c ++++ b/rtkaio/sysdeps/unix/sysv/linux/kaio_error.c +@@ -37,8 +37,7 @@ + #include + + int +-aio_error (aiocbp) +- const struct aiocb *aiocbp; ++aio_error (const struct aiocb *aiocbp) + { + int ret = aiocbp->__error_code; + +diff --git a/rtkaio/sysdeps/unix/sysv/linux/kaio_return.c b/rtkaio/sysdeps/unix/sysv/linux/kaio_return.c +index 1d9f6cbabb8436e1..9d052d47b6f6b4b5 100644 +--- a/rtkaio/sysdeps/unix/sysv/linux/kaio_return.c ++++ b/rtkaio/sysdeps/unix/sysv/linux/kaio_return.c +@@ -38,8 +38,7 @@ + #include + + ssize_t +-aio_return (aiocbp) +- struct aiocb *aiocbp; ++aio_return (struct aiocb *aiocbp) + { + if (aiocbp->__error_code == EINPROGRESS) + __aio_read_one_event (); +diff --git a/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c b/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c +index 6c7b59c6fb0783b5..011393ea4c311d79 100644 +--- a/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c ++++ b/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c +@@ -102,10 +102,8 @@ cleanup (void *arg) + + + int +-aio_suspend (list, nent, timeout) +- const struct aiocb *const list[]; +- int nent; +- const struct timespec *timeout; ++aio_suspend (const struct aiocb *const list[], int nent, ++ const struct timespec *timeout) + { + if (__builtin_expect (nent < 0, 0)) + { diff --git a/SOURCES/glibc-rh1505492-prototypes-rwlock.patch b/SOURCES/glibc-rh1505492-prototypes-rwlock.patch new file mode 100644 index 0000000..f308e9b --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-rwlock.patch @@ -0,0 +1,38 @@ +Introduce prototype-style function definitions for +__pthread_rwlock_rdlock, __pthread_rwlock_wrlock. Upstream did this as +part of: + +commit a832bdd36203fcb37fa5ad25200ef3c1ae205efe +Author: Andi Kleen +Date: Mon Mar 17 05:48:28 2014 -0700 + + Add a fast path for C rd/wrlock v2 + +diff --git a/nptl/pthread_rwlock_rdlock.c b/nptl/pthread_rwlock_rdlock.c +index 2c176c7cb9ab4b7f..4c397d784b82a510 100644 +--- a/nptl/pthread_rwlock_rdlock.c ++++ b/nptl/pthread_rwlock_rdlock.c +@@ -26,8 +26,7 @@ + + /* Acquire read lock for RWLOCK. */ + int +-__pthread_rwlock_rdlock (rwlock) +- pthread_rwlock_t *rwlock; ++__pthread_rwlock_rdlock (pthread_rwlock_t *rwlock) + { + int result = 0; + +diff --git a/nptl/pthread_rwlock_wrlock.c b/nptl/pthread_rwlock_wrlock.c +index 1476d1370d56475a..3dcc42b774eef8de 100644 +--- a/nptl/pthread_rwlock_wrlock.c ++++ b/nptl/pthread_rwlock_wrlock.c +@@ -26,8 +26,7 @@ + + /* Acquire write lock for RWLOCK. */ + int +-__pthread_rwlock_wrlock (rwlock) +- pthread_rwlock_t *rwlock; ++__pthread_rwlock_wrlock (pthread_rwlock_t *rwlock) + { + int result = 0; + diff --git a/SOURCES/glibc-rh1505492-prototypes-s390-pthread_once.patch b/SOURCES/glibc-rh1505492-prototypes-s390-pthread_once.patch new file mode 100644 index 0000000..93d5f57 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-s390-pthread_once.patch @@ -0,0 +1,24 @@ +Introduce protype-style function definition for S390 pthread_once. The +old-style function definition was removed upstream in: + +commit bc89c0fc70ba952f78fc27fc261ec209be0a6732 +Author: Torvald Riegel +Date: Mon Dec 8 18:32:14 2014 +0100 + + Remove custom pthread_once implementation on s390. + +diff --git a/nptl/sysdeps/unix/sysv/linux/s390/pthread_once.c b/nptl/sysdeps/unix/sysv/linux/s390/pthread_once.c +index cd53d77c163661c5..4bce7fec13ea3bb2 100644 +--- a/nptl/sysdeps/unix/sysv/linux/s390/pthread_once.c ++++ b/nptl/sysdeps/unix/sysv/linux/s390/pthread_once.c +@@ -34,9 +34,7 @@ clear_once_control (void *arg) + + + int +-__pthread_once (once_control, init_routine) +- pthread_once_t *once_control; +- void (*init_routine) (void); ++__pthread_once (pthread_once_t *once_control, void (*init_routine) (void)) + { + while (1) + { diff --git a/SOURCES/glibc-rh1505492-prototypes-scandir.patch b/SOURCES/glibc-rh1505492-prototypes-scandir.patch new file mode 100644 index 0000000..8d94766 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-scandir.patch @@ -0,0 +1,51 @@ +Introduce prototypes for scandir, scandirat. This was implemented +upstream in: + +commit d2ee815ad677bba720c4f0275c1d6065f5809e7a +Author: Roland McGrath +Date: Wed May 13 12:34:11 2015 -0700 + + Refactor scandir/scandirat to use common tail. + +Not backported here because of its dependency on the fix for +swbz#17999. + +diff --git a/dirent/scandir.c b/dirent/scandir.c +index 6dce54d64a3effa2..39c4c20e2b22804d 100644 +--- a/dirent/scandir.c ++++ b/dirent/scandir.c +@@ -34,11 +34,9 @@ + + + int +-SCANDIR (dir, namelist, select, cmp) +- const char *dir; +- DIRENT_TYPE ***namelist; +- int (*select) (const DIRENT_TYPE *); +- int (*cmp) (const DIRENT_TYPE **, const DIRENT_TYPE **); ++SCANDIR (const char *dir, DIRENT_TYPE ***namelist, ++ int (*select) (const DIRENT_TYPE *), ++ int (*cmp) (const DIRENT_TYPE **, const DIRENT_TYPE **)) + { + return SCANDIRAT (AT_FDCWD, dir, namelist, select, cmp); + } +diff --git a/dirent/scandirat.c b/dirent/scandirat.c +index c2704baa88ef71d0..0200171a64139933 100644 +--- a/dirent/scandirat.c ++++ b/dirent/scandirat.c +@@ -52,12 +52,9 @@ __scandir_cancel_handler (void *arg) + + + int +-SCANDIRAT (dfd, dir, namelist, select, cmp) +- int dfd; +- const char *dir; +- DIRENT_TYPE ***namelist; +- int (*select) (const DIRENT_TYPE *); +- int (*cmp) (const DIRENT_TYPE **, const DIRENT_TYPE **); ++SCANDIRAT (int dfd, const char *dir, DIRENT_TYPE ***namelist, ++ int (*select) (const DIRENT_TYPE *), ++ int (*cmp) (const DIRENT_TYPE **, const DIRENT_TYPE **)) + { + DIR *dp = __opendirat (dfd, dir); + DIRENT_TYPE **v = NULL; diff --git a/SOURCES/glibc-rh1505492-prototypes-sem_unlink.patch b/SOURCES/glibc-rh1505492-prototypes-sem_unlink.patch new file mode 100644 index 0000000..77adeac --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-sem_unlink.patch @@ -0,0 +1,23 @@ +Introduce prototype-style function definition for sem_unlink. This +happened upstream as part of: + +commit e4f639e4a106d90c6f3159230788653fd6e40a26 +Author: Roland McGrath +Date: Fri Dec 12 13:17:21 2014 -0800 + + NPTL: Refactor named semaphore code to use shm-directory.h + +diff --git a/nptl/sem_unlink.c b/nptl/sem_unlink.c +index 610d82e7a6fe5bd1..1523522c41a52d76 100644 +--- a/nptl/sem_unlink.c ++++ b/nptl/sem_unlink.c +@@ -25,8 +25,7 @@ + + + int +-sem_unlink (name) +- const char *name; ++sem_unlink (const char *name) + { + char *fname; + size_t namelen; diff --git a/SOURCES/glibc-rh1505492-prototypes-sigvec.patch b/SOURCES/glibc-rh1505492-prototypes-sigvec.patch new file mode 100644 index 0000000..ab2582f --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-sigvec.patch @@ -0,0 +1,63 @@ +Change function declarations and definitions related to sigvec. +Addressed upstream with the removal of sigvec in this commit: + +commit 0781a7772ae1385fe8d7a734fdb35df81b1e6590 +Author: Roland McGrath +Date: Fri Nov 14 10:52:16 2014 -0800 + + Remove sigvec. + +diff --git a/include/signal.h b/include/signal.h +index a019395882176073..d9f279c9bf0aca3d 100644 +--- a/include/signal.h ++++ b/include/signal.h +@@ -40,6 +40,7 @@ extern int __sigtimedwait (const sigset_t *__set, siginfo_t *__info, + libc_hidden_proto (__sigtimedwait) + extern int __sigqueue (__pid_t __pid, int __sig, + const union sigval __val); ++struct sigvec; + extern int __sigvec (int __sig, const struct sigvec *__vec, + struct sigvec *__ovec); + extern int __sigreturn (struct sigcontext *__scp); +diff --git a/signal/sigvec.c b/signal/sigvec.c +index e44daf1ab6fd2f39..21e304d944e46c18 100644 +--- a/signal/sigvec.c ++++ b/signal/sigvec.c +@@ -24,10 +24,7 @@ + reset to SIG_DFL before `sv_handler' is entered. If OVEC is non-NULL, + it is filled in with the old information for SIG. */ + int +-__sigvec (sig, vec, ovec) +- int sig; +- const struct sigvec *vec; +- struct sigvec *ovec; ++__sigvec (int sig, const struct sigvec *vec, struct sigvec *ovec) + { + __set_errno (ENOSYS); + return -1; +diff --git a/sysdeps/posix/sigvec.c b/sysdeps/posix/sigvec.c +index 89e3d44d88ce3ee5..6a3ccc8eaf8ae0a5 100644 +--- a/sysdeps/posix/sigvec.c ++++ b/sysdeps/posix/sigvec.c +@@ -43,10 +43,7 @@ static struct sigvec_wrapper_data sigvec_wrapper_data[NSIG]; + reset to SIG_DFL before `sv_handler' is entered. If OVEC is non-NULL, + it is filled in with the old information for SIG. */ + int +-__sigvec (sig, vec, ovec) +- int sig; +- const struct sigvec *vec; +- struct sigvec *ovec; ++__sigvec (int sig, const struct sigvec *vec, struct sigvec *ovec) + { + struct sigaction old; + +@@ -159,8 +156,7 @@ weak_alias (__sigvec, sigvec) + + #ifndef SA_RESETHAND + static void +-sigvec_wrapper_handler (sig) +- int sig; ++sigvec_wrapper_handler (int sig) + { + struct sigvec_wrapper_data *data; + struct sigaction act; diff --git a/SOURCES/glibc-rh1505492-prototypes-stpcpy.patch b/SOURCES/glibc-rh1505492-prototypes-stpcpy.patch new file mode 100644 index 0000000..3490a18 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-stpcpy.patch @@ -0,0 +1,24 @@ +Introduce prototype-style function definition for generic stpcpy. +Upstream part of: + +commit 142e0a9953059bcf5667921f2670efec377be3d5 +Author: Adhemerval Zanella +Date: Tue Jul 28 17:12:25 2015 -0300 + + powerpc: Use default strcpy optimization for POWER7 + +diff --git a/string/stpcpy.c b/string/stpcpy.c +index b74f6e2b489e1f18..8b2c4c5bb7e1ee74 100644 +--- a/string/stpcpy.c ++++ b/string/stpcpy.c +@@ -36,9 +36,7 @@ extern __typeof (__stpcpy) STPCPY; + + /* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ + char * +-__stpcpy (dest, src) +- char *dest; +- const char *src; ++__stpcpy (char *dest, const char *src) + { + char *d = dest; + const char *s = src; diff --git a/SOURCES/glibc-rh1505492-prototypes-timespec_get.patch b/SOURCES/glibc-rh1505492-prototypes-timespec_get.patch new file mode 100644 index 0000000..aae534e --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-timespec_get.patch @@ -0,0 +1,24 @@ +Introduce prototype-style function definition for timespec_get. +Upstream, this was part of this commit: + +commit f534255e4d276ee7b20b45637d16a00b122e5df3 +Author: Adhemerval Zanella +Date: Fri Apr 17 10:58:31 2015 -0300 + + Consolidate vDSO macros and usage + +diff --git a/sysdeps/unix/sysv/linux/timespec_get.c b/sysdeps/unix/sysv/linux/timespec_get.c +index b037abee20c7d30c..8c5c8eae0cc0e579 100644 +--- a/sysdeps/unix/sysv/linux/timespec_get.c ++++ b/sysdeps/unix/sysv/linux/timespec_get.c +@@ -34,9 +34,7 @@ + + /* Set TS to calendar time based in time base BASE. */ + int +-timespec_get (ts, base) +- struct timespec *ts; +- int base; ++timespec_get (struct timespec *ts, int base) + { + switch (base) + { diff --git a/SOURCES/glibc-rh1505492-prototypes-wcschr-1.patch b/SOURCES/glibc-rh1505492-prototypes-wcschr-1.patch new file mode 100644 index 0000000..0d53399 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-wcschr-1.patch @@ -0,0 +1,24 @@ +Prototype-style function definition for wcschr for POWER. Upstream, +this was part of: + +commit 05b5cd1ce51247f986e66b90ad672e89b4b98333 +Author: Adhemerval Zanella +Date: Mon Oct 14 09:23:12 2013 -0500 + + PowerPC: multiarch wcschr for PowerPC32 + +diff --git a/sysdeps/powerpc/powerpc32/power6/wcschr.c b/sysdeps/powerpc/powerpc32/power6/wcschr.c +index 3b4cca15face81da..70efc574f5a13e5a 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wcschr.c ++++ b/sysdeps/powerpc/powerpc32/power6/wcschr.c +@@ -21,9 +21,7 @@ + + /* Find the first occurrence of WC in WCS. */ + wchar_t * +-wcschr (wcs, wc) +- const wchar_t *wcs; +- const wchar_t wc; ++wcschr (const wchar_t *wcs, const wchar_t wc) + { + const wchar_t *wcs2 = wcs + 1; + diff --git a/SOURCES/glibc-rh1505492-prototypes-wcschr-2.patch b/SOURCES/glibc-rh1505492-prototypes-wcschr-2.patch new file mode 100644 index 0000000..9c3e32d --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-wcschr-2.patch @@ -0,0 +1,24 @@ +Introduce prototype-style definition for wcschr. This happened upstream +in: + +commit fb78612a963cfe1299b33b1c60a0c24a206276c3 +Author: Adhemerval Zanella +Date: Wed Feb 25 16:22:10 2015 -0300 + + powerpc: Fix __wcschr static build + +diff --git a/wcsmbs/wcschr.c b/wcsmbs/wcschr.c +index 56511d88176fa1f0..b3fded42692b1797 100644 +--- a/wcsmbs/wcschr.c ++++ b/wcsmbs/wcschr.c +@@ -23,9 +23,7 @@ + #endif + + wchar_t * +-wcschr (wcs, wc) +- const wchar_t *wcs; +- const wchar_t wc; ++wcschr (const wchar_t *wcs, const wchar_t wc) + { + do + if (*wcs == wc) diff --git a/SOURCES/glibc-rh1505492-prototypes-wcsrchr.patch b/SOURCES/glibc-rh1505492-prototypes-wcsrchr.patch new file mode 100644 index 0000000..14ad686 --- /dev/null +++ b/SOURCES/glibc-rh1505492-prototypes-wcsrchr.patch @@ -0,0 +1,24 @@ +Introduce prototype-style function definition for 32-bit POWER wcsrchr. +Upstream removed the old-style function definition in: + +commit bb04e529f60df7138a4fe5f1ed016dd87ade59a3 +Author: Adhemerval Zanella +Date: Mon Oct 14 09:26:07 2013 -0500 + + PowerPC: multiarch wcsrchr for PowerPC32 + +diff --git a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c b/sysdeps/powerpc/powerpc32/power6/wcsrchr.c +index 333650190afff171..4deb44966915679f 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c ++++ b/sysdeps/powerpc/powerpc32/power6/wcsrchr.c +@@ -21,9 +21,7 @@ + + /* Find the last occurrence of WC in WCS. */ + wchar_t * +-wcsrchr (wcs, wc) +- const wchar_t *wcs; +- const wchar_t wc; ++wcsrchr (const wchar_t *wcs, const wchar_t wc) + { + const wchar_t *wcs2 = wcs + 1; + const wchar_t *retval = NULL; diff --git a/SOURCES/glibc-rh1505492-register.patch b/SOURCES/glibc-rh1505492-register.patch new file mode 100644 index 0000000..9616606 --- /dev/null +++ b/SOURCES/glibc-rh1505492-register.patch @@ -0,0 +1,1818 @@ +commit 2e09a79ada1f6d92809a037d41895e3d9302ad59 +Author: Joseph Myers +Date: Fri Jun 7 22:24:35 2013 +0000 + + Avoid use of "register" as optimization hint. + +Conflicts: + hurd/hurdmalloc.c + (Adjusted for missing previous backport.) + resolv/arpa/nameser.h + resolv/compat-gethnamaddr.c + resolv/ns_print.c + resolv/res_init.c + resolv/res_mkquery.c + (Changes were already part of the stub resolver rebase + in glibc-rh677316-resolv.patch.) + time/tzset.c + (Changes were already part of the fix for rhbz#1234449.) + wcsmbs/wcsrchr.c + (Resolve textual conflict due to glibc-rh731837-16.patch.) + +diff --git a/bits/byteswap.h b/bits/byteswap.h +index 7e5daedb83e29a4c..068a824539a4a302 100644 +--- a/bits/byteswap.h ++++ b/bits/byteswap.h +@@ -48,7 +48,7 @@ __bswap_32 (unsigned int __bsx) + # else + # define __bswap_32(x) \ + (__extension__ \ +- ({ register unsigned int __bsx = (x); __bswap_constant_32 (__bsx); })) ++ ({ unsigned int __bsx = (x); __bswap_constant_32 (__bsx); })) + # endif + #else + static __inline unsigned int +diff --git a/crypt/crypt.c b/crypt/crypt.c +index 3360639139715348..34b8f2e280263f7a 100644 +--- a/crypt/crypt.c ++++ b/crypt/crypt.c +@@ -88,8 +88,8 @@ _ufc_doit_r(itr, __data, res) + { + int i; + long64 l, r, s, *k; +- register long64 *sb01 = (long64*)__data->sb0; +- register long64 *sb23 = (long64*)__data->sb2; ++ long64 *sb01 = (long64*)__data->sb0; ++ long64 *sb23 = (long64*)__data->sb2; + + l = (((long64)res[0]) << 32) | ((long64)res[1]); + r = (((long64)res[2]) << 32) | ((long64)res[3]); +diff --git a/debug/stpcpy_chk.c b/debug/stpcpy_chk.c +index 2bb7b518447b8b66..3934d132d930093c 100644 +--- a/debug/stpcpy_chk.c ++++ b/debug/stpcpy_chk.c +@@ -29,8 +29,8 @@ __stpcpy_chk (dest, src, destlen) + const char *src; + size_t destlen; + { +- register char *d = dest; +- register const char *s = src; ++ char *d = dest; ++ const char *s = src; + + do + { +diff --git a/debug/wcscat_chk.c b/debug/wcscat_chk.c +index 27d9ee5f90853048..c2ac552c5fd34827 100644 +--- a/debug/wcscat_chk.c ++++ b/debug/wcscat_chk.c +@@ -23,8 +23,8 @@ + wchar_t * + __wcscat_chk (wchar_t *dest, const wchar_t *src, size_t destlen) + { +- register wchar_t *s1 = dest; +- register const wchar_t *s2 = src; ++ wchar_t *s1 = dest; ++ const wchar_t *s2 = src; + wchar_t c; + + /* Find the end of the string. */ +diff --git a/gmon/gmon.c b/gmon/gmon.c +index 0d2ed0594e4baf1e..9774d57ccced2079 100644 +--- a/gmon/gmon.c ++++ b/gmon/gmon.c +@@ -102,7 +102,7 @@ __monstartup (lowpc, highpc) + u_long lowpc; + u_long highpc; + { +- register int o; ++ int o; + char *cp; + struct gmonparam *p = &_gmonparam; + +diff --git a/gmon/mcount.c b/gmon/mcount.c +index 5a4a2499d461acc7..0c2acd2890dd7ed9 100644 +--- a/gmon/mcount.c ++++ b/gmon/mcount.c +@@ -58,10 +58,10 @@ static char sccsid[] = "@(#)mcount.c 8.1 (Berkeley) 6/4/93"; + */ + _MCOUNT_DECL(frompc, selfpc) /* _mcount; may be static, inline, etc */ + { +- register ARCINDEX *frompcindex; +- register struct tostruct *top, *prevtop; +- register struct gmonparam *p; +- register ARCINDEX toindex; ++ ARCINDEX *frompcindex; ++ struct tostruct *top, *prevtop; ++ struct gmonparam *p; ++ ARCINDEX toindex; + int i; + + p = &_gmonparam; +diff --git a/hurd/hurdmalloc.c b/hurd/hurdmalloc.c +index 12da1f2abc50ef0a..886b40208da56866 100644 +--- a/hurd/hurdmalloc.c ++++ b/hurd/hurdmalloc.c +@@ -171,10 +171,10 @@ malloc_init (void) + static void + more_memory(int size, free_list_t fl) + { +- register int amount; +- register int n; ++ int amount; ++ int n; + vm_address_t where; +- register header_t h; ++ header_t h; + kern_return_t r; + + if (size <= vm_page_size) { +@@ -203,11 +203,11 @@ more_memory(int size, free_list_t fl) + /* Declaration changed to standard one for GNU. */ + void * + malloc(size) +- register size_t size; ++ size_t size; + { +- register int i, n; +- register free_list_t fl; +- register header_t h; ++ int i, n; ++ free_list_t fl; ++ header_t h; + + if ((int) size < 0) /* sanity check */ + return 0; +@@ -272,9 +272,9 @@ void + free(base) + void *base; + { +- register header_t h; +- register free_list_t fl; +- register int i; ++ header_t h; ++ free_list_t fl; ++ int i; + + if (base == 0) + return; +@@ -322,9 +322,9 @@ realloc(old_base, new_size) + void *old_base; + size_t new_size; + { +- register header_t h; +- register free_list_t fl; +- register int i; ++ header_t h; ++ free_list_t fl; ++ int i; + unsigned int old_size; + char *new_base; + +@@ -382,10 +382,10 @@ realloc(old_base, new_size) + void + print_malloc_free_list() + { +- register int i, size; +- register free_list_t fl; +- register int n; +- register header_t h; ++ int i, size; ++ free_list_t fl; ++ int n; ++ header_t h; + int total_used = 0; + int total_free = 0; + +@@ -416,7 +416,7 @@ malloc_fork_prepare(void) + * malloc critical section. + */ + { +- register int i; ++ int i; + + for (i = 0; i < NBUCKETS; i++) { + spin_lock(&malloc_free_list[i].lock); +@@ -429,7 +429,7 @@ malloc_fork_parent(void) + * Called in the parent process after a fork() to resume normal operation. + */ + { +- register int i; ++ int i; + + for (i = NBUCKETS-1; i >= 0; i--) { + spin_unlock(&malloc_free_list[i].lock); +@@ -442,7 +442,7 @@ malloc_fork_child(void) + * Called in the child process after a fork() to resume normal operation. + */ + { +- register int i; ++ int i; + + for (i = NBUCKETS-1; i >= 0; i--) { + spin_unlock(&malloc_free_list[i].lock); +diff --git a/include/rpc/auth_des.h b/include/rpc/auth_des.h +index c14f069668810930..0e9db1a226f4df95 100644 +--- a/include/rpc/auth_des.h ++++ b/include/rpc/auth_des.h +@@ -7,12 +7,12 @@ libc_hidden_proto (getsecretkey) + libc_hidden_proto (rtime) + + extern bool_t xdr_authdes_cred (XDR *xdrs, struct authdes_cred *cred); +-extern bool_t xdr_authdes_verf (register XDR *xdrs, +- register struct authdes_verf *verf); ++extern bool_t xdr_authdes_verf (XDR *xdrs, ++ struct authdes_verf *verf); + struct svc_req; + struct rpc_msg; +-extern enum auth_stat _svcauth_des (register struct svc_req *rqst, +- register struct rpc_msg *msg); ++extern enum auth_stat _svcauth_des (struct svc_req *rqst, ++ struct rpc_msg *msg); + + + #define DECLARE_NSS_PROTOTYPES(service) \ +diff --git a/inet/inet_lnaof.c b/inet/inet_lnaof.c +index 0e115a4420920225..c993c8b8471f4215 100644 +--- a/inet/inet_lnaof.c ++++ b/inet/inet_lnaof.c +@@ -44,7 +44,7 @@ in_addr_t + inet_lnaof(in) + struct in_addr in; + { +- register u_int32_t i = ntohl(in.s_addr); ++ u_int32_t i = ntohl(in.s_addr); + + if (IN_CLASSA(i)) + return ((i)&IN_CLASSA_HOST); +diff --git a/inet/inet_net.c b/inet/inet_net.c +index d58f1ae8e3d89bf5..68e232f3d3dc1e1d 100644 +--- a/inet/inet_net.c ++++ b/inet/inet_net.c +@@ -43,10 +43,10 @@ static char sccsid[] = "@(#)inet_network.c 8.1 (Berkeley) 6/4/93"; + */ + u_int32_t + inet_network(cp) +- register const char *cp; ++ const char *cp; + { +- register u_int32_t val, base, n, i; +- register char c; ++ u_int32_t val, base, n, i; ++ char c; + u_int32_t parts[4], *pp = parts; + int digit; + +diff --git a/inet/inet_netof.c b/inet/inet_netof.c +index e49177a0f4b79bbf..9b0aed992e9ba65f 100644 +--- a/inet/inet_netof.c ++++ b/inet/inet_netof.c +@@ -43,7 +43,7 @@ in_addr_t + inet_netof(in) + struct in_addr in; + { +- register u_int32_t i = ntohl(in.s_addr); ++ u_int32_t i = ntohl(in.s_addr); + + if (IN_CLASSA(i)) + return (((i)&IN_CLASSA_NET) >> IN_CLASSA_NSHIFT); +diff --git a/inet/rcmd.c b/inet/rcmd.c +index af4fad34c95e9af7..7da79b0730d9ad3a 100644 +--- a/inet/rcmd.c ++++ b/inet/rcmd.c +@@ -769,8 +769,8 @@ __validuser2_sa(hostf, ra, ralen, luser, ruser, rhost) + size_t ralen; + const char *luser, *ruser, *rhost; + { +- register const char *user; +- register char *p; ++ const char *user; ++ char *p; + int hcheck, ucheck; + char *buf = NULL; + size_t bufsize = 0; +diff --git a/io/fts.c b/io/fts.c +index 5ba202b8aa8b6669..c9c054d6d36ab20f 100644 +--- a/io/fts.c ++++ b/io/fts.c +@@ -87,12 +87,12 @@ static int fts_safe_changedir (FTS *, FTSENT *, int, const char *) + FTS * + fts_open(argv, options, compar) + char * const *argv; +- register int options; ++ int options; + int (*compar) (const FTSENT **, const FTSENT **); + { +- register FTS *sp; +- register FTSENT *p, *root; +- register int nitems; ++ FTS *sp; ++ FTSENT *p, *root; ++ int nitems; + FTSENT *parent = NULL; + FTSENT *tmp; + +@@ -204,10 +204,10 @@ static void + internal_function + fts_load(sp, p) + FTS *sp; +- register FTSENT *p; ++ FTSENT *p; + { +- register int len; +- register char *cp; ++ int len; ++ char *cp; + + /* + * Load the stream structure for the next traversal. Since we don't +@@ -231,7 +231,7 @@ int + fts_close(sp) + FTS *sp; + { +- register FTSENT *freep, *p; ++ FTSENT *freep, *p; + int saved_errno; + + /* +@@ -283,11 +283,11 @@ fts_close(sp) + + FTSENT * + fts_read(sp) +- register FTS *sp; ++ FTS *sp; + { +- register FTSENT *p, *tmp; +- register int instr; +- register char *t; ++ FTSENT *p, *tmp; ++ int instr; ++ char *t; + int saved_errno; + + /* If finished or unrecoverable error, return NULL. */ +@@ -495,10 +495,10 @@ fts_set(sp, p, instr) + + FTSENT * + fts_children(sp, instr) +- register FTS *sp; ++ FTS *sp; + int instr; + { +- register FTSENT *p; ++ FTSENT *p; + int fd; + + if (instr != 0 && instr != FTS_NAMEONLY) { +@@ -578,12 +578,12 @@ fts_children(sp, instr) + static FTSENT * + internal_function + fts_build(sp, type) +- register FTS *sp; ++ FTS *sp; + int type; + { +- register struct dirent *dp; +- register FTSENT *p, *head; +- register int nitems; ++ struct dirent *dp; ++ FTSENT *p, *head; ++ int nitems; + FTSENT *cur, *tail; + DIR *dirp; + void *oldaddr; +@@ -848,12 +848,12 @@ static u_short + internal_function + fts_stat(sp, p, follow) + FTS *sp; +- register FTSENT *p; ++ FTSENT *p; + int follow; + { +- register FTSENT *t; +- register dev_t dev; +- register ino_t ino; ++ FTSENT *t; ++ dev_t dev; ++ ino_t ino; + struct stat *sbp, sb; + int saved_errno; + +@@ -933,9 +933,9 @@ internal_function + fts_sort(sp, head, nitems) + FTS *sp; + FTSENT *head; +- register int nitems; ++ int nitems; + { +- register FTSENT **ap, *p; ++ FTSENT **ap, *p; + + /* + * Construct an array of pointers to the structures and call qsort(3). +@@ -973,7 +973,7 @@ fts_alloc(sp, name, namelen) + const char *name; + size_t namelen; + { +- register FTSENT *p; ++ FTSENT *p; + size_t len; + + /* +@@ -1009,9 +1009,9 @@ fts_alloc(sp, name, namelen) + static void + internal_function + fts_lfree(head) +- register FTSENT *head; ++ FTSENT *head; + { +- register FTSENT *p; ++ FTSENT *p; + + /* Free a linked list of structures. */ + while ((p = head)) { +diff --git a/libio/fileops.c b/libio/fileops.c +index ff5941bd2f20b7de..ae56437168efc524 100644 +--- a/libio/fileops.c ++++ b/libio/fileops.c +@@ -1327,7 +1327,7 @@ _IO_new_file_xsputn (f, data, n) + const void *data; + _IO_size_t n; + { +- register const char *s = (const char *) data; ++ const char *s = (const char *) data; + _IO_size_t to_do = n; + int must_flush = 0; + _IO_size_t count = 0; +@@ -1344,7 +1344,7 @@ _IO_new_file_xsputn (f, data, n) + count = f->_IO_buf_end - f->_IO_write_ptr; + if (count >= n) + { +- register const char *p; ++ const char *p; + for (p = s + n; p > s; ) + { + if (*--p == '\n') +@@ -1410,9 +1410,9 @@ _IO_file_xsgetn (fp, data, n) + void *data; + _IO_size_t n; + { +- register _IO_size_t want, have; +- register _IO_ssize_t count; +- register char *s = data; ++ _IO_size_t want, have; ++ _IO_ssize_t count; ++ char *s = data; + + want = n; + +@@ -1512,9 +1512,9 @@ _IO_file_xsgetn_mmap (fp, data, n) + void *data; + _IO_size_t n; + { +- register _IO_size_t have; ++ _IO_size_t have; + char *read_ptr = fp->_IO_read_ptr; +- register char *s = (char *) data; ++ char *s = (char *) data; + + have = fp->_IO_read_end - fp->_IO_read_ptr; + +diff --git a/libio/iofopncook.c b/libio/iofopncook.c +index b1c0d7f6ccc4db15..8240601d4eec468b 100644 +--- a/libio/iofopncook.c ++++ b/libio/iofopncook.c +@@ -30,9 +30,9 @@ + #include + + /* Prototyped for local functions. */ +-static _IO_ssize_t _IO_cookie_read (register _IO_FILE* fp, void* buf, ++static _IO_ssize_t _IO_cookie_read (_IO_FILE* fp, void* buf, + _IO_ssize_t size); +-static _IO_ssize_t _IO_cookie_write (register _IO_FILE* fp, ++static _IO_ssize_t _IO_cookie_write (_IO_FILE* fp, + const void* buf, _IO_ssize_t size); + static _IO_off64_t _IO_cookie_seek (_IO_FILE *fp, _IO_off64_t offset, int dir); + static _IO_off64_t _IO_cookie_seekoff (_IO_FILE *fp, _IO_off64_t offset, +diff --git a/libio/oldfileops.c b/libio/oldfileops.c +index 7060ea8c346d15cc..0d778fa253822171 100644 +--- a/libio/oldfileops.c ++++ b/libio/oldfileops.c +@@ -697,7 +697,7 @@ _IO_old_file_xsputn (f, data, n) + const void *data; + _IO_size_t n; + { +- register const char *s = (char *) data; ++ const char *s = (char *) data; + _IO_size_t to_do = n; + int must_flush = 0; + _IO_size_t count = 0; +@@ -714,7 +714,7 @@ _IO_old_file_xsputn (f, data, n) + count = f->_IO_buf_end - f->_IO_write_ptr; + if (count >= n) + { +- register const char *p; ++ const char *p; + for (p = s + n; p > s; ) + { + if (*--p == '\n') +@@ -746,8 +746,8 @@ _IO_old_file_xsputn (f, data, n) + } + else + { +- register char *p = f->_IO_write_ptr; +- register int i = (int) count; ++ char *p = f->_IO_write_ptr; ++ int i = (int) count; + while (--i >= 0) + *p++ = *s++; + f->_IO_write_ptr = p; +diff --git a/libio/wfileops.c b/libio/wfileops.c +index 1fe3439d21152fce..5ed1a922ae6ccbd0 100644 +--- a/libio/wfileops.c ++++ b/libio/wfileops.c +@@ -966,7 +966,7 @@ _IO_wfile_xsputn (f, data, n) + const void *data; + _IO_size_t n; + { +- register const wchar_t *s = (const wchar_t *) data; ++ const wchar_t *s = (const wchar_t *) data; + _IO_size_t to_do = n; + int must_flush = 0; + _IO_size_t count; +@@ -984,7 +984,7 @@ _IO_wfile_xsputn (f, data, n) + count = f->_wide_data->_IO_buf_end - f->_wide_data->_IO_write_ptr; + if (count >= n) + { +- register const wchar_t *p; ++ const wchar_t *p; + for (p = s + n; p > s; ) + { + if (*--p == L'\n') +@@ -1014,8 +1014,8 @@ _IO_wfile_xsputn (f, data, n) + } + else + { +- register wchar_t *p = f->_wide_data->_IO_write_ptr; +- register int i = (int) count; ++ wchar_t *p = f->_wide_data->_IO_write_ptr; ++ int i = (int) count; + while (--i >= 0) + *p++ = *s++; + f->_wide_data->_IO_write_ptr = p; +diff --git a/mach/msgserver.c b/mach/msgserver.c +index 915a08868a34378d..b087e7263511b554 100644 +--- a/mach/msgserver.c ++++ b/mach/msgserver.c +@@ -78,8 +78,8 @@ __mach_msg_server_timeout (boolean_t (*demux) (mach_msg_header_t *request, + mach_msg_option_t option, + mach_msg_timeout_t timeout) + { +- register mig_reply_header_t *request, *reply; +- register mach_msg_return_t mr; ++ mig_reply_header_t *request, *reply; ++ mach_msg_return_t mr; + + if (max_size == 0) + { +diff --git a/malloc/obstack.c b/malloc/obstack.c +index 5786da0aa4af81da..e3ce53f987727eca 100644 +--- a/malloc/obstack.c ++++ b/malloc/obstack.c +@@ -155,7 +155,7 @@ _obstack_begin (struct obstack *h, + void *(*chunkfun) (long), + void (*freefun) (void *)) + { +- register struct _obstack_chunk *chunk; /* points to new chunk */ ++ struct _obstack_chunk *chunk; /* points to new chunk */ + + if (alignment == 0) + alignment = DEFAULT_ALIGNMENT; +@@ -202,7 +202,7 @@ _obstack_begin_1 (struct obstack *h, int size, int alignment, + void (*freefun) (void *, void *), + void *arg) + { +- register struct _obstack_chunk *chunk; /* points to new chunk */ ++ struct _obstack_chunk *chunk; /* points to new chunk */ + + if (alignment == 0) + alignment = DEFAULT_ALIGNMENT; +@@ -253,11 +253,11 @@ _obstack_begin_1 (struct obstack *h, int size, int alignment, + void + _obstack_newchunk (struct obstack *h, int length) + { +- register struct _obstack_chunk *old_chunk = h->chunk; +- register struct _obstack_chunk *new_chunk; +- register long new_size; +- register long obj_size = h->next_free - h->object_base; +- register long i; ++ struct _obstack_chunk *old_chunk = h->chunk; ++ struct _obstack_chunk *new_chunk; ++ long new_size; ++ long obj_size = h->next_free - h->object_base; ++ long i; + long already; + char *object_base; + +@@ -330,8 +330,8 @@ int _obstack_allocated_p (struct obstack *h, void *obj); + int + _obstack_allocated_p (struct obstack *h, void *obj) + { +- register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ +- register struct _obstack_chunk *plp; /* point to previous chunk if any */ ++ struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ ++ struct _obstack_chunk *plp; /* point to previous chunk if any */ + + lp = (h)->chunk; + /* We use >= rather than > since the object cannot be exactly at +@@ -353,8 +353,8 @@ _obstack_allocated_p (struct obstack *h, void *obj) + void + obstack_free (struct obstack *h, void *obj) + { +- register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ +- register struct _obstack_chunk *plp; /* point to previous chunk if any */ ++ struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ ++ struct _obstack_chunk *plp; /* point to previous chunk if any */ + + lp = h->chunk; + /* We use >= because there cannot be an object at the beginning of a chunk. +@@ -389,8 +389,8 @@ strong_alias (obstack_free, _obstack_free) + int + _obstack_memory_used (struct obstack *h) + { +- register struct _obstack_chunk* lp; +- register int nbytes = 0; ++ struct _obstack_chunk* lp; ++ int nbytes = 0; + + for (lp = h->chunk; lp != 0; lp = lp->prev) + { +diff --git a/misc/getttyent.c b/misc/getttyent.c +index b1e6376fb66dc260..18944e2b99150aea 100644 +--- a/misc/getttyent.c ++++ b/misc/getttyent.c +@@ -47,7 +47,7 @@ struct ttyent * + getttynam(tty) + const char *tty; + { +- register struct ttyent *t; ++ struct ttyent *t; + + setttyent(); + while ((t = getttyent())) +@@ -64,8 +64,8 @@ struct ttyent * + getttyent() + { + static struct ttyent tty; +- register int c; +- register char *p; ++ int c; ++ char *p; + #define MAXLINELENGTH 100 + static char line[MAXLINELENGTH]; + +@@ -142,10 +142,10 @@ libc_hidden_def (getttyent) + static char * + internal_function + skip(p) +- register char *p; ++ char *p; + { +- register char *t; +- register int c, q; ++ char *t; ++ int c, q; + + for (q = 0, t = p; (c = *p) != '\0'; p++) { + if (c == '"') { +@@ -177,7 +177,7 @@ skip(p) + static char * + internal_function + value(p) +- register char *p; ++ char *p; + { + + return ((p = index(p, '=')) ? ++p : NULL); +diff --git a/misc/getusershell.c b/misc/getusershell.c +index 2e8d97e65c77ec4a..677377c3f7fb9081 100644 +--- a/misc/getusershell.c ++++ b/misc/getusershell.c +@@ -95,8 +95,8 @@ setusershell() + static char ** + initshells() + { +- register char **sp, *cp; +- register FILE *fp; ++ char **sp, *cp; ++ FILE *fp; + struct stat64 statb; + size_t flen; + +diff --git a/misc/syslog.c b/misc/syslog.c +index 748361fc8c44b81f..4976e89b6ea56364 100644 +--- a/misc/syslog.c ++++ b/misc/syslog.c +@@ -229,7 +229,7 @@ __vsyslog_chk(int pri, int flag, const char *fmt, va_list ap) + /* Output to stderr if requested. */ + if (LogStat & LOG_PERROR) { + struct iovec iov[2]; +- register struct iovec *v = iov; ++ struct iovec *v = iov; + + v->iov_base = buf + msgoff; + v->iov_len = bufsize - msgoff; +diff --git a/misc/ttyslot.c b/misc/ttyslot.c +index 5872f23fd0b6ffcb..75ca6a2d42d2c79d 100644 +--- a/misc/ttyslot.c ++++ b/misc/ttyslot.c +@@ -40,9 +40,9 @@ static char sccsid[] = "@(#)ttyslot.c 8.1 (Berkeley) 6/4/93"; + int + ttyslot() + { +- register struct ttyent *ttyp; +- register int slot; +- register char *p; ++ struct ttyent *ttyp; ++ int slot; ++ char *p; + int cnt; + size_t buflen = __sysconf (_SC_TTY_NAME_MAX) + 1; + char *name; +diff --git a/nis/nis_hash.c b/nis/nis_hash.c +index 19b744c73f7208c9..c36ed1d5cbf56457 100644 +--- a/nis/nis_hash.c ++++ b/nis/nis_hash.c +@@ -29,11 +29,11 @@ + * OZ's original sdbm hash + */ + uint32_t +-__nis_hash (const void *keyarg, register size_t len) ++__nis_hash (const void *keyarg, size_t len) + { +- register const u_char *key; +- register size_t loop; +- register uint32_t h; ++ const u_char *key; ++ size_t loop; ++ uint32_t h; + + #define HASHC h = *key++ + 65599 * h + +diff --git a/ports/sysdeps/ia64/bits/byteswap-16.h b/ports/sysdeps/ia64/bits/byteswap-16.h +index 4a53ffaf6d7c5f92..8e71ac1a779bfca4 100644 +--- a/ports/sysdeps/ia64/bits/byteswap-16.h ++++ b/ports/sysdeps/ia64/bits/byteswap-16.h +@@ -23,7 +23,7 @@ + #if defined __GNUC__ && __GNUC__ >= 2 + # define __bswap_16(x) \ + (__extension__ \ +- ({ register unsigned short int __v, __x = (unsigned short int) (x); \ ++ ({ unsigned short int __v, __x = (unsigned short int) (x); \ + if (__builtin_constant_p (x)) \ + __v = __bswap_constant_16 (__x); \ + else \ +diff --git a/ports/sysdeps/ia64/bits/byteswap.h b/ports/sysdeps/ia64/bits/byteswap.h +index d363c3e1cf7ad2df..28646f11ae941606 100644 +--- a/ports/sysdeps/ia64/bits/byteswap.h ++++ b/ports/sysdeps/ia64/bits/byteswap.h +@@ -38,7 +38,7 @@ + #if defined __GNUC__ && __GNUC__ >= 2 + # define __bswap_32(x) \ + (__extension__ \ +- ({ register unsigned int __v, __x = (x); \ ++ ({ unsigned int __v, __x = (x); \ + if (__builtin_constant_p (x)) \ + __v = __bswap_constant_32 (__x); \ + else \ +@@ -70,7 +70,7 @@ __bswap_32 (unsigned int __bsx) + + # define __bswap_64(x) \ + (__extension__ \ +- ({ register unsigned long int __v, __x = (x); \ ++ ({ unsigned long int __v, __x = (x); \ + if (__builtin_constant_p (x)) \ + __v = __bswap_constant_64 (__x); \ + else \ +diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c +index 89901f15b303f6ce..7ffa3a9944630a0c 100644 +--- a/posix/fnmatch_loop.c ++++ b/posix/fnmatch_loop.c +@@ -46,8 +46,8 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + struct STRUCT *ends; + size_t alloca_used; + { +- register const CHAR *p = pattern, *n = string; +- register UCHAR c; ++ const CHAR *p = pattern, *n = string; ++ UCHAR c; + #ifdef _LIBC + # if WIDE_CHAR_VERSION + const char *collseq = (const char *) +@@ -236,7 +236,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + /* Nonzero if the sense of the character class is inverted. */ + const CHAR *p_init = p; + const CHAR *n_init = n; +- register int not; ++ int not; + CHAR cold; + UCHAR fn; + +diff --git a/posix/getconf.c b/posix/getconf.c +index aa0dd86afbb46904..9cb8f29be28466ff 100644 +--- a/posix/getconf.c ++++ b/posix/getconf.c +@@ -1043,7 +1043,7 @@ usage (void) + static void + print_all (const char *path) + { +- register const struct conf *c; ++ const struct conf *c; + size_t clen; + long int value; + char *cvalue; +@@ -1087,7 +1087,7 @@ print_all (const char *path) + int + main (int argc, char *argv[]) + { +- register const struct conf *c; ++ const struct conf *c; + + /* Set locale. Do not set LC_ALL because the other categories must + not be affected (according to POSIX.2). */ +diff --git a/posix/getopt.c b/posix/getopt.c +index 537c97741fb37aef..dc2a000487c16225 100644 +--- a/posix/getopt.c ++++ b/posix/getopt.c +@@ -228,7 +228,7 @@ exchange (char **argv, struct _getopt_data *d) + { + /* Bottom segment is the short one. */ + int len = middle - bottom; +- register int i; ++ int i; + + /* Swap it with the top part of the top segment. */ + for (i = 0; i < len; i++) +@@ -245,7 +245,7 @@ exchange (char **argv, struct _getopt_data *d) + { + /* Top segment is the short one. */ + int len = top - middle; +- register int i; ++ int i; + + /* Swap it with the bottom part of the bottom segment. */ + for (i = 0; i < len; i++) +diff --git a/posix/glob.c b/posix/glob.c +index e09314712d68c1b8..8c7a80085128475a 100644 +--- a/posix/glob.c ++++ b/posix/glob.c +@@ -1264,7 +1264,7 @@ libc_hidden_def (glob) + /* Free storage allocated in PGLOB by a previous `glob' call. */ + void + globfree (pglob) +- register glob_t *pglob; ++ glob_t *pglob; + { + if (pglob->gl_pathv != NULL) + { +@@ -1304,7 +1304,7 @@ collated_compare (const void *a, const void *b) + static int + prefix_array (const char *dirname, char **array, size_t n) + { +- register size_t i; ++ size_t i; + size_t dirlen = strlen (dirname); + #if defined __MSDOS__ || defined WINDOWS32 + int sep_char = '/'; +@@ -1363,7 +1363,7 @@ __glob_pattern_type (pattern, quote) + const char *pattern; + int quote; + { +- register const char *p; ++ const char *p; + int ret = 0; + + for (p = pattern; *p != '\0'; ++p) +diff --git a/stdio-common/printf_fp.c b/stdio-common/printf_fp.c +index 90ab807390114749..7ffc72955323a555 100644 +--- a/stdio-common/printf_fp.c ++++ b/stdio-common/printf_fp.c +@@ -72,7 +72,7 @@ + #define outchar(ch) \ + do \ + { \ +- register const int outc = (ch); \ ++ const int outc = (ch); \ + if (putc (outc, fp) == EOF) \ + { \ + if (buffer_malloced) \ +@@ -85,7 +85,7 @@ + #define PRINT(ptr, wptr, len) \ + do \ + { \ +- register size_t outlen = (len); \ ++ size_t outlen = (len); \ + if (len > 20) \ + { \ + if (PUT (fp, wide ? (const char *) wptr : ptr, outlen) != outlen) \ +diff --git a/stdio-common/printf_fphex.c b/stdio-common/printf_fphex.c +index 5d31f5f6204b612b..2310e02c8344997a 100644 +--- a/stdio-common/printf_fphex.c ++++ b/stdio-common/printf_fphex.c +@@ -52,7 +52,7 @@ + #define outchar(ch) \ + do \ + { \ +- register const int outc = (ch); \ ++ const int outc = (ch); \ + if (putc (outc, fp) == EOF) \ + return -1; \ + ++done; \ +@@ -61,7 +61,7 @@ + #define PRINT(ptr, wptr, len) \ + do \ + { \ +- register size_t outlen = (len); \ ++ size_t outlen = (len); \ + if (wide) \ + while (outlen-- > 0) \ + outchar (*wptr++); \ +diff --git a/stdio-common/printf_size.c b/stdio-common/printf_size.c +index 0cdfeee7f2e4f7bb..f5acf87eda7ddb42 100644 +--- a/stdio-common/printf_size.c ++++ b/stdio-common/printf_size.c +@@ -42,7 +42,7 @@ + #define outchar(ch) \ + do \ + { \ +- register const int outc = (ch); \ ++ const int outc = (ch); \ + if (putc (outc, fp) == EOF) \ + return -1; \ + ++done; \ +@@ -51,7 +51,7 @@ + #define PRINT(ptr, wptr, len) \ + do \ + { \ +- register size_t outlen = (len); \ ++ size_t outlen = (len); \ + if (len > 20) \ + { \ + if (PUT (fp, wide ? (const char *) wptr : ptr, outlen) != outlen) \ +diff --git a/stdio-common/test_rdwr.c b/stdio-common/test_rdwr.c +index 6fa1e1ce2e6e24c7..ce3ad5aefb8d8ea7 100644 +--- a/stdio-common/test_rdwr.c ++++ b/stdio-common/test_rdwr.c +@@ -78,7 +78,7 @@ main (int argc, char **argv) + long int where = ftell (f); + if (where == (long int) replace_from) + { +- register size_t i; ++ size_t i; + for (i = replace_from; i < replace_to; ++i) + if (putc(replace[i], f) == EOF) + { +diff --git a/stdio-common/tfformat.c b/stdio-common/tfformat.c +index 7704ddde39856221..5cb366dd48eef16a 100644 +--- a/stdio-common/tfformat.c ++++ b/stdio-common/tfformat.c +@@ -4050,7 +4050,7 @@ sprint_double_type sprint_doubles[] = + int required_precision = 13; + + static int +-matches (register char *result, register const char *desired) ++matches (char *result, const char *desired) + { + int digits_seen = 0; + for (;; result++, desired++) { +diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c +index 97805989f6db70bf..a52c8f8cb17eaf58 100644 +--- a/stdio-common/vfprintf.c ++++ b/stdio-common/vfprintf.c +@@ -147,7 +147,7 @@ + #define outchar(Ch) \ + do \ + { \ +- register const INT_T outc = (Ch); \ ++ const INT_T outc = (Ch); \ + if (PUTC (outc, s) == EOF || done == INT_MAX) \ + { \ + done = -1; \ +@@ -2075,7 +2075,7 @@ printf_unknown (FILE *s, const struct printf_info *info, + CHAR_T work_buffer[MAX (sizeof (info->width), sizeof (info->prec)) * 3]; + CHAR_T *const workend + = &work_buffer[sizeof (work_buffer) / sizeof (CHAR_T)]; +- register CHAR_T *w; ++ CHAR_T *w; + + outchar (L_('%')); + +@@ -2281,12 +2281,12 @@ static const struct _IO_jump_t _IO_helper_jumps libio_vtable = + + static int + internal_function +-buffered_vfprintf (register _IO_FILE *s, const CHAR_T *format, ++buffered_vfprintf (_IO_FILE *s, const CHAR_T *format, + _IO_va_list args) + { + CHAR_T buf[_IO_BUFSIZ]; + struct helper_file helper; +- register _IO_FILE *hp = (_IO_FILE *) &helper._f; ++ _IO_FILE *hp = (_IO_FILE *) &helper._f; + int result, to_flush; + + /* Orient the stream. */ +diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c +index d532bb54c31cdcb1..1db8487c1a133996 100644 +--- a/stdio-common/vfscanf.c ++++ b/stdio-common/vfscanf.c +@@ -206,13 +206,13 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, + #endif + { + va_list arg; +- register const CHAR_T *f = format; +- register UCHAR_T fc; /* Current character of the format. */ +- register WINT_T done = 0; /* Assignments done. */ +- register size_t read_in = 0; /* Chars read in. */ +- register WINT_T c = 0; /* Last char read. */ +- register int width; /* Maximum field width. */ +- register int flags; /* Modifiers for current format element. */ ++ const CHAR_T *f = format; ++ UCHAR_T fc; /* Current character of the format. */ ++ WINT_T done = 0; /* Assignments done. */ ++ size_t read_in = 0; /* Chars read in. */ ++ WINT_T c = 0; /* Last char read. */ ++ int width; /* Maximum field width. */ ++ int flags; /* Modifiers for current format element. */ + int errval = 0; + #ifndef COMPILE_WSCANF + __locale_t loc = _NL_CURRENT_LOCALE; +diff --git a/stdio-common/xbug.c b/stdio-common/xbug.c +index 76a8c547268d4f26..64ba314cbefec6e6 100644 +--- a/stdio-common/xbug.c ++++ b/stdio-common/xbug.c +@@ -9,8 +9,8 @@ typedef struct _Buffer { + } Buffer; + + void InitBuffer (Buffer *b); +-void AppendToBuffer (register Buffer *b, const char *str, register int len); +-void ReadFile (register Buffer *buffer, FILE *input); ++void AppendToBuffer (Buffer *b, const char *str, int len); ++void ReadFile (Buffer *buffer, FILE *input); + + #define INIT_BUFFER_SIZE 10000 + +@@ -23,9 +23,9 @@ void InitBuffer(b) + } + + void AppendToBuffer(b, str, len) +- register Buffer *b; ++ Buffer *b; + const char *str; +- register int len; ++ int len; + { + while (b->used + len > b->room) { + b->buff = (char *)realloc(b->buff, 2*b->room*(sizeof(char))); +@@ -36,11 +36,11 @@ void AppendToBuffer(b, str, len) + } + + void ReadFile(buffer, input) +- register Buffer *buffer; ++ Buffer *buffer; + FILE *input; + { + char buf[BUFSIZ + 1]; +- register int bytes; ++ int bytes; + + buffer->used = 0; + while (!feof(input) && (bytes = fread(buf, 1, BUFSIZ, input)) > 0) { +diff --git a/stdlib/qsort.c b/stdlib/qsort.c +index 2fbe763bd52d2acf..8237bbb563748a5f 100644 +--- a/stdlib/qsort.c ++++ b/stdlib/qsort.c +@@ -29,8 +29,8 @@ + #define SWAP(a, b, size) \ + do \ + { \ +- register size_t __size = (size); \ +- register char *__a = (a), *__b = (b); \ ++ size_t __size = (size); \ ++ char *__a = (a), *__b = (b); \ + do \ + { \ + char __tmp = *__a; \ +@@ -89,7 +89,7 @@ void + _quicksort (void *const pbase, size_t total_elems, size_t size, + __compar_d_fn_t cmp, void *arg) + { +- register char *base_ptr = (char *) pbase; ++ char *base_ptr = (char *) pbase; + + const size_t max_thresh = MAX_THRESH * size; + +@@ -206,7 +206,7 @@ _quicksort (void *const pbase, size_t total_elems, size_t size, + char *const end_ptr = &base_ptr[size * (total_elems - 1)]; + char *tmp_ptr = base_ptr; + char *thresh = min(end_ptr, base_ptr + max_thresh); +- register char *run_ptr; ++ char *run_ptr; + + /* Find smallest element in first threshold and place it at the + array's beginning. This is the smallest array element, +diff --git a/stdlib/setenv.c b/stdlib/setenv.c +index d1db356a81c0152b..6185c69243464623 100644 +--- a/stdlib/setenv.c ++++ b/stdlib/setenv.c +@@ -112,8 +112,8 @@ __add_to_environ (name, value, combined, replace) + const char *combined; + int replace; + { +- register char **ep; +- register size_t size; ++ char **ep; ++ size_t size; + const size_t namelen = strlen (name); + const size_t vallen = value != NULL ? strlen (value) + 1 : 0; + +diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c +index 6360833c6b222f3c..2047203a4cee1111 100644 +--- a/stdlib/strtod_l.c ++++ b/stdlib/strtod_l.c +@@ -1142,10 +1142,9 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc) + really integer digits or belong to the fractional part; i.e. we normalize + 123e-2 to 1.23. */ + { +- register intmax_t incr = (exponent < 0 +- ? MAX (-(intmax_t) int_no, exponent) +- : MIN ((intmax_t) dig_no - (intmax_t) int_no, +- exponent)); ++ intmax_t incr = (exponent < 0 ++ ? MAX (-(intmax_t) int_no, exponent) ++ : MIN ((intmax_t) dig_no - (intmax_t) int_no, exponent)); + int_no += incr; + exponent -= incr; + } +@@ -1466,7 +1465,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc) + #define got_limb \ + if (bits == 0) \ + { \ +- register int cnt; \ ++ int cnt; \ + if (quot == 0) \ + cnt = BITS_PER_MP_LIMB; \ + else \ +@@ -1618,7 +1617,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc) + if (numsize < densize) + { + mp_size_t empty = densize - numsize; +- register int i; ++ int i; + + if (bits <= 0) + exponent -= empty * BITS_PER_MP_LIMB; +@@ -1646,7 +1645,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc) + used = MANT_DIG - bits; + if (used >= BITS_PER_MP_LIMB) + { +- register int i; ++ int i; + (void) __mpn_lshift (&retval[used + / BITS_PER_MP_LIMB], + retval, +diff --git a/stdlib/strtol_l.c b/stdlib/strtol_l.c +index 784641b2920f1948..615190821e24b41a 100644 +--- a/stdlib/strtol_l.c ++++ b/stdlib/strtol_l.c +@@ -231,11 +231,11 @@ INTERNAL (__strtol_l) (nptr, endptr, base, group, loc) + __locale_t loc; + { + int negative; +- register unsigned LONG int cutoff; +- register unsigned int cutlim; +- register unsigned LONG int i; +- register const STRING_TYPE *s; +- register UCHAR_TYPE c; ++ unsigned LONG int cutoff; ++ unsigned int cutlim; ++ unsigned LONG int i; ++ const STRING_TYPE *s; ++ UCHAR_TYPE c; + const STRING_TYPE *save, *end; + int overflow; + #ifndef USE_WIDE_CHAR +diff --git a/stdlib/tst-strtod.c b/stdlib/tst-strtod.c +index 670beb1e4df0e0dc..1cfb1da8963d7155 100644 +--- a/stdlib/tst-strtod.c ++++ b/stdlib/tst-strtod.c +@@ -85,7 +85,7 @@ int + main (int argc, char ** argv) + { + char buf[100]; +- register const struct ltest *lt; ++ const struct ltest *lt; + char *ep; + int status = 0; + int save_errno; +@@ -184,7 +184,7 @@ main (int argc, char ** argv) + static void + expand (dst, c) + char *dst; +- register int c; ++ int c; + { + if (isprint (c)) + { +diff --git a/stdlib/tst-strtol.c b/stdlib/tst-strtol.c +index 99cd574107cfed1c..448102a2d9652ee3 100644 +--- a/stdlib/tst-strtol.c ++++ b/stdlib/tst-strtol.c +@@ -537,14 +537,14 @@ static void expand (char *dst, int c); + static int + do_test (void) + { +- register const struct ltest *lt; ++ const struct ltest *lt; + char *ep; + int status = 0; + int save_errno; + + for (lt = tests; lt->str != NULL; ++lt) + { +- register long int l; ++ long int l; + + errno = 0; + l = strtol (lt->str, &ep, lt->base); +@@ -577,7 +577,7 @@ do_test (void) + + for (++lt; lt->str != NULL; lt++) + { +- register unsigned long int ul; ++ unsigned long int ul; + + errno = 0; + ul = strtoul (lt->str, &ep, lt->base); +diff --git a/stdlib/tst-strtoll.c b/stdlib/tst-strtoll.c +index b5ae230b4e0267b0..93f1a56a56956bdb 100644 +--- a/stdlib/tst-strtoll.c ++++ b/stdlib/tst-strtoll.c +@@ -312,14 +312,14 @@ static void expand (char *dst, int c); + static int + do_test (void) + { +- register const struct ltest *lt; ++ const struct ltest *lt; + char *ep; + int status = 0; + int save_errno; + + for (lt = tests; lt->str != NULL; ++lt) + { +- register long long int l; ++ long long int l; + + errno = 0; + l = strtoll (lt->str, &ep, lt->base); +@@ -352,7 +352,7 @@ do_test (void) + + for (++lt; lt->str != NULL; lt++) + { +- register unsigned long long int ul; ++ unsigned long long int ul; + + errno = 0; + ul = strtoull (lt->str, &ep, lt->base); +diff --git a/string/bits/string2.h b/string/bits/string2.h +index acd0679e72b10fbf..c9bf59319e1c4892 100644 +--- a/string/bits/string2.h ++++ b/string/bits/string2.h +@@ -839,7 +839,7 @@ __stpcpy_small (char *__dest, + # endif + + # define __strcmp_cc(s1, s2, l) \ +- (__extension__ ({ register int __result = \ ++ (__extension__ ({ int __result = \ + (((const unsigned char *) (const char *) (s1))[0] \ + - ((const unsigned char *) (const char *)(s2))[0]); \ + if (l > 0 && __result == 0) \ +@@ -868,7 +868,7 @@ __stpcpy_small (char *__dest, + # define __strcmp_cg(s1, s2, l1) \ + (__extension__ ({ const unsigned char *__s2 = \ + (const unsigned char *) (const char *) (s2); \ +- register int __result = \ ++ int __result = \ + (((const unsigned char *) (const char *) (s1))[0] \ + - __s2[0]); \ + if (l1 > 0 && __result == 0) \ +@@ -969,7 +969,7 @@ __STRING_INLINE size_t __strcspn_c1 (const char *__s, int __reject); + __STRING_INLINE size_t + __strcspn_c1 (const char *__s, int __reject) + { +- register size_t __result = 0; ++ size_t __result = 0; + while (__s[__result] != '\0' && __s[__result] != __reject) + ++__result; + return __result; +@@ -980,7 +980,7 @@ __STRING_INLINE size_t __strcspn_c2 (const char *__s, int __reject1, + __STRING_INLINE size_t + __strcspn_c2 (const char *__s, int __reject1, int __reject2) + { +- register size_t __result = 0; ++ size_t __result = 0; + while (__s[__result] != '\0' && __s[__result] != __reject1 + && __s[__result] != __reject2) + ++__result; +@@ -993,7 +993,7 @@ __STRING_INLINE size_t + __strcspn_c3 (const char *__s, int __reject1, int __reject2, + int __reject3) + { +- register size_t __result = 0; ++ size_t __result = 0; + while (__s[__result] != '\0' && __s[__result] != __reject1 + && __s[__result] != __reject2 && __s[__result] != __reject3) + ++__result; +@@ -1045,7 +1045,7 @@ __STRING_INLINE size_t __strspn_c1 (const char *__s, int __accept); + __STRING_INLINE size_t + __strspn_c1 (const char *__s, int __accept) + { +- register size_t __result = 0; ++ size_t __result = 0; + /* Please note that __accept never can be '\0'. */ + while (__s[__result] == __accept) + ++__result; +@@ -1057,7 +1057,7 @@ __STRING_INLINE size_t __strspn_c2 (const char *__s, int __accept1, + __STRING_INLINE size_t + __strspn_c2 (const char *__s, int __accept1, int __accept2) + { +- register size_t __result = 0; ++ size_t __result = 0; + /* Please note that __accept1 and __accept2 never can be '\0'. */ + while (__s[__result] == __accept1 || __s[__result] == __accept2) + ++__result; +@@ -1069,7 +1069,7 @@ __STRING_INLINE size_t __strspn_c3 (const char *__s, int __accept1, + __STRING_INLINE size_t + __strspn_c3 (const char *__s, int __accept1, int __accept2, int __accept3) + { +- register size_t __result = 0; ++ size_t __result = 0; + /* Please note that __accept1 to __accept3 never can be '\0'. */ + while (__s[__result] == __accept1 || __s[__result] == __accept2 + || __s[__result] == __accept3) +@@ -1221,7 +1221,7 @@ __STRING_INLINE char *__strsep_1c (char **__s, char __reject); + __STRING_INLINE char * + __strsep_1c (char **__s, char __reject) + { +- register char *__retval = *__s; ++ char *__retval = *__s; + if (__retval != NULL && (*__s = strchr (__retval, __reject)) != NULL) + *(*__s)++ = '\0'; + return __retval; +@@ -1231,10 +1231,10 @@ __STRING_INLINE char *__strsep_2c (char **__s, char __reject1, char __reject2); + __STRING_INLINE char * + __strsep_2c (char **__s, char __reject1, char __reject2) + { +- register char *__retval = *__s; ++ char *__retval = *__s; + if (__retval != NULL) + { +- register char *__cp = __retval; ++ char *__cp = __retval; + while (1) + { + if (*__cp == '\0') +@@ -1259,10 +1259,10 @@ __STRING_INLINE char *__strsep_3c (char **__s, char __reject1, char __reject2, + __STRING_INLINE char * + __strsep_3c (char **__s, char __reject1, char __reject2, char __reject3) + { +- register char *__retval = *__s; ++ char *__retval = *__s; + if (__retval != NULL) + { +- register char *__cp = __retval; ++ char *__cp = __retval; + while (1) + { + if (*__cp == '\0') +diff --git a/string/memccpy.c b/string/memccpy.c +index 78c13b60bd1b276c..64c3c0196845f102 100644 +--- a/string/memccpy.c ++++ b/string/memccpy.c +@@ -34,10 +34,10 @@ __memccpy (dest, src, c, n) + int c; + size_t n; + { +- register const char *s = src; +- register char *d = dest; +- register const char x = c; +- register size_t i = n; ++ const char *s = src; ++ char *d = dest; ++ const char x = c; ++ size_t i = n; + + while (i-- > 0) + if ((*d++ = *s++) == x) +diff --git a/string/stpcpy.c b/string/stpcpy.c +index 69d150f0c8557087..b74f6e2b489e1f18 100644 +--- a/string/stpcpy.c ++++ b/string/stpcpy.c +@@ -40,8 +40,8 @@ __stpcpy (dest, src) + char *dest; + const char *src; + { +- register char *d = dest; +- register const char *s = src; ++ char *d = dest; ++ const char *s = src; + + do + *d++ = *s; +diff --git a/string/strcmp.c b/string/strcmp.c +index 5384db9b2031c161..47fd2827ad9d64cf 100644 +--- a/string/strcmp.c ++++ b/string/strcmp.c +@@ -32,8 +32,8 @@ STRCMP (p1, p2) + const char *p1; + const char *p2; + { +- register const unsigned char *s1 = (const unsigned char *) p1; +- register const unsigned char *s2 = (const unsigned char *) p2; ++ const unsigned char *s1 = (const unsigned char *) p1; ++ const unsigned char *s2 = (const unsigned char *) p2; + unsigned char c1, c2; + + do +diff --git a/string/strrchr.c b/string/strrchr.c +index 03f3957fe902c968..2cb833016235a1cf 100644 +--- a/string/strrchr.c ++++ b/string/strrchr.c +@@ -27,7 +27,7 @@ + char * + STRRCHR (const char *s, int c) + { +- register const char *found, *p; ++ const char *found, *p; + + c = (unsigned char) c; + +diff --git a/sysdeps/generic/sigset-cvt-mask.h b/sysdeps/generic/sigset-cvt-mask.h +index 366a7719b30c9c01..d7084c0b539aab08 100644 +--- a/sysdeps/generic/sigset-cvt-mask.h ++++ b/sysdeps/generic/sigset-cvt-mask.h +@@ -29,7 +29,7 @@ sigset_set_old_mask (sigset_t *set, int mask) + *set = (unsigned int) mask; + else + { +- register unsigned int __sig; ++ unsigned int __sig; + + if (__sigemptyset (set) < 0) + return -1; +@@ -52,7 +52,7 @@ sigset_get_old_mask (const sigset_t *set) + else + { + unsigned int mask = 0; +- register unsigned int sig; ++ unsigned int sig; + + for (sig = 1; sig < NSIG && sig <= sizeof (mask) * 8; sig++) + if (__sigismember (set, sig)) +diff --git a/sysdeps/mach/hurd/getcwd.c b/sysdeps/mach/hurd/getcwd.c +index e4cea5c287d76fff..6945e4d1c5c12237 100644 +--- a/sysdeps/mach/hurd/getcwd.c ++++ b/sysdeps/mach/hurd/getcwd.c +@@ -46,7 +46,7 @@ _hurd_canonicalize_directory_name_internal (file_t thisdir, + mach_port_t rootid, thisid, rootdevid, thisdevid; + ino64_t rootino, thisino; + char *file_name; +- register char *file_namep; ++ char *file_namep; + file_t parent; + char *dirbuf = NULL; + unsigned int dirbufsize = 0; +diff --git a/sysdeps/mach/i386/sysdep.h b/sysdeps/mach/i386/sysdep.h +index bafa4d6c8c0639e8..f87691d0264cfcdc 100644 +--- a/sysdeps/mach/i386/sysdep.h ++++ b/sysdeps/mach/i386/sysdep.h +@@ -29,7 +29,7 @@ + #define SNARF_ARGS(entry_sp, argc, argv, envp) \ + do \ + { \ +- register char **p; \ ++ char **p; \ + argc = (int) *entry_sp; \ + argv = (char **) (entry_sp + 1); \ + p = argv; \ +diff --git a/sysdeps/powerpc/powerpc32/power6/wcschr.c b/sysdeps/powerpc/powerpc32/power6/wcschr.c +index a981427f7298477d..3b4cca15face81da 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wcschr.c ++++ b/sysdeps/powerpc/powerpc32/power6/wcschr.c +@@ -22,10 +22,10 @@ + /* Find the first occurrence of WC in WCS. */ + wchar_t * + wcschr (wcs, wc) +- register const wchar_t *wcs; +- register const wchar_t wc; ++ const wchar_t *wcs; ++ const wchar_t wc; + { +- register const wchar_t *wcs2 = wcs + 1; ++ const wchar_t *wcs2 = wcs + 1; + + if (*wcs == wc) + return (wchar_t *) wcs; +diff --git a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c b/sysdeps/powerpc/powerpc32/power6/wcsrchr.c +index f9db8f8b53fad7fc..333650190afff171 100644 +--- a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c ++++ b/sysdeps/powerpc/powerpc32/power6/wcsrchr.c +@@ -22,10 +22,10 @@ + /* Find the last occurrence of WC in WCS. */ + wchar_t * + wcsrchr (wcs, wc) +- register const wchar_t *wcs; +- register const wchar_t wc; ++ const wchar_t *wcs; ++ const wchar_t wc; + { +- register const wchar_t *wcs2 = wcs + 1; ++ const wchar_t *wcs2 = wcs + 1; + const wchar_t *retval = NULL; + + if (*wcs == wc) +diff --git a/sysdeps/x86/bits/byteswap-16.h b/sysdeps/x86/bits/byteswap-16.h +index 584eb86b74a80c33..2f619729a766ff4e 100644 +--- a/sysdeps/x86/bits/byteswap-16.h ++++ b/sysdeps/x86/bits/byteswap-16.h +@@ -24,7 +24,7 @@ + # if __GNUC__ >= 2 + # define __bswap_16(x) \ + (__extension__ \ +- ({ register unsigned short int __v, __x = (unsigned short int) (x); \ ++ ({ unsigned short int __v, __x = (unsigned short int) (x); \ + if (__builtin_constant_p (__x)) \ + __v = __bswap_constant_16 (__x); \ + else \ +@@ -37,7 +37,7 @@ + /* This is better than nothing. */ + # define __bswap_16(x) \ + (__extension__ \ +- ({ register unsigned short int __x = (unsigned short int) (x); \ ++ ({ unsigned short int __x = (unsigned short int) (x); \ + __bswap_constant_16 (__x); })) + # endif + #else +diff --git a/sysdeps/x86/bits/byteswap.h b/sysdeps/x86/bits/byteswap.h +index 581687c7f2631183..9bab0c7f4fcb532a 100644 +--- a/sysdeps/x86/bits/byteswap.h ++++ b/sysdeps/x86/bits/byteswap.h +@@ -57,7 +57,7 @@ __bswap_32 (unsigned int __bsx) + `bswap' opcode. On i386 we have to use three instructions. */ + # define __bswap_32(x) \ + (__extension__ \ +- ({ register unsigned int __v, __x = (x); \ ++ ({ unsigned int __v, __x = (x); \ + if (__builtin_constant_p (__x)) \ + __v = __bswap_constant_32 (__x); \ + else \ +@@ -66,7 +66,7 @@ __bswap_32 (unsigned int __bsx) + # else + # define __bswap_32(x) \ + (__extension__ \ +- ({ register unsigned int __v, __x = (x); \ ++ ({ unsigned int __v, __x = (x); \ + if (__builtin_constant_p (__x)) \ + __v = __bswap_constant_32 (__x); \ + else \ +@@ -81,7 +81,7 @@ __bswap_32 (unsigned int __bsx) + # else + # define __bswap_32(x) \ + (__extension__ \ +- ({ register unsigned int __x = (x); __bswap_constant_32 (__x); })) ++ ({ unsigned int __x = (x); __bswap_constant_32 (__x); })) + # endif + #else + static __inline unsigned int +@@ -113,7 +113,7 @@ __bswap_64 (__uint64_t __bsx) + # elif __WORDSIZE == 64 + # define __bswap_64(x) \ + (__extension__ \ +- ({ register __uint64_t __v, __x = (x); \ ++ ({ __uint64_t __v, __x = (x); \ + if (__builtin_constant_p (__x)) \ + __v = __bswap_constant_64 (__x); \ + else \ +diff --git a/time/test_time.c b/time/test_time.c +index b3573aa26ac34bf6..8d20ff935b9e8963 100644 +--- a/time/test_time.c ++++ b/time/test_time.c +@@ -24,7 +24,7 @@ int + main (int argc, char **argv) + { + time_t t; +- register struct tm *tp; ++ struct tm *tp; + struct tm tbuf; + int lose = 0; + +diff --git a/time/tzfile.c b/time/tzfile.c +index 38aa15cb16300e1c..d67262916f11eaf0 100644 +--- a/time/tzfile.c ++++ b/time/tzfile.c +@@ -104,10 +104,10 @@ __tzfile_read (const char *file, size_t extra, char **extrap) + { + static const char default_tzdir[] = TZDIR; + size_t num_isstd, num_isgmt; +- register FILE *f; ++ FILE *f; + struct tzhead tzhead; + size_t chars; +- register size_t i; ++ size_t i; + size_t total_size; + size_t types_idx; + size_t leaps_idx; +@@ -632,7 +632,7 @@ __tzfile_compute (time_t timer, int use_localtime, + long int *leap_correct, int *leap_hit, + struct tm *tp) + { +- register size_t i; ++ size_t i; + + if (use_localtime) + { +diff --git a/wcsmbs/wcscat.c b/wcsmbs/wcscat.c +index 4eb2d936e76098b6..89366e1437465988 100644 +--- a/wcsmbs/wcscat.c ++++ b/wcsmbs/wcscat.c +@@ -28,8 +28,8 @@ __wcscat (dest, src) + wchar_t *dest; + const wchar_t *src; + { +- register wchar_t *s1 = dest; +- register const wchar_t *s2 = src; ++ wchar_t *s1 = dest; ++ const wchar_t *s2 = src; + wchar_t c; + + /* Find the end of the string. */ +diff --git a/wcsmbs/wcschr.c b/wcsmbs/wcschr.c +index cb0592bd425b6c4c..56511d88176fa1f0 100644 +--- a/wcsmbs/wcschr.c ++++ b/wcsmbs/wcschr.c +@@ -24,8 +24,8 @@ + + wchar_t * + wcschr (wcs, wc) +- register const wchar_t *wcs; +- register const wchar_t wc; ++ const wchar_t *wcs; ++ const wchar_t wc; + { + do + if (*wcs == wc) +diff --git a/wcsmbs/wcschrnul.c b/wcsmbs/wcschrnul.c +index 1e4c44f80f77ef63..48eaf7b011e3a690 100644 +--- a/wcsmbs/wcschrnul.c ++++ b/wcsmbs/wcschrnul.c +@@ -24,8 +24,8 @@ + /* Find the first occurrence of WC in WCS. */ + wchar_t * + __wcschrnul (wcs, wc) +- register const wchar_t *wcs; +- register const wchar_t wc; ++ const wchar_t *wcs; ++ const wchar_t wc; + { + while (*wcs != L'\0') + if (*wcs == wc) +diff --git a/wcsmbs/wcscspn.c b/wcsmbs/wcscspn.c +index 9e84226cf5674ef8..cf4205fd5e56baee 100644 +--- a/wcsmbs/wcscspn.c ++++ b/wcsmbs/wcscspn.c +@@ -29,7 +29,7 @@ wcscspn (wcs, reject) + const wchar_t *wcs; + const wchar_t *reject; + { +- register size_t count = 0; ++ size_t count = 0; + + while (*wcs != L'\0') + if (wcschr (reject, *wcs++) == NULL) +diff --git a/wcsmbs/wcspbrk.c b/wcsmbs/wcspbrk.c +index b769a388d5e49301..ee880709d826fde8 100644 +--- a/wcsmbs/wcspbrk.c ++++ b/wcsmbs/wcspbrk.c +@@ -25,8 +25,8 @@ + /* Find the first occurrence in WCS of any wide-character in ACCEPT. */ + wchar_t * + wcspbrk (wcs, accept) +- register const wchar_t *wcs; +- register const wchar_t *accept; ++ const wchar_t *wcs; ++ const wchar_t *accept; + { + while (*wcs != L'\0') + if (wcschr (accept, *wcs) == NULL) +diff --git a/wcsmbs/wcsrchr.c b/wcsmbs/wcsrchr.c +index 27c94c5bb28cf9c5..b1771a7e8a7ee8a9 100644 +--- a/wcsmbs/wcsrchr.c ++++ b/wcsmbs/wcsrchr.c +@@ -25,8 +25,8 @@ + /* Find the last occurrence of WC in WCS. */ + wchar_t * + WCSRCHR (wcs, wc) +- register const wchar_t *wcs; +- register const wchar_t wc; ++ const wchar_t *wcs; ++ const wchar_t wc; + { + const wchar_t *retval = NULL; + +diff --git a/wcsmbs/wcsspn.c b/wcsmbs/wcsspn.c +index 3e84726c6acb159c..4c2db0ffc360e906 100644 +--- a/wcsmbs/wcsspn.c ++++ b/wcsmbs/wcsspn.c +@@ -29,9 +29,9 @@ wcsspn (wcs, accept) + const wchar_t *wcs; + const wchar_t *accept; + { +- register const wchar_t *p; +- register const wchar_t *a; +- register size_t count = 0; ++ const wchar_t *p; ++ const wchar_t *a; ++ size_t count = 0; + + for (p = wcs; *p != L'\0'; ++p) + { +diff --git a/wcsmbs/wcsstr.c b/wcsmbs/wcsstr.c +index 932c74fe5e144ce9..d4a42df01ce1214c 100644 +--- a/wcsmbs/wcsstr.c ++++ b/wcsmbs/wcsstr.c +@@ -33,7 +33,7 @@ wcsstr (haystack, needle) + const wchar_t *haystack; + const wchar_t *needle; + { +- register wchar_t b, c; ++ wchar_t b, c; + + if ((b = *needle) != L'\0') + { +@@ -50,8 +50,8 @@ wcsstr (haystack, needle) + + for (;;) + { +- register wchar_t a; +- register const wchar_t *rhaystack, *rneedle; ++ wchar_t a; ++ const wchar_t *rhaystack, *rneedle; + + do + { +diff --git a/wcsmbs/wmemchr.c b/wcsmbs/wmemchr.c +index 905a321fb24680f4..b8726838a2951d6e 100644 +--- a/wcsmbs/wmemchr.c ++++ b/wcsmbs/wmemchr.c +@@ -24,9 +24,9 @@ + + wchar_t * + wmemchr (s, c, n) +- register const wchar_t *s; +- register wchar_t c; +- register size_t n; ++ const wchar_t *s; ++ wchar_t c; ++ size_t n; + { + /* For performance reasons unfold the loop four times. */ + while (n >= 4) +diff --git a/wcsmbs/wmemcmp.c b/wcsmbs/wmemcmp.c +index 2680b4bd078352bb..bb0a900dc8a5ec49 100644 +--- a/wcsmbs/wmemcmp.c ++++ b/wcsmbs/wmemcmp.c +@@ -28,8 +28,8 @@ WMEMCMP (s1, s2, n) + const wchar_t *s2; + size_t n; + { +- register wchar_t c1; +- register wchar_t c2; ++ wchar_t c1; ++ wchar_t c2; + + while (n >= 4) + { +diff --git a/wcsmbs/wmemset.c b/wcsmbs/wmemset.c +index 8049bb813075f000..afc26c7c48f34f3d 100644 +--- a/wcsmbs/wmemset.c ++++ b/wcsmbs/wmemset.c +@@ -28,7 +28,7 @@ wmemset (s, c, n) + wchar_t c; + size_t n; + { +- register wchar_t *wp = s; ++ wchar_t *wp = s; + + while (n >= 4) + { diff --git a/SOURCES/glibc-rh1505492-s390-backtrace.patch b/SOURCES/glibc-rh1505492-s390-backtrace.patch new file mode 100644 index 0000000..7c582f4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-s390-backtrace.patch @@ -0,0 +1,85 @@ +commit 618cebeff82ae775308eb29d7891e22861411e21 +Author: Stefan Liebler +Date: Thu Nov 13 10:42:31 2014 +0100 + + S/390: Get rid of warning: the comparision will always evaluate as false. + +diff --git a/sysdeps/s390/s390-32/backtrace.c b/sysdeps/s390/s390-32/backtrace.c +index 1dbe37eeb6f6db08..0db076804895e200 100644 +--- a/sysdeps/s390/s390-32/backtrace.c ++++ b/sysdeps/s390/s390-32/backtrace.c +@@ -77,10 +77,6 @@ init (void) + if (unwind_getip == NULL) + unwind_backtrace = NULL; + } +-#else +-# define unwind_backtrace _Unwind_Backtrace +-# define unwind_getip _Unwind_GetIP +-#endif + + static int + __backchain_backtrace (void **array, int size) +@@ -107,6 +103,10 @@ __backchain_backtrace (void **array, int size) + + return cnt; + } ++#else ++# define unwind_backtrace _Unwind_Backtrace ++# define unwind_getip _Unwind_GetIP ++#endif + + static _Unwind_Reason_Code + backtrace_helper (struct _Unwind_Context *ctx, void *a) +@@ -130,9 +130,10 @@ __backtrace (void **array, int size) + __libc_once_define (static, once); + + __libc_once (once, init); +-#endif ++ + if (unwind_backtrace == NULL) + return __backchain_backtrace (array, size); ++#endif + + if (size >= 1) + unwind_backtrace (backtrace_helper, &arg); +diff --git a/sysdeps/s390/s390-64/backtrace.c b/sysdeps/s390/s390-64/backtrace.c +index 562d461f97ad5bca..548d312f3cc05151 100644 +--- a/sysdeps/s390/s390-64/backtrace.c ++++ b/sysdeps/s390/s390-64/backtrace.c +@@ -76,12 +76,8 @@ init (void) + if (unwind_getip == NULL) + unwind_backtrace = NULL; + } +-#else +-# define unwind_backtrace _Unwind_Backtrace +-# define unwind_getip _Unwind_GetIP +-#endif + +-int ++static int + __backchain_backtrace (void **array, int size) + { + /* We assume that all the code is generated with frame pointers set. */ +@@ -106,6 +102,10 @@ __backchain_backtrace (void **array, int size) + + return cnt; + } ++#else ++# define unwind_backtrace _Unwind_Backtrace ++# define unwind_getip _Unwind_GetIP ++#endif + + static _Unwind_Reason_Code + backtrace_helper (struct _Unwind_Context *ctx, void *a) +@@ -129,9 +129,10 @@ __backtrace (void **array, int size) + __libc_once_define (static, once); + + __libc_once (once, init); +-#endif ++ + if (unwind_backtrace == NULL) + return __backchain_backtrace (array, size); ++#endif + + if (size >= 1) + unwind_backtrace (backtrace_helper, &arg); diff --git a/SOURCES/glibc-rh1505492-s390x-sotruss.patch b/SOURCES/glibc-rh1505492-s390x-sotruss.patch new file mode 100644 index 0000000..9b18843 --- /dev/null +++ b/SOURCES/glibc-rh1505492-s390x-sotruss.patch @@ -0,0 +1,85 @@ +commit 7a02cfade80b2b6ed2562e74105bebfee90a87ec +Author: Mike Frysinger +Date: Tue Dec 24 04:31:22 2013 -0500 + + s390: implement sotruss support + + See commit 41b1792698a335d3a85381921a84a16e9635f36a for testcase. + + Note: while this works on s390x, the s390 code hangs when using -e. + But it hangs regardless of this code (the hang seems to occur before + the exit func is even called). I didn't look too closely at it as + it seems to be an issue external to this file, so this code shouldn't + make the situation any worse. + + Reviewed-by: Carlos O'Donell + Signed-off-by: Mike Frysinger + +diff --git a/sysdeps/s390/sotruss-lib.c b/sysdeps/s390/sotruss-lib.c +new file mode 100644 +index 0000000000000000..ded98db08dcf525b +--- /dev/null ++++ b/sysdeps/s390/sotruss-lib.c +@@ -0,0 +1,62 @@ ++/* Override generic sotruss-lib.c to define actual functions for s390. ++ Copyright (C) 2012-2014 Free Software Foundation, Inc. ++ ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library. If not, see ++ . */ ++ ++#define HAVE_ARCH_PLTENTER ++#define HAVE_ARCH_PLTEXIT ++ ++#include ++ ++#if __ELF_NATIVE_CLASS == 32 ++# define la_s390_gnu_pltenter la_s390_32_gnu_pltenter ++# define la_s390_gnu_pltexit la_s390_32_gnu_pltexit ++# define La_s390_regs La_s390_32_regs ++# define La_s390_retval La_s390_32_retval ++#else ++# define la_s390_gnu_pltenter la_s390_64_gnu_pltenter ++# define la_s390_gnu_pltexit la_s390_64_gnu_pltexit ++# define La_s390_regs La_s390_64_regs ++# define La_s390_retval La_s390_64_retval ++#endif ++ ++ElfW(Addr) ++la_s390_gnu_pltenter (ElfW(Sym) *sym, ++ unsigned int ndx __attribute__ ((unused)), ++ uintptr_t *refcook, uintptr_t *defcook, ++ La_s390_regs *regs, unsigned int *flags, ++ const char *symname, long int *framesizep) ++{ ++ print_enter (refcook, defcook, symname, ++ regs->lr_r2, regs->lr_r3, regs->lr_r4, *flags); ++ ++ /* No need to copy anything, we will not need the parameters in any case. */ ++ *framesizep = 0; ++ ++ return sym->st_value; ++} ++ ++unsigned int ++la_s390_gnu_pltexit (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, ++ uintptr_t *defcook, ++ const struct La_s390_regs *inregs, ++ struct La_s390_retval *outregs, const char *symname) ++{ ++ print_exit (refcook, defcook, symname, outregs->lrv_r2); ++ ++ return 0; ++} diff --git a/SOURCES/glibc-rh1505492-selinux.patch b/SOURCES/glibc-rh1505492-selinux.patch new file mode 100644 index 0000000..f69b2ac --- /dev/null +++ b/SOURCES/glibc-rh1505492-selinux.patch @@ -0,0 +1,18 @@ +Remove unnecessary #include directives to avoid #warning directives from +SELinux headers. Further cleanup after glibc-rh1025934.patch. Handled +upstream as part of the original commit. + +diff --git a/nscd/selinux.c b/nscd/selinux.c +index 2bf4d1a66a9623b5..24b554765264ae63 100644 +--- a/nscd/selinux.c ++++ b/nscd/selinux.c +@@ -28,9 +28,7 @@ + #include + #include + #include +-#include + #include +-#include + #include + #ifdef HAVE_LIBAUDIT + # include diff --git a/SOURCES/glibc-rh1505492-systemtap.patch b/SOURCES/glibc-rh1505492-systemtap.patch new file mode 100644 index 0000000..a0eae77 --- /dev/null +++ b/SOURCES/glibc-rh1505492-systemtap.patch @@ -0,0 +1,50 @@ +commit 520d437b9455560d099fe6bd9664be1f9f76868b +Author: Siddhesh Poyarekar +Date: Tue Dec 3 12:26:12 2013 +0530 + + [BZ #16195] Fix build warnings from systemtap probes in non-systemtap configurations + + Joseph pointed out in the bug report (and in an earlier thread) that + systemtap probes cause build time warnings like the following: + + ../sysdeps/ieee754/dbl-64/e_atan2.c:602:4: warning: the address of + 'p' will always evaluate as 'true' [-Waddress] + + due to the fact that we're now passing non-weak variables to + LIBC_PROBE in the libm probes. This happens only on configurations + that do not enable systemtap. The macro definition of LIBC_PROBE in + this case only acts as a sanity checker to ensure that the number + parameters passed to LIBC_PROBE is equal to the argument count + parameter passed before it. This can be done in a much simpler manner + by just adding a macro definition for each number of arguments. I am + assuming here that we don't really want to bother with supporting + LIBC_PROBE with an indeterminate number of arguments and if there is a + need for a probe to have more data than what is currently supported (4 + arguments), one could simply add an additional macro here. + +diff --git a/include/stap-probe.h b/include/stap-probe.h +index 0f65c29b2b5c5dde..0ddb5d5fc9f740dd 100644 +--- a/include/stap-probe.h ++++ b/include/stap-probe.h +@@ -49,13 +49,14 @@ + + # ifndef __ASSEMBLER__ + /* Evaluate all the arguments and verify that N matches their number. */ +-# define LIBC_PROBE(name, n, ...) \ +- do { \ +- _Bool __libc_probe_args[] = { 0, ## __VA_ARGS__ }; \ +- _Bool __libc_probe_verify_n[(sizeof __libc_probe_args / sizeof (_Bool)) \ +- == n + 1 ? 1 : -1]; \ +- (void) __libc_probe_verify_n; \ +- } while (0) ++#define LIBC_PROBE(name, n, ...) STAP_PROBE##n (__VA_ARGS__) ++ ++#define STAP_PROBE0() ++#define STAP_PROBE1(a1) ++#define STAP_PROBE2(a1, a2) ++#define STAP_PROBE3(a1, a2, a3) ++#define STAP_PROBE4(a1, a2, a3, a4) ++ + # else + # define LIBC_PROBE(name, n, ...) /* Nothing. */ + # endif diff --git a/SOURCES/glibc-rh1505492-types-1.patch b/SOURCES/glibc-rh1505492-types-1.patch new file mode 100644 index 0000000..4303f63 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-1.patch @@ -0,0 +1,19 @@ +commit 87ded0c382b835e5d7ca8b5e059a8a044a6c3976 +Author: Andreas Krebbel +Date: Tue Jan 7 09:40:39 2014 +0100 + + S/390: Remove __tls_get_addr argument cast. + +diff --git a/sysdeps/s390/dl-tls.h b/sysdeps/s390/dl-tls.h +index 3afa3c89da2ad881..2d5c0807765e33ad 100644 +--- a/sysdeps/s390/dl-tls.h ++++ b/sysdeps/s390/dl-tls.h +@@ -91,7 +91,7 @@ extern void *__tls_get_addr_internal (tls_index *ti); + compiler will take care of setting up r12 only if itself issued the + __tls_get_offset call. */ + # define __TLS_GET_ADDR(__ti) \ +- ({ (void *) __tls_get_addr_internal ((char *) (__ti)) \ ++ ({ __tls_get_addr_internal (__ti) \ + + (unsigned long) __builtin_thread_pointer (); }) + + #endif diff --git a/SOURCES/glibc-rh1505492-types-10.patch b/SOURCES/glibc-rh1505492-types-10.patch new file mode 100644 index 0000000..9866197 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-10.patch @@ -0,0 +1,24 @@ +commit 7f29694236aab000eae24f36b7989a6b774044ae +Author: Adhemerval Zanella +Date: Thu Dec 11 14:54:22 2014 -0500 + + Fix __sendmmsg prototype guards + + Add __USE_GNU guards on 'socket/sys/socket.h' __sendmmsg prototype. + +diff --git a/include/sys/socket.h b/include/sys/socket.h +index 9caf1bbdf5fa7782..99f60363a133cf93 100644 +--- a/include/sys/socket.h ++++ b/include/sys/socket.h +@@ -91,9 +91,11 @@ extern ssize_t __libc_sendmsg (int __fd, const struct msghdr *__message, + extern ssize_t __sendmsg (int __fd, const struct msghdr *__message, + int __flags) attribute_hidden; + ++#ifdef __USE_GNU + extern int __sendmmsg (int __fd, struct mmsghdr *__vmessages, + unsigned int __vlen, int __flags); + libc_hidden_proto (__sendmmsg) ++#endif + + /* Receive a message as described by MESSAGE from socket FD. + Returns the number of bytes read or -1 for errors. */ diff --git a/SOURCES/glibc-rh1505492-types-11.patch b/SOURCES/glibc-rh1505492-types-11.patch new file mode 100644 index 0000000..05555e6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-11.patch @@ -0,0 +1,21 @@ +commit bdf079da369ad5685c0432b2f41a5aaf1ec990e7 +Author: Andreas Schwab +Date: Wed Dec 17 13:04:07 2014 +0100 + + Fix printf format error + +diff --git a/nscd/mem.c b/nscd/mem.c +index 3811b447b0bf732b..a3d1014c640e7d83 100644 +--- a/nscd/mem.c ++++ b/nscd/mem.c +@@ -423,8 +423,8 @@ gc (struct database_dyn *db) + + if (__builtin_expect (debug_level >= 3, 0)) + dbg_log (_("freed %zu bytes in %s cache"), +- db->head->first_free +- - ((char *) moves->to + moves->size - db->data), ++ (size_t) (db->head->first_free ++ - ((char *) moves->to + moves->size - db->data)), + dbnames[db - dbs]); + + /* The byte past the end of the last copied block is the next diff --git a/SOURCES/glibc-rh1505492-types-12.patch b/SOURCES/glibc-rh1505492-types-12.patch new file mode 100644 index 0000000..3454c33 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-12.patch @@ -0,0 +1,19 @@ +commit eca2772b9a2b057a1af6604afb9b5d3ce3448497 +Author: Stefan Liebler +Date: Wed Dec 17 16:42:51 2014 +0100 + + Get rid of format warning in tst-widetext.c. + +diff --git a/libio/tst-widetext.c b/libio/tst-widetext.c +index fef57be53ca072c4..fd8b207eb30a99bf 100644 +--- a/libio/tst-widetext.c ++++ b/libio/tst-widetext.c +@@ -291,7 +291,7 @@ do_test (void) + { + if (fgetws (wcp, &wc2buf[wcsize] - wcp + 1, fp) == NULL) + { +- printf ("%u: short read using fgetws (only %Zd of %Zd)\n", ++ printf ("%u: short read using fgetws (only %td of %Zd)\n", + __LINE__, wcp - wc2buf, wcsize); + status = 1; + break; diff --git a/SOURCES/glibc-rh1505492-types-13.patch b/SOURCES/glibc-rh1505492-types-13.patch new file mode 100644 index 0000000..54431da --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-13.patch @@ -0,0 +1,20 @@ +commit d22ce01becae90db0c65c82fd2e1aa7898df7ce6 +Author: Stefan Liebler +Date: Wed Dec 17 16:43:34 2014 +0100 + + Get rid of format warning in bug-vfprintf-nargs.c. + +diff --git a/stdio-common/bug-vfprintf-nargs.c b/stdio-common/bug-vfprintf-nargs.c +index 4f621064cc0ca5c7..e8651823e6096c0e 100644 +--- a/stdio-common/bug-vfprintf-nargs.c ++++ b/stdio-common/bug-vfprintf-nargs.c +@@ -65,7 +65,8 @@ do_test (void) + test this on 32-bit systems. */ + if (sizeof (long int) == 4) + { +- sprintf (buf, "%%1$d %%%" PRIdPTR "$d", UINT32_MAX / sizeof (int)); ++ sprintf (buf, "%%1$d %%%" PRIdPTR "$d", ++ (intptr_t) (UINT32_MAX / sizeof (int))); + if (format_failed (buf, "1 %$d") != 0) + rc = 1; + } diff --git a/SOURCES/glibc-rh1505492-types-14.patch b/SOURCES/glibc-rh1505492-types-14.patch new file mode 100644 index 0000000..c717cb9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-14.patch @@ -0,0 +1,40 @@ +commit 41fad83083a21800aafb08fbc888f05ae44d6c8a +Author: H.J. Lu +Date: Fri Dec 19 13:49:58 2014 -0800 + + Replace %ld with %jd and cast to intmax_t + +diff --git a/libio/tst-ftell-active-handler.c b/libio/tst-ftell-active-handler.c +index 8549ccaafdf2623c..3d8030f32fcb3335 100644 +--- a/libio/tst-ftell-active-handler.c ++++ b/libio/tst-ftell-active-handler.c +@@ -538,23 +538,23 @@ do_append_test (const char *filename) + + if (seek_ret != new_seek_ret) + { +- printf ("incorrectly modified file offset to %ld, should be %ld", +- new_seek_ret, seek_ret); ++ printf ("incorrectly modified file offset to %jd, should be %jd", ++ (intmax_t) new_seek_ret, (intmax_t) seek_ret); + ret |= 1; + } + else +- printf ("retained current file offset %ld", seek_ret); ++ printf ("retained current file offset %jd", (intmax_t) seek_ret); + + new_seek_ret = ftello (fp); + + if (seek_ret != new_seek_ret) + { +- printf (", ftello reported incorrect offset %ld, should be %ld\n", +- new_seek_ret, seek_ret); ++ printf (", ftello reported incorrect offset %jd, should be %jd\n", ++ (intmax_t) new_seek_ret, (intmax_t) seek_ret); + ret |= 1; + } + else +- printf (", ftello reported correct offset %ld\n", seek_ret); ++ printf (", ftello reported correct offset %jd\n", (intmax_t) seek_ret); + + fclose (fp); + diff --git a/SOURCES/glibc-rh1505492-types-2.patch b/SOURCES/glibc-rh1505492-types-2.patch new file mode 100644 index 0000000..8d1dae0 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-2.patch @@ -0,0 +1,30 @@ +commit 439e1ad6d04e24f76f92ff7f61153fbe489559b9 +Author: Joseph Myers +Date: Tue Nov 25 23:31:21 2014 +0000 + + Fix warning in stdio-common/tst-printf-round.c. + + This patch fixes warnings of the form "tst-printf-round.c:202:17: + warning: passing argument 3 of 'test_hex_in_one_mode' discards 'const' + qualifier from pointer target type", by adding an extra const to that + argument (so that after array-to-pointer conversion it's const char + *const *). + + Tested for x86_64. + + * stdio-common/tst-printf-round.c (test_hex_in_one_mode): Make + third argument const. + +diff --git a/stdio-common/tst-printf-round.c b/stdio-common/tst-printf-round.c +index 7cc19c5645dcc806..7f40a713636302b8 100644 +--- a/stdio-common/tst-printf-round.c ++++ b/stdio-common/tst-printf-round.c +@@ -136,7 +136,7 @@ static const struct hex_test hex_tests[] = + }; + + static int +-test_hex_in_one_mode (double d, const char *fmt, const char *expected[4], ++test_hex_in_one_mode (double d, const char *fmt, const char *const expected[4], + const char *mode_name) + { + char buf[100]; diff --git a/SOURCES/glibc-rh1505492-types-3.patch b/SOURCES/glibc-rh1505492-types-3.patch new file mode 100644 index 0000000..4cacea9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-3.patch @@ -0,0 +1,30 @@ +commit 59ef17152b1ad9a4c4d618ec085586e3e14f6e94 +Author: Joseph Myers +Date: Wed Nov 26 16:07:39 2014 +0000 + + Fix nptl/tst-cancel-self-cancelstate.c warning. + + This patch fixes "../sysdeps/nptl/pthread.h:670:26: warning: + initialization discards 'volatile' qualifier from pointer target type" + arising when building nptl/tst-cancel-self-cancelstate.c. The problem + is passing a volatile int * to a macro expecting void *; the patch + adds an explicit cast. + + Tested for x86_64. + + * nptl/tst-cancel-self-cancelstate.c (do_test): Cast argument of + pthread_cleanup_push to void *. + +diff --git a/nptl/tst-cancel-self-cancelstate.c b/nptl/tst-cancel-self-cancelstate.c +index c82e6f3cedd1745b..21314a2efb00dbf1 100644 +--- a/nptl/tst-cancel-self-cancelstate.c ++++ b/nptl/tst-cancel-self-cancelstate.c +@@ -29,7 +29,7 @@ do_test (void) + int ret = 0; + volatile int should_fail = 1; + +- pthread_cleanup_push (cleanup, &should_fail); ++ pthread_cleanup_push (cleanup, (void *) &should_fail); + + if ((ret = pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, NULL)) != 0) + { diff --git a/SOURCES/glibc-rh1505492-types-5.patch b/SOURCES/glibc-rh1505492-types-5.patch new file mode 100644 index 0000000..0ee1ca9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-5.patch @@ -0,0 +1,30 @@ +commit be97091638d156a53009b4034c60b58eaf3efa24 +Author: Joseph Myers +Date: Thu Nov 27 03:24:18 2014 +0000 + + Fix nss/tst-nss-test1.c format warning. + + Testing for 32-bit x86 shows up a warning "tst-nss-test1.c:25:3: + warning: format '%ju' expects argument of type 'uintmax_t', but + argument 2 has type 'int' [-Wformat=]". The argument is a difference + of two pointers, a signed quantity of type ptrdiff_t for which the + right format is %td; this patch makes this test use that format. + + Tested for 32-bit x86. + + * nss/tst-nss-test1.c (do_test): Use %td printf format for pointer + difference, not %ju. + +diff --git a/nss/tst-nss-test1.c b/nss/tst-nss-test1.c +index 4e443d453909e231..c5750e0956ea9450 100644 +--- a/nss/tst-nss-test1.c ++++ b/nss/tst-nss-test1.c +@@ -21,7 +21,7 @@ do_test (void) + if (p->pw_uid != *np || strncmp (p->pw_name, "name", 4) != 0 + || atol (p->pw_name + 4) != *np) + { +- printf ("passwd entry %ju wrong (%s, %u)\n", ++ printf ("passwd entry %td wrong (%s, %u)\n", + np - pwdids, p->pw_name, p->pw_uid); + retval = 1; + break; diff --git a/SOURCES/glibc-rh1505492-types-6.patch b/SOURCES/glibc-rh1505492-types-6.patch new file mode 100644 index 0000000..2025c28 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-6.patch @@ -0,0 +1,29 @@ +commit b1aff6a41120c1d9cedc1ecedeafc79f161ce982 +Author: Joseph Myers +Date: Tue Dec 2 22:03:59 2014 +0000 + + Fix warning in posix/tst-getopt_long1.c. + + This patch fixes a "discards qualifiers" warning in + posix/tst-getopt_long1.c. glibc is built with -Wwrite-strings, + meaning a char * cannot be initialized directly with a string + constant; the patch casts the string constants to char *. + + Tested for x86_64. + + * posix/tst-getopt_long1.c (do_test): Cast elements of argv array + to char *. + +diff --git a/posix/tst-getopt_long1.c b/posix/tst-getopt_long1.c +index e0ecd121908de5f8..3895ebd99b291917 100644 +--- a/posix/tst-getopt_long1.c ++++ b/posix/tst-getopt_long1.c +@@ -39,7 +39,7 @@ do_test (void) + return 1; + } + +- char *argv[] = { "program", "--on" }; ++ char *argv[] = { (char *) "program", (char *) "--on" }; + int argc = 2; + + int c = getopt_long (argc, argv, "12345", opts, NULL); diff --git a/SOURCES/glibc-rh1505492-types-7.patch b/SOURCES/glibc-rh1505492-types-7.patch new file mode 100644 index 0000000..c1f0563 --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-7.patch @@ -0,0 +1,33 @@ +commit 909e16d96064708b43170eeb01135315f540e6ff +Author: Joseph Myers +Date: Tue Dec 2 22:48:59 2014 +0000 + + Fix warning in nptl/tst-stack4.c. + + This patch fixes a warning in a test that was added since my recent + warning cleanup: + + tst-stack4.c: In function 'dso_process': + tst-stack4.c:64:7: warning: format '%i' expects argument of type 'int', but argument 3 has type 'uintptr_t' [-Wformat=] + + The original variable has type int then is cast to uintptr_t, and from + there to void *, to pass it to a thread, so reversing the process by + casting to uintptr_t and then to int is natural; this patch does so. + + Tested for x86_64. + + * nptl/tst-stack4.c (dso_process): Use int not uintptr_t for t. + +diff --git a/nptl/tst-stack4.c b/nptl/tst-stack4.c +index d9c8df2c8d35e8a9..3b726936461408b3 100644 +--- a/nptl/tst-stack4.c ++++ b/nptl/tst-stack4.c +@@ -56,7 +56,7 @@ dso_process (void * p) + function fun_vec[DSO_SHARED_FILES]; + char dso_path[DSO_SHARED_FILES][100]; + int dso; +- uintptr_t t = (uintptr_t) p; ++ int t = (int) (uintptr_t) p; + + /* Open DSOs and get a function. */ + for (dso = 0; dso < DSO_SHARED_FILES; dso++) diff --git a/SOURCES/glibc-rh1505492-types-8.patch b/SOURCES/glibc-rh1505492-types-8.patch new file mode 100644 index 0000000..45e2e8a --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-8.patch @@ -0,0 +1,29 @@ +commit 1b8bf3518186cdc4f22037e5f226c34ffa143b89 +Author: Joseph Myers +Date: Wed Dec 10 16:03:23 2014 +0000 + + Fix tst-ftell-active-handler.c warning. + + A recent change to libio/tst-ftell-active-handler.c (postdating my + last check for warnings on x86) introduced a format warning from a + long int variable used with a %zu format. This patch fixes it by + using %ld for the format to match the variable. + + Tested for x86. + + * libio/tst-ftell-active-handler.c (do_ftruncate_test): Use %ld + format for long int variable. + +diff --git a/libio/tst-ftell-active-handler.c b/libio/tst-ftell-active-handler.c +index 59a4268ffb50f085..8549ccaafdf2623c 100644 +--- a/libio/tst-ftell-active-handler.c ++++ b/libio/tst-ftell-active-handler.c +@@ -163,7 +163,7 @@ do_ftruncate_test (const char *filename) + it. */ + if (offset != new_offset) + { +- printf ("Incorrect offset. Expected %zu, but got %ld\n", ++ printf ("Incorrect offset. Expected %ld, but got %ld\n", + offset, new_offset); + + ret |= 1; diff --git a/SOURCES/glibc-rh1505492-types-9.patch b/SOURCES/glibc-rh1505492-types-9.patch new file mode 100644 index 0000000..9d708ce --- /dev/null +++ b/SOURCES/glibc-rh1505492-types-9.patch @@ -0,0 +1,37 @@ +commit 9d96909913249f7b1ff9f503f8fa8abc458089a9 +Author: Adhemerval Zanella +Date: Thu Dec 11 07:17:11 2014 -0500 + + powerpc: Fix lgammal_r overflow warnings + + ldbl-128ibm uses ldbl-128 e_lgammal_r implementation as is, however some + constants definitions overflows for IBM long double range. This patch + suppress the compiler warnings until the ldbl-128ibm implementation is + fixed. + +diff --git a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c +index 2b44afb759695f11..39c38b4b6bf1daad 100644 +--- a/sysdeps/ieee754/ldbl-128/e_lgammal_r.c ++++ b/sysdeps/ieee754/ldbl-128/e_lgammal_r.c +@@ -70,12 +70,20 @@ + + #include + #include ++#include ++#include + ++/* BZ#16347: ldbl-128ibm uses this file as is, however the MAXLGM ++ definition overflows for IBM long double. This directive prevents the ++ overflow warnings until IBM long double version is fixed. */ + static const long double PIL = 3.1415926535897932384626433832795028841972E0L; ++DIAG_PUSH_NEEDS_COMMENT; ++DIAG_IGNORE_NEEDS_COMMENT (4.6, "-Woverflow"); + static const long double MAXLGM = 1.0485738685148938358098967157129705071571E4928L; ++DIAG_POP_NEEDS_COMMENT; + static const long double one = 1.0L; + static const long double zero = 0.0L; +-static const long double huge = 1.0e4000L; ++static const long double huge = LDBL_MAX; + + /* log gamma(x) = ( x - 0.5 ) * log(x) - x + LS2PI + 1/x P(1/x^2) + 1/x <= 0.0741 (x >= 13.495...) diff --git a/SOURCES/glibc-rh1505492-undef-1.patch b/SOURCES/glibc-rh1505492-undef-1.patch new file mode 100644 index 0000000..b1cccfb --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-1.patch @@ -0,0 +1,29 @@ +commit d643bac1f7b2f361576ce45523de7cf0bf5a69de +Author: Andreas Schwab +Date: Fri Jan 4 18:01:34 2013 +0100 + + Fix warnings in test-powerpc-snan.c + +diff --git a/sysdeps/powerpc/fpu/test-powerpc-snan.c b/sysdeps/powerpc/fpu/test-powerpc-snan.c +index b90f0264b2b2bfb9..1547ced39a7ba371 100644 +--- a/sysdeps/powerpc/fpu/test-powerpc-snan.c ++++ b/sysdeps/powerpc/fpu/test-powerpc-snan.c +@@ -17,8 +17,7 @@ + License along with the GNU C Library; if not, see + . */ + +-#define _GNU_SOURCE +-#define __USE_GNU ++#define _GNU_SOURCE 1 + #include + #include + #include +@@ -42,7 +41,7 @@ long double SNANl; + static sigjmp_buf sigfpe_buf; + + void +-init_signaling_nan() ++init_signaling_nan (void) + { + union { + double _ld16; diff --git a/SOURCES/glibc-rh1505492-undef-10.patch b/SOURCES/glibc-rh1505492-undef-10.patch new file mode 100644 index 0000000..40360df --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-10.patch @@ -0,0 +1,57 @@ +commit afb466fcb034f594e083b5664fa60a0d4f54c41b +Author: Will Newton +Date: Mon Mar 17 11:06:02 2014 +0000 + + Fix __STRICT_ANSI__ -Wundef warnings + + ChangeLog: + + 2014-03-17 Will Newton + + * argp/argp-fmtstream.h: Check whether + __STRICT_ANSI__ is defined with #ifdef rather + than #if. + * argp/argp.h: Likewise. + +diff --git a/argp/argp-fmtstream.h b/argp/argp-fmtstream.h +index f4140b924c13a302..61c45bf86b6bf8d5 100644 +--- a/argp/argp-fmtstream.h ++++ b/argp/argp-fmtstream.h +@@ -31,12 +31,14 @@ + + #ifndef __attribute__ + /* This feature is available in gcc versions 2.5 and later. */ +-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || \ ++ defined __STRICT_ANSI__ + # define __attribute__(Spec) /* empty */ + # endif + /* The __-protected variants of `format' and `printf' attributes + are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ +-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) || __STRICT_ANSI__ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) || \ ++ defined __STRICT_ANSI__ + # define __format__ format + # define __printf__ printf + # endif +diff --git a/argp/argp.h b/argp/argp.h +index 8fb7098061443ba8..37544fe44a102574 100644 +--- a/argp/argp.h ++++ b/argp/argp.h +@@ -38,12 +38,14 @@ + + #ifndef __attribute__ + /* This feature is available in gcc versions 2.5 and later. */ +-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || \ ++ defined __STRICT_ANSI__ + # define __attribute__(Spec) /* empty */ + # endif + /* The __-protected variants of `format' and `printf' attributes + are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ +-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) || __STRICT_ANSI__ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) || \ ++ defined __STRICT_ANSI__ + # define __format__ format + # define __printf__ printf + # endif diff --git a/SOURCES/glibc-rh1505492-undef-11.patch b/SOURCES/glibc-rh1505492-undef-11.patch new file mode 100644 index 0000000..4d82472 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-11.patch @@ -0,0 +1,101 @@ +commit fdf4534d02483af279deddfd23cb61f6079dd277 +Author: Siddhesh Poyarekar +Date: Tue Mar 18 07:22:36 2014 +0530 + + Fix -Wundef warnins for __FP_FAST_FMA* + + The macros are defined by the compiler, so we can only verify whether + they are defined or not. + +diff --git a/bits/mathdef.h b/bits/mathdef.h +index fb998ca22fd78e44..ed62a000be11cd37 100644 +--- a/bits/mathdef.h ++++ b/bits/mathdef.h +@@ -35,15 +35,15 @@ typedef double double_t; /* `double' expressions are evaluated as + + /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} + builtins are supported. */ +-#if __FP_FAST_FMA ++#ifdef __FP_FAST_FMA + # define FP_FAST_FMA 1 + #endif + +-#if __FP_FAST_FMAF ++#ifdef __FP_FAST_FMAF + # define FP_FAST_FMAF 1 + #endif + +-#if __FP_FAST_FMAL ++#ifdef __FP_FAST_FMAL + # define FP_FAST_FMAL 1 + #endif + +diff --git a/sysdeps/arm/bits/mathdef.h b/sysdeps/arm/bits/mathdef.h +index 37e92267455e5ddd..8230d4ba78a991c6 100644 +--- a/sysdeps/arm/bits/mathdef.h ++++ b/sysdeps/arm/bits/mathdef.h +@@ -35,15 +35,15 @@ typedef double double_t; /* `double' expressions are evaluated as + + /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} + builtins are supported. */ +-# if __FP_FAST_FMA ++# ifdef __FP_FAST_FMA + # define FP_FAST_FMA 1 + # endif + +-# if __FP_FAST_FMAF ++# ifdef __FP_FAST_FMAF + # define FP_FAST_FMAF 1 + # endif + +-# if __FP_FAST_FMAL ++# ifdef __FP_FAST_FMAL + # define FP_FAST_FMAL 1 + # endif + +diff --git a/sysdeps/tile/bits/mathdef.h b/sysdeps/tile/bits/mathdef.h +index bf0da5e438b2c01c..e5c54e85674d7695 100644 +--- a/sysdeps/tile/bits/mathdef.h ++++ b/sysdeps/tile/bits/mathdef.h +@@ -33,15 +33,15 @@ typedef double double_t; + + /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} + builtins are supported. */ +-# if __FP_FAST_FMA ++# ifdef __FP_FAST_FMA + # define FP_FAST_FMA 1 + # endif + +-# if __FP_FAST_FMAF ++# ifdef __FP_FAST_FMAF + # define FP_FAST_FMAF 1 + # endif + +-# if __FP_FAST_FMAL ++# ifdef __FP_FAST_FMAL + # define FP_FAST_FMAL 1 + # endif + +diff --git a/sysdeps/x86/bits/mathdef.h b/sysdeps/x86/bits/mathdef.h +index c202ad5928659f21..d7b40b4a52e95fe1 100644 +--- a/sysdeps/x86/bits/mathdef.h ++++ b/sysdeps/x86/bits/mathdef.h +@@ -44,15 +44,15 @@ typedef long double double_t; /* `double' expressions are evaluated as + + /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} + builtins are supported. */ +-# if __FP_FAST_FMA ++# ifdef __FP_FAST_FMA + # define FP_FAST_FMA 1 + # endif + +-# if __FP_FAST_FMAF ++# ifdef __FP_FAST_FMAF + # define FP_FAST_FMAF 1 + # endif + +-# if __FP_FAST_FMAL ++# ifdef __FP_FAST_FMAL + # define FP_FAST_FMAL 1 + # endif + diff --git a/SOURCES/glibc-rh1505492-undef-12.patch b/SOURCES/glibc-rh1505492-undef-12.patch new file mode 100644 index 0000000..344d39d --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-12.patch @@ -0,0 +1,19 @@ +commit 78b6eebcf1b33c71ae5028422f500a0e48b20544 +Author: Stefan Liebler +Date: Mon Mar 24 16:32:47 2014 +0100 + + Use += before-compile instead of a :=. + +diff --git a/posix/Makefile b/posix/Makefile +index 683b6e4b272fdebb..4034282866139aaa 100644 +--- a/posix/Makefile ++++ b/posix/Makefile +@@ -96,7 +96,7 @@ others := getconf + install-bin := getconf + install-others-programs := $(inst_libexecdir)/getconf + +-before-compile := testcases.h ptestcases.h ++before-compile += testcases.h ptestcases.h + + # So they get cleaned up. + generated := $(addprefix wordexp-test-result, 1 2 3 4 5 6 7 8 9 10) \ diff --git a/SOURCES/glibc-rh1505492-undef-13.patch b/SOURCES/glibc-rh1505492-undef-13.patch new file mode 100644 index 0000000..9fc40c6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-13.patch @@ -0,0 +1,237 @@ +commit 01f8eac224421f07f28f91cc05db7459ea433ea4 +Author: Adhemerval Zanella +Date: Wed Mar 26 13:48:00 2014 -0500 + + Move __PTHREAD_SPINS definition to architecture specific header + + This patch moves the __PTHREAD_SPINS definition to arch specific header + since pthread_mutex_t layout is also arch specific. This leads to no + need to defining __PTHREAD_MUTEX_HAVE_ELISION and thus removing of the + undefined compiler warning. + +Conflicts: + nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h + (Textual conflict due to glibc-rh841653-3.patch.) + sysdeps/unix/sysv/linux/microblaze/nptl/bits/pthreadtypes.h + (No microblaze port in our tree; file removed manually.) + +In addition, nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h +was adjusted for the separate HTM backport in glibc-rh731835-0.patch. + +diff --git a/nptl/sysdeps/pthread/pthread.h b/nptl/sysdeps/pthread/pthread.h +index 1242a9c1fd12ed3e..82994942710f3b02 100644 +--- a/nptl/sysdeps/pthread/pthread.h ++++ b/nptl/sysdeps/pthread/pthread.h +@@ -82,15 +82,6 @@ enum + #endif + + +-/* Mutex initializers. */ +-#if __PTHREAD_MUTEX_HAVE_ELISION == 1 /* 64bit layout. */ +-#define __PTHREAD_SPINS 0, 0 +-#elif __PTHREAD_MUTEX_HAVE_ELISION == 2 /* 32bit layout. */ +-#define __PTHREAD_SPINS { 0, 0 } +-#else +-#define __PTHREAD_SPINS 0 +-#endif +- + #ifdef __PTHREAD_MUTEX_HAVE_PREV + # define PTHREAD_MUTEX_INITIALIZER \ + { { 0, 0, 0, 0, 0, __PTHREAD_SPINS, { 0, 0 } } } +diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h +index 1a8f45aa5286f919..64752ef8f9199f73 100644 +--- a/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h ++++ b/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h +@@ -95,7 +95,6 @@ typedef union + __pthread_list_t __list; + # define __PTHREAD_MUTEX_HAVE_PREV 1 + # define __PTHREAD_SPINS 0, 0 +-# define __PTHREAD_MUTEX_HAVE_ELISION 1 + #else + unsigned int __nusers; + __extension__ union +@@ -107,7 +106,6 @@ typedef union + # define __spins __elision_data.__espins + # define __elision __elision_data.__elision + # define __PTHREAD_SPINS { 0, 0 } +-# define __PTHREAD_MUTEX_HAVE_ELISION 2 + } __elision_data; + __pthread_slist_t __list; + }; +diff --git a/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h +index 2f80fa9b69826d8b..dc4ee2ed55f10854 100644 +--- a/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h ++++ b/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h +@@ -105,6 +105,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h +index ce8bd713b4adc3ce..3b73352389c1ed5b 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h ++++ b/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h +@@ -77,6 +77,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h +index cc95367a61158a91..52722b8890b5b356 100644 +--- a/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h ++++ b/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h +@@ -106,6 +106,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h +index 2704fd8b75eef76b..9d0f304223929ca5 100644 +--- a/nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h ++++ b/nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h +@@ -105,7 +105,8 @@ typedef union + short __elision; + __pthread_list_t __list; + # define __PTHREAD_MUTEX_HAVE_PREV 1 +-# define __PTHREAD_MUTEX_HAVE_ELISION 1 ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++# define __PTHREAD_SPINS 0, 0 + #else + unsigned int __nusers; + __extension__ union +@@ -116,7 +117,7 @@ typedef union + short __elision; + # define __spins __elision_data.__espins + # define __elision __elision_data.__elision +-# define __PTHREAD_MUTEX_HAVE_ELISION 2 ++# define __PTHREAD_SPINS { 0, 0 } + } __elision_data; + __pthread_slist_t __list; + }; +diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h b/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +index caa9f37999dde798..bd8d41493609dcdf 100644 +--- a/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h ++++ b/ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +@@ -94,6 +94,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h +index eed8365c37b20953..ca71ccc5379941e5 100644 +--- a/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h +@@ -74,6 +74,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h +index 98479495a884da2b..fe1afc32049c70e5 100644 +--- a/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h +@@ -73,6 +73,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h +index 5e4402088c2a5be1..0e3334fd29723b6a 100644 +--- a/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h +@@ -77,6 +77,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h +index 5b30713069a439d7..5bf9ff4f77c1b574 100644 +--- a/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h +@@ -74,6 +74,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +index 7bcec6a011dd6183..af9c0de441e44ede 100644 +--- a/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h +@@ -77,6 +77,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h +index 2fda0d30cd909d67..e133abc9afbe60b2 100644 +--- a/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h +@@ -106,6 +106,9 @@ typedef union + long int __align; + } pthread_mutex_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + typedef union + { + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; +diff --git a/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h +index ac51e3b93c84c63b..4a92dd2a279fa90d 100644 +--- a/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h ++++ b/sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h +@@ -112,6 +112,9 @@ typedef union + int __align; + } pthread_mutexattr_t; + ++/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */ ++#define __PTHREAD_SPINS 0 ++ + + /* Data structure for conditional variable handling. The structure of + the attribute type is not exposed on purpose. */ diff --git a/SOURCES/glibc-rh1505492-undef-14.patch b/SOURCES/glibc-rh1505492-undef-14.patch new file mode 100644 index 0000000..3fb7bf4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-14.patch @@ -0,0 +1,182 @@ +commit 27822ce67fbf7f2b204992a410e7da2e8c1e2607 +Author: Adhemerval Zanella +Date: Wed Mar 26 15:37:35 2014 -0500 + + Define _STRING_ARCH_unaligned unconditionally + + This patch defines _STRING_ARCH_unaligned to 0 on default bits/string.h + header to avoid undefined compiler warnings on platforms that do not + define it. It also make adjustments in code where tests checked if macro + existed or not. + +Conflicts: + resolv/res_send.c + +Conflict due to stub resolver rebase in glibc-rh677316-resolv.patch. + +diff --git a/bits/string.h b/bits/string.h +index f8630d2c52a9298a..b88a6bc601803f68 100644 +--- a/bits/string.h ++++ b/bits/string.h +@@ -8,5 +8,7 @@ + #ifndef _BITS_STRING_H + #define _BITS_STRING_H 1 + ++/* Define if architecture can access unaligned multi-byte variables. */ ++#define _STRING_ARCH_unaligned 0 + + #endif /* bits/string.h */ +diff --git a/crypt/sha256.c b/crypt/sha256.c +index aea94651391f19ae..1cbd2bc8381d6778 100644 +--- a/crypt/sha256.c ++++ b/crypt/sha256.c +@@ -124,7 +124,7 @@ __sha256_finish_ctx (ctx, resbuf) + memcpy (&ctx->buffer[bytes], fillbuf, pad); + + /* Put the 64-bit file length in *bits* at the end of the buffer. */ +-#ifdef _STRING_ARCH_unaligned ++#if _STRING_ARCH_unaligned + ctx->buffer64[(bytes + pad) / 8] = SWAP64 (ctx->total64 << 3); + #else + ctx->buffer32[(bytes + pad + 4) / 4] = SWAP (ctx->total[TOTAL64_low] << 3); +diff --git a/iconv/gconv_simple.c b/iconv/gconv_simple.c +index 48932ee695083595..03fa5f2e2c771ebc 100644 +--- a/iconv/gconv_simple.c ++++ b/iconv/gconv_simple.c +@@ -112,7 +112,7 @@ internal_ucs4_loop (struct __gconv_step *step, + return result; + } + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + static inline int + __attribute ((always_inline)) + internal_ucs4_loop_unaligned (struct __gconv_step *step, +@@ -289,7 +289,7 @@ ucs4_internal_loop (struct __gconv_step *step, + return result; + } + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + static inline int + __attribute ((always_inline)) + ucs4_internal_loop_unaligned (struct __gconv_step *step, +@@ -478,7 +478,7 @@ internal_ucs4le_loop (struct __gconv_step *step, + return result; + } + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + static inline int + __attribute ((always_inline)) + internal_ucs4le_loop_unaligned (struct __gconv_step *step, +@@ -660,7 +660,7 @@ ucs4le_internal_loop (struct __gconv_step *step, + return result; + } + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + static inline int + __attribute ((always_inline)) + ucs4le_internal_loop_unaligned (struct __gconv_step *step, +diff --git a/iconv/loop.c b/iconv/loop.c +index e11e86b5ecd4abd9..7b2499a3d0657265 100644 +--- a/iconv/loop.c ++++ b/iconv/loop.c +@@ -63,7 +63,7 @@ + representations with a fixed width of 2 or 4 bytes. But if we cannot + access unaligned memory we still have to read byte-wise. */ + #undef FCTNAME2 +-#if defined _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED ++#if _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED + /* We can handle unaligned memory access. */ + # define get16(addr) *((const uint16_t *) (addr)) + # define get32(addr) *((const uint32_t *) (addr)) +@@ -342,7 +342,7 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step, + + /* Include the file a second time to define the function to handle + unaligned access. */ +-#if !defined DEFINE_UNALIGNED && !defined _STRING_ARCH_unaligned \ ++#if !defined DEFINE_UNALIGNED && !_STRING_ARCH_unaligned \ + && MIN_NEEDED_INPUT != 1 && MAX_NEEDED_INPUT % MIN_NEEDED_INPUT == 0 \ + && MIN_NEEDED_OUTPUT != 1 && MAX_NEEDED_OUTPUT % MIN_NEEDED_OUTPUT == 0 + # undef get16 +diff --git a/iconv/skeleton.c b/iconv/skeleton.c +index 934b1fdde8d277df..176436a4c81f071b 100644 +--- a/iconv/skeleton.c ++++ b/iconv/skeleton.c +@@ -203,7 +203,7 @@ + /* Define macros which can access unaligned buffers. These macros are + supposed to be used only in code outside the inner loops. For the inner + loops we have other definitions which allow optimized access. */ +-#ifdef _STRING_ARCH_unaligned ++#if _STRING_ARCH_unaligned + /* We can handle unaligned memory access. */ + # define get16u(addr) *((const uint16_t *) (addr)) + # define get32u(addr) *((const uint32_t *) (addr)) +@@ -522,7 +522,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data, + INTERNAL, for which the subexpression evaluates to 1, but INTERNAL + buffers are always aligned correctly. */ + #define POSSIBLY_UNALIGNED \ +- (!defined _STRING_ARCH_unaligned \ ++ (!_STRING_ARCH_unaligned \ + && (((FROM_LOOP_MIN_NEEDED_FROM != 1 \ + && FROM_LOOP_MAX_NEEDED_FROM % FROM_LOOP_MIN_NEEDED_FROM == 0) \ + && (FROM_LOOP_MIN_NEEDED_TO != 1 \ +diff --git a/nscd/nscd_gethst_r.c b/nscd/nscd_gethst_r.c +index 41488ed6c033ffcd..5fe9f2f62fa28fd4 100644 +--- a/nscd/nscd_gethst_r.c ++++ b/nscd/nscd_gethst_r.c +@@ -190,7 +190,7 @@ nscd_gethst_r (const char *key, size_t keylen, request_type type, + goto out; + } + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + /* The aliases_len array in the mapped database might very + well be unaligned. We will access it word-wise so on + platforms which do not tolerate unaligned accesses we +diff --git a/nscd/nscd_getserv_r.c b/nscd/nscd_getserv_r.c +index acf7e22f82582dbb..5880b1bc023d1c02 100644 +--- a/nscd/nscd_getserv_r.c ++++ b/nscd/nscd_getserv_r.c +@@ -140,7 +140,7 @@ nscd_getserv_r (const char *crit, size_t critlen, const char *proto, + > recend, 0)) + goto out; + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + /* The aliases_len array in the mapped database might very + well be unaligned. We will access it word-wise so on + platforms which do not tolerate unaligned accesses we +diff --git a/nscd/nscd_helper.c b/nscd/nscd_helper.c +index 96fb93db768703cc..a46047b1fa0d502e 100644 +--- a/nscd/nscd_helper.c ++++ b/nscd/nscd_helper.c +@@ -489,7 +489,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen, + struct hashentry *here = (struct hashentry *) (mapped->data + work); + ref_t here_key, here_packet; + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + /* Although during garbage collection when moving struct hashentry + records around we first copy from old to new location and then + adjust pointer from previous hashentry to it, there is no barrier +@@ -511,7 +511,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen, + struct datahead *dh + = (struct datahead *) (mapped->data + here_packet); + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + if ((uintptr_t) dh & (__alignof__ (*dh) - 1)) + return NULL; + #endif +@@ -535,7 +535,7 @@ __nscd_cache_search (request_type type, const char *key, size_t keylen, + struct hashentry *trailelem; + trailelem = (struct hashentry *) (mapped->data + trail); + +-#ifndef _STRING_ARCH_unaligned ++#if !_STRING_ARCH_unaligned + /* We have to redo the checks. Maybe the data changed. */ + if ((uintptr_t) trailelem & (__alignof__ (*trailelem) - 1)) + return NULL; diff --git a/SOURCES/glibc-rh1505492-undef-15.patch b/SOURCES/glibc-rh1505492-undef-15.patch new file mode 100644 index 0000000..a9c2d20 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-15.patch @@ -0,0 +1,49 @@ +commit 439bda3209b768c349b98b8ceecf0fa8d94600e9 +Author: Will Newton +Date: Mon Mar 31 15:00:32 2014 +0100 + + malloc: Fix MALLOC_DEBUG -Wundef warning + + MALLOC_DEBUG is set optionally on the command line. Default the value + to zero if it is not set on the command line, and test its value + with #if rather than #ifdef. Verified the code is identical before + and after this change apart from line numbers. + + ChangeLog: + + 2014-04-11 Will Newton + + * malloc/malloc.c [!MALLOC_DEBUG]: #define MALLOC_DEBUG + to zero if it is not defined elsewhere. (mtrim): Test + the value of MALLOC_DEBUG with #if rather than #ifdef. + +Conflicts: + malloc/malloc.c + +Resolve whitespace conflict due to malloc reformatting in upstream +commit 6c8dbf00f536d78b1937b5af6f57be47fd376344. + +diff --git a/malloc/malloc.c b/malloc/malloc.c +index 9d3b24ee0c137a1b..3e7b9bf9e8d71247 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -267,6 +267,10 @@ + or other mallocs available that do this. + */ + ++#ifndef MALLOC_DEBUG ++#define MALLOC_DEBUG 0 ++#endif ++ + #ifdef NDEBUG + # define assert(expr) ((void) 0) + #else +@@ -4520,7 +4524,7 @@ static int mtrim(mstate av, size_t pad) + + if (size > psm1) + { +-#ifdef MALLOC_DEBUG ++#if MALLOC_DEBUG + /* When debugging we simulate destroying the memory + content. */ + memset (paligned_mem, 0x89, size & ~psm1); diff --git a/SOURCES/glibc-rh1505492-undef-16.patch b/SOURCES/glibc-rh1505492-undef-16.patch new file mode 100644 index 0000000..fe6bb64 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-16.patch @@ -0,0 +1,23 @@ +commit a28a9b94c2d45df5223777cc4b88e1cab9b91c1e +Author: Steve Ellcey +Date: Tue Apr 29 10:19:30 2014 -0700 + + 2014-04-29 Steve Ellcey + + * iconf/skeleton.c (ONE_DIRECTION): Set default value if not set. + +diff --git a/iconv/skeleton.c b/iconv/skeleton.c +index 176436a4c81f071b..527ef0380c999740 100644 +--- a/iconv/skeleton.c ++++ b/iconv/skeleton.c +@@ -162,6 +162,10 @@ + # endif + #endif + ++#ifndef ONE_DIRECTION ++# define ONE_DIRECTION 0 ++#endif ++ + + /* How many bytes are needed at most for the from-charset. */ + #ifndef MAX_NEEDED_FROM diff --git a/SOURCES/glibc-rh1505492-undef-17.patch b/SOURCES/glibc-rh1505492-undef-17.patch new file mode 100644 index 0000000..1982992 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-17.patch @@ -0,0 +1,87 @@ +commit 0cdddc25a47509262a9a55a343395971b492b0fa +Author: Steve Ellcey +Date: Thu May 1 10:22:35 2014 -0700 + + 2014-05-01 Steve Ellcey + + * intl/iconv/skeleton.c (ONE_DIRECTION): Remove define. + * iconv/gconv_simple.c (ONE_DIRECTION): Define. + * iconvdata/8bit-gap.c (ONE_DIRECTION): Ditto. + * iconvdata/8bit-generic.c (ONE_DIRECTION): Ditto. + +diff --git a/iconv/gconv_simple.c b/iconv/gconv_simple.c +index 03fa5f2e2c771ebc..78c2421ecf77f198 100644 +--- a/iconv/gconv_simple.c ++++ b/iconv/gconv_simple.c +@@ -68,6 +68,7 @@ __gconv_btwoc_ascii (struct __gconv_step *step, unsigned char c) + #define FROM_LOOP internal_ucs4_loop + #define TO_LOOP internal_ucs4_loop /* This is not used. */ + #define FUNCTION_NAME __gconv_transform_internal_ucs4 ++#define ONE_DIRECTION 0 + + + static inline int +@@ -222,6 +223,7 @@ internal_ucs4_loop_single (struct __gconv_step *step, + #define FROM_LOOP ucs4_internal_loop + #define TO_LOOP ucs4_internal_loop /* This is not used. */ + #define FUNCTION_NAME __gconv_transform_ucs4_internal ++#define ONE_DIRECTION 0 + + + static inline int +@@ -433,6 +435,7 @@ ucs4_internal_loop_single (struct __gconv_step *step, + #define FROM_LOOP internal_ucs4le_loop + #define TO_LOOP internal_ucs4le_loop /* This is not used. */ + #define FUNCTION_NAME __gconv_transform_internal_ucs4le ++#define ONE_DIRECTION 0 + + + static inline int +@@ -590,6 +593,7 @@ internal_ucs4le_loop_single (struct __gconv_step *step, + #define FROM_LOOP ucs4le_internal_loop + #define TO_LOOP ucs4le_internal_loop /* This is not used. */ + #define FUNCTION_NAME __gconv_transform_ucs4le_internal ++#define ONE_DIRECTION 0 + + + static inline int +diff --git a/iconv/skeleton.c b/iconv/skeleton.c +index 527ef0380c999740..3384d520661f88ed 100644 +--- a/iconv/skeleton.c ++++ b/iconv/skeleton.c +@@ -162,11 +162,6 @@ + # endif + #endif + +-#ifndef ONE_DIRECTION +-# define ONE_DIRECTION 0 +-#endif +- +- + /* How many bytes are needed at most for the from-charset. */ + #ifndef MAX_NEEDED_FROM + # define MAX_NEEDED_FROM MIN_NEEDED_FROM +diff --git a/iconvdata/8bit-gap.c b/iconvdata/8bit-gap.c +index d2e4efc2b7ee9c4a..5139c4cef6ea8788 100644 +--- a/iconvdata/8bit-gap.c ++++ b/iconvdata/8bit-gap.c +@@ -42,6 +42,7 @@ struct gap + #define DEFINE_FINI 1 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from the 8bit charset to UCS4. */ +diff --git a/iconvdata/8bit-generic.c b/iconvdata/8bit-generic.c +index 4757d18a1f4dc037..f9bb50cb3d8bc482 100644 +--- a/iconvdata/8bit-generic.c ++++ b/iconvdata/8bit-generic.c +@@ -25,6 +25,7 @@ + #define DEFINE_FINI 1 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from the 8bit charset to UCS4. */ diff --git a/SOURCES/glibc-rh1505492-undef-18.patch b/SOURCES/glibc-rh1505492-undef-18.patch new file mode 100644 index 0000000..06f6fa8 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-18.patch @@ -0,0 +1,30 @@ +commit c727f0325376e202d095be718daf64661409e499 +Author: Roland McGrath +Date: Thu May 1 13:08:30 2014 -0700 + + Deconditionalize use of LLL_LOCK_INITIALIZER in bits/libc-lock.h. + +Conflicts: + nptl/sysdeps/pthread/bits/libc-lock.h + +Due to IS_IN backport in glibc-rh1256317-2.patch. + +diff --git a/nptl/sysdeps/pthread/bits/libc-lock.h b/nptl/sysdeps/pthread/bits/libc-lock.h +index 361063febbfec054..f6e413ad435e3fb2 100644 +--- a/nptl/sysdeps/pthread/bits/libc-lock.h ++++ b/nptl/sysdeps/pthread/bits/libc-lock.h +@@ -48,13 +48,8 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t; + /* Define an initialized recursive lock variable NAME with storage + class CLASS. */ + #if defined _LIBC && (IS_IN (libc) || IS_IN (libpthread)) +-# if LLL_LOCK_INITIALIZER == 0 +-# define __libc_lock_define_initialized_recursive(CLASS,NAME) \ +- CLASS __libc_lock_recursive_t NAME; +-# else +-# define __libc_lock_define_initialized_recursive(CLASS,NAME) \ ++# define __libc_lock_define_initialized_recursive(CLASS, NAME) \ + CLASS __libc_lock_recursive_t NAME = _LIBC_LOCK_RECURSIVE_INITIALIZER; +-# endif + # define _LIBC_LOCK_RECURSIVE_INITIALIZER \ + { LLL_LOCK_INITIALIZER, 0, NULL } + #else diff --git a/SOURCES/glibc-rh1505492-undef-19.patch b/SOURCES/glibc-rh1505492-undef-19.patch new file mode 100644 index 0000000..bf6b58b --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-19.patch @@ -0,0 +1,19 @@ +commit 8f2f08d04f969f27dad47ee2d9dcbe567f2873bc +Author: Roland McGrath +Date: Thu May 1 13:33:13 2014 -0700 + + Fix -Wundef warnings for _IO_JUMPS_OFFSET. + +diff --git a/libio/libioP.h b/libio/libioP.h +index c170b872028c7a5f..b60244ac5fc3d908 100644 +--- a/libio/libioP.h ++++ b/libio/libioP.h +@@ -100,6 +100,8 @@ extern "C" { + #if (!defined _IO_USE_OLD_IO_FILE \ + && (!defined _G_IO_NO_BACKWARD_COMPAT || _G_IO_NO_BACKWARD_COMPAT == 0)) + # define _IO_JUMPS_OFFSET 1 ++#else ++# define _IO_JUMPS_OFFSET 0 + #endif + + #define _IO_JUMPS(THIS) (THIS)->vtable diff --git a/SOURCES/glibc-rh1505492-undef-2.patch b/SOURCES/glibc-rh1505492-undef-2.patch new file mode 100644 index 0000000..0026393 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-2.patch @@ -0,0 +1,19 @@ +commit ad98e30c90f518cbcd896b1fe9e45f2318102db3 +Author: Roland McGrath +Date: Wed Jan 9 16:05:32 2013 -0800 + + Force getconf.speclist to be generated in the others pass. + +diff --git a/posix/Makefile b/posix/Makefile +index 1883b71957665f22..a68f0b7d041e65bd 100644 +--- a/posix/Makefile ++++ b/posix/Makefile +@@ -284,3 +284,8 @@ $(objpfx)getconf.speclist: getconf-speclist.c posix-envs.def + $(compile.c) -E -o - \ + | sed -n -e '/@@@PRESENT_/s/@@@PRESENT_//p' > $@.new + mv -f $@.new $@ ++ ++# This file is only actually needed at install time. But forcing it to ++# be built both makes it available for eyeball inspection and avoids the ++# surprise of things that look like compilation being done by 'make install'. ++others: $(objpfx)getconf.speclist diff --git a/SOURCES/glibc-rh1505492-undef-20.patch b/SOURCES/glibc-rh1505492-undef-20.patch new file mode 100644 index 0000000..ba536fe --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-20.patch @@ -0,0 +1,606 @@ +commit 13e402e77e70254dc5e940e1187880afcc829086 +Author: Steve Ellcey +Date: Thu May 1 13:42:40 2014 -0700 + + 2014-05-01 Steve Ellcey + + * iconvdata/ansi_x3.110.c (ONE_DIRECTION): Define. + * iconvdata/armscii-8.c (ONE_DIRECTION): Define. + * iconvdata/big5.c (ONE_DIRECTION): Define. + * iconvdata/big5hkscs.c (ONE_DIRECTION): Define. + * iconvdata/cp1255.c (ONE_DIRECTION): Define. + * iconvdata/cp1258.c (ONE_DIRECTION): Define. + * iconvdata/cp932.c (ONE_DIRECTION): Define. + * iconvdata/euc-cn.c (ONE_DIRECTION): Define. + * iconvdata/euc-jisx0213.c (ONE_DIRECTION): Define. + * iconvdata/euc-jp-ms.c (ONE_DIRECTION): Define. + * iconvdata/euc-jp.c (ONE_DIRECTION): Define. + * iconvdata/euc-kr.c (ONE_DIRECTION): Define. + * iconvdata/euc-tw.c (ONE_DIRECTION): Define. + * iconvdata/gb18030.c (ONE_DIRECTION): Define. + * iconvdata/gbbig5.c (ONE_DIRECTION): Define. + * iconvdata/gbgbk.c (ONE_DIRECTION): Define. + * iconvdata/gbk.c (ONE_DIRECTION): Define. + * iconvdata/ibm1364.c (ONE_DIRECTION): Define. + * iconvdata/ibm930.c (ONE_DIRECTION): Define. + * iconvdata/ibm932.c (ONE_DIRECTION): Define. + * iconvdata/ibm933.c (ONE_DIRECTION): Define. + * iconvdata/ibm935.c (ONE_DIRECTION): Define. + * iconvdata/ibm937.c (ONE_DIRECTION): Define. + * iconvdata/ibm939.c (ONE_DIRECTION): Define. + * iconvdata/ibm943.c (ONE_DIRECTION): Define. + * iconvdata/iso-2022-cn-ext.c (ONE_DIRECTION): Define. + * iconvdata/iso-2022-cn.c (ONE_DIRECTION): Define. + * iconvdata/iso-2022-jp-3.c (ONE_DIRECTION): Define. + * iconvdata/iso-2022-jp.c (ONE_DIRECTION): Define. + * iconvdata/iso-2022-kr.c (ONE_DIRECTION): Define. + * iconvdata/iso646.c (ONE_DIRECTION): Define. + * iconvdata/iso8859-1.c (ONE_DIRECTION): Define. + * iconvdata/iso_11548-1.c (ONE_DIRECTION): Define. + * iconvdata/iso_6937-2.c (ONE_DIRECTION): Define. + * iconvdata/iso_6937.c (ONE_DIRECTION): Define. + * iconvdata/johab.c (ONE_DIRECTION): Define. + * iconvdata/shift_jisx0213.c (ONE_DIRECTION): Define. + * iconvdata/sjis.c (ONE_DIRECTION): Define. + * iconvdata/t.61.c (ONE_DIRECTION): Define. + * iconvdata/tcvn5712-1.c (ONE_DIRECTION): Define. + * iconvdata/tscii.c (ONE_DIRECTION): Define. + * iconvdata/uhc.c (ONE_DIRECTION): Define. + * iconvdata/unicode.c (ONE_DIRECTION): Define. + * iconvdata/utf-16.c (ONE_DIRECTION): Define. + * iconvdata/utf-32.c (ONE_DIRECTION): Define. + * iconvdata/utf-7.c (ONE_DIRECTION): Define. + +diff --git a/iconvdata/ansi_x3.110.c b/iconvdata/ansi_x3.110.c +index e08aeba7cb33883d..a72914dc93fc3dec 100644 +--- a/iconvdata/ansi_x3.110.c ++++ b/iconvdata/ansi_x3.110.c +@@ -390,6 +390,7 @@ static const char from_ucs4[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from ANSI_X3.110 to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/armscii-8.c b/iconvdata/armscii-8.c +index 34f33f3b4cb10f91..767d5cb9e6a018b0 100644 +--- a/iconvdata/armscii-8.c ++++ b/iconvdata/armscii-8.c +@@ -28,6 +28,7 @@ + #define DEFINE_FINI 1 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + static const uint16_t map_from_armscii_8[0xfe - 0xa2 + 1] = +diff --git a/iconvdata/big5.c b/iconvdata/big5.c +index db2d6ec9baa636df..e8701785a7ff5c50 100644 +--- a/iconvdata/big5.c ++++ b/iconvdata/big5.c +@@ -8383,6 +8383,7 @@ static const char from_ucs4_tab15[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from Big5 to UCS4. */ +diff --git a/iconvdata/big5hkscs.c b/iconvdata/big5hkscs.c +index 68716ceeab9efba1..afc812d520bdff96 100644 +--- a/iconvdata/big5hkscs.c ++++ b/iconvdata/big5hkscs.c +@@ -17738,6 +17738,7 @@ static struct + #define TO_LOOP to_big5hkscs + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/cp1255.c b/iconvdata/cp1255.c +index c03478b2f8c03213..dfcc674c2cb14e62 100644 +--- a/iconvdata/cp1255.c ++++ b/iconvdata/cp1255.c +@@ -30,6 +30,7 @@ + #define TO_LOOP to_cp1255 + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 1 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/cp1258.c b/iconvdata/cp1258.c +index 918b39db773e152f..bb2e210f540e6054 100644 +--- a/iconvdata/cp1258.c ++++ b/iconvdata/cp1258.c +@@ -31,6 +31,7 @@ + #define TO_LOOP to_cp1258 + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 1 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/cp932.c b/iconvdata/cp932.c +index 82a78fa7f6946ff1..0d40be864740ce5b 100644 +--- a/iconvdata/cp932.c ++++ b/iconvdata/cp932.c +@@ -4534,6 +4534,7 @@ static const char from_ucs4_extra[229][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from CP932 to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/euc-cn.c b/iconvdata/euc-cn.c +index 7d5d9505c9ba36ab..499cffac0afc0e66 100644 +--- a/iconvdata/euc-cn.c ++++ b/iconvdata/euc-cn.c +@@ -30,6 +30,7 @@ + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from EUC-CN to UCS4. */ +diff --git a/iconvdata/euc-jisx0213.c b/iconvdata/euc-jisx0213.c +index 482ae813ecadd29a..b0ec5d38e0c269c9 100644 +--- a/iconvdata/euc-jisx0213.c ++++ b/iconvdata/euc-jisx0213.c +@@ -43,6 +43,7 @@ + #define TO_LOOP to_euc_jisx0213 + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 3 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/euc-jp-ms.c b/iconvdata/euc-jp-ms.c +index 25dd59b6ee6a625d..c3f322bfa729847e 100644 +--- a/iconvdata/euc-jp-ms.c ++++ b/iconvdata/euc-jp-ms.c +@@ -4641,6 +4641,7 @@ static const unsigned char from_ucs4_extra[229][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 3 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from EUC-JP-MS to UCS4. */ +diff --git a/iconvdata/euc-jp.c b/iconvdata/euc-jp.c +index 358ececf6cd1fc9c..352c7f3bd1f84422 100644 +--- a/iconvdata/euc-jp.c ++++ b/iconvdata/euc-jp.c +@@ -33,6 +33,7 @@ + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 3 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from EUC-JP to UCS4. */ +diff --git a/iconvdata/euc-kr.c b/iconvdata/euc-kr.c +index c5cb125a83afb59b..dfca5cd8046757a9 100644 +--- a/iconvdata/euc-kr.c ++++ b/iconvdata/euc-kr.c +@@ -67,6 +67,7 @@ euckr_from_ucs4 (uint32_t ch, unsigned char *cp) + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from EUC-KR to UCS4. */ +diff --git a/iconvdata/euc-tw.c b/iconvdata/euc-tw.c +index 8175f6a0c7441629..4c9b336d2cc95482 100644 +--- a/iconvdata/euc-tw.c ++++ b/iconvdata/euc-tw.c +@@ -32,6 +32,7 @@ + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 4 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from EUC-TW to UCS4. */ +diff --git a/iconvdata/gb18030.c b/iconvdata/gb18030.c +index e7cac10216ba2fed..a4761ce6c574120e 100644 +--- a/iconvdata/gb18030.c ++++ b/iconvdata/gb18030.c +@@ -24107,6 +24107,7 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 4 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from GB18030 to UCS4. */ +diff --git a/iconvdata/gbbig5.c b/iconvdata/gbbig5.c +index d8a9b9524695ba69..8bd6fe8639a70e5d 100644 +--- a/iconvdata/gbbig5.c ++++ b/iconvdata/gbbig5.c +@@ -4784,6 +4784,7 @@ const char __from_big5_to_gb2312 [13973][2] = + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 1 + #define MAX_NEEDED_TO 2 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from GB2312 to BIG5. */ +diff --git a/iconvdata/gbgbk.c b/iconvdata/gbgbk.c +index 6b6dfc2c362b35d1..29793e997c3624ee 100644 +--- a/iconvdata/gbgbk.c ++++ b/iconvdata/gbgbk.c +@@ -32,6 +32,7 @@ + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 1 + #define MAX_NEEDED_TO 2 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from GBK to GB2312. */ +diff --git a/iconvdata/gbk.c b/iconvdata/gbk.c +index dcc33c7f5d59a5f5..e355c33f569ae1cf 100644 +--- a/iconvdata/gbk.c ++++ b/iconvdata/gbk.c +@@ -13130,6 +13130,7 @@ static const char __gbk_from_ucs4_tab12[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from GBK to UCS4. */ +diff --git a/iconvdata/ibm1364.c b/iconvdata/ibm1364.c +index dc71cd728b764d1e..9086fda4df2bf117 100644 +--- a/iconvdata/ibm1364.c ++++ b/iconvdata/ibm1364.c +@@ -55,6 +55,7 @@ + #else + # define MAX_NEEDED_TO 4 + #endif ++#define ONE_DIRECTION 0 + #define PREPARE_LOOP \ + int save_curcs; \ + int *curcsp = &data->__statep->__count; +diff --git a/iconvdata/ibm930.c b/iconvdata/ibm930.c +index 51a67a03bf6c5ccb..636141114f506985 100644 +--- a/iconvdata/ibm930.c ++++ b/iconvdata/ibm930.c +@@ -31,6 +31,7 @@ + #define CHARSET_NAME "IBM930//" + #define FROM_LOOP from_ibm930 + #define TO_LOOP to_ibm930 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/ibm932.c b/iconvdata/ibm932.c +index d88185c12630d9f2..6e242eea57b9063c 100644 +--- a/iconvdata/ibm932.c ++++ b/iconvdata/ibm932.c +@@ -29,6 +29,7 @@ + #define CHARSET_NAME "IBM932//" + #define FROM_LOOP from_ibm932 + #define TO_LOOP to_ibm932 ++#define ONE_DIRECTION 0 + + /* Definitions of initialization and destructor function. */ + #define DEFINE_INIT 1 +diff --git a/iconvdata/ibm933.c b/iconvdata/ibm933.c +index b5f99dfad2b31cb4..8b9e5780a36a454a 100644 +--- a/iconvdata/ibm933.c ++++ b/iconvdata/ibm933.c +@@ -31,6 +31,7 @@ + #define CHARSET_NAME "IBM933//" + #define FROM_LOOP from_ibm933 + #define TO_LOOP to_ibm933 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/ibm935.c b/iconvdata/ibm935.c +index ddab8cf60913450c..4e2d99ab56d7f0d2 100644 +--- a/iconvdata/ibm935.c ++++ b/iconvdata/ibm935.c +@@ -31,6 +31,7 @@ + #define CHARSET_NAME "IBM935//" + #define FROM_LOOP from_ibm935 + #define TO_LOOP to_ibm935 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/ibm937.c b/iconvdata/ibm937.c +index 2f07d92ce853abc1..1e468871b783e78d 100644 +--- a/iconvdata/ibm937.c ++++ b/iconvdata/ibm937.c +@@ -31,6 +31,7 @@ + #define CHARSET_NAME "IBM937//" + #define FROM_LOOP from_ibm937 + #define TO_LOOP to_ibm937 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/ibm939.c b/iconvdata/ibm939.c +index 65d547e381c63aa4..2060b0c329df0c86 100644 +--- a/iconvdata/ibm939.c ++++ b/iconvdata/ibm939.c +@@ -31,6 +31,7 @@ + #define CHARSET_NAME "IBM939//" + #define FROM_LOOP from_ibm939 + #define TO_LOOP to_ibm939 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/ibm943.c b/iconvdata/ibm943.c +index e020d0972681d776..923a67148bab2d42 100644 +--- a/iconvdata/ibm943.c ++++ b/iconvdata/ibm943.c +@@ -29,6 +29,7 @@ + #define CHARSET_NAME "IBM943//" + #define FROM_LOOP from_ibm943 + #define TO_LOOP to_ibm943 ++#define ONE_DIRECTION 0 + + /* Definitions of initialization and destructor function. */ + #define DEFINE_INIT 1 +diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c +index c5cea931282f498f..bde266811d967192 100644 +--- a/iconvdata/iso-2022-cn-ext.c ++++ b/iconvdata/iso-2022-cn-ext.c +@@ -47,6 +47,7 @@ + #define CHARSET_NAME "ISO-2022-CN-EXT//" + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP from_iso2022cn_ext_loop + #define TO_LOOP to_iso2022cn_ext_loop + #define FROM_LOOP_MIN_NEEDED_FROM 1 +diff --git a/iconvdata/iso-2022-cn.c b/iconvdata/iso-2022-cn.c +index b8d10062a44ee650..e3539fde7109eb94 100644 +--- a/iconvdata/iso-2022-cn.c ++++ b/iconvdata/iso-2022-cn.c +@@ -44,6 +44,7 @@ + #define DEFINE_FINI 1 + #define FROM_LOOP from_iso2022cn_loop + #define TO_LOOP to_iso2022cn_loop ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 4 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/iso-2022-jp-3.c b/iconvdata/iso-2022-jp-3.c +index 2958b6de847f5202..e4c149dba019b3ff 100644 +--- a/iconvdata/iso-2022-jp-3.c ++++ b/iconvdata/iso-2022-jp-3.c +@@ -38,6 +38,7 @@ + #define TO_LOOP to_iso2022jp3_loop + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 4 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/iso-2022-jp.c b/iconvdata/iso-2022-jp.c +index ce7743200a8579f5..409bb2e4b72510cd 100644 +--- a/iconvdata/iso-2022-jp.c ++++ b/iconvdata/iso-2022-jp.c +@@ -48,6 +48,7 @@ struct gap + /* Definitions used in the body of the `gconv' function. */ + #define FROM_LOOP from_iso2022jp_loop + #define TO_LOOP to_iso2022jp_loop ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 4 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/iso-2022-kr.c b/iconvdata/iso-2022-kr.c +index ea9bd2194cbcd4c8..91cb64c5b93ef0ed 100644 +--- a/iconvdata/iso-2022-kr.c ++++ b/iconvdata/iso-2022-kr.c +@@ -43,6 +43,7 @@ + #define MAX_NEEDED_FROM 4 + #define MIN_NEEDED_TO 4 + #define MAX_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + #define PREPARE_LOOP \ + int save_set; \ + int *setp = &data->__statep->__count; \ +diff --git a/iconvdata/iso646.c b/iconvdata/iso646.c +index c0002ee202be3a7f..37ebd304eccc14c5 100644 +--- a/iconvdata/iso646.c ++++ b/iconvdata/iso646.c +@@ -43,6 +43,8 @@ + #define DEFINE_FINI 0 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 ++ + #define FROM_DIRECTION (dir == from_iso646) + #define PREPARE_LOOP \ + enum direction dir = ((struct iso646_data *) step->__data)->dir; \ +diff --git a/iconvdata/iso8859-1.c b/iconvdata/iso8859-1.c +index cdc1b0978c3dc818..dc3965bd81291eb7 100644 +--- a/iconvdata/iso8859-1.c ++++ b/iconvdata/iso8859-1.c +@@ -28,6 +28,7 @@ + #define DEFINE_FINI 1 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from ISO 8859-1 to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/iso_11548-1.c b/iconvdata/iso_11548-1.c +index b1b9e996debf2489..fb71d4b7376ff3af 100644 +--- a/iconvdata/iso_11548-1.c ++++ b/iconvdata/iso_11548-1.c +@@ -29,6 +29,7 @@ + #define DEFINE_FINI 1 + #define MIN_NEEDED_FROM 1 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + #define BRAILLE_UCS_BASE 0x2800 + +diff --git a/iconvdata/iso_6937-2.c b/iconvdata/iso_6937-2.c +index fb7833dd804e238b..bfcc361ee6fadf05 100644 +--- a/iconvdata/iso_6937-2.c ++++ b/iconvdata/iso_6937-2.c +@@ -380,6 +380,7 @@ static const char from_ucs4[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from ISO 6937-2 to UCS4. */ +diff --git a/iconvdata/iso_6937.c b/iconvdata/iso_6937.c +index 3ecd9aca3f2e7914..b7eb3671055f6566 100644 +--- a/iconvdata/iso_6937.c ++++ b/iconvdata/iso_6937.c +@@ -380,6 +380,7 @@ static const char from_ucs4[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from ISO 6937 to UCS4. */ +diff --git a/iconvdata/johab.c b/iconvdata/johab.c +index f5749aba7f4f516b..0dc67e4a6d934d65 100644 +--- a/iconvdata/johab.c ++++ b/iconvdata/johab.c +@@ -150,6 +150,7 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2) + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + + /* First define the conversion function from JOHAB to UCS4. */ +diff --git a/iconvdata/shift_jisx0213.c b/iconvdata/shift_jisx0213.c +index 79b155156a699f05..0e38a905e5212955 100644 +--- a/iconvdata/shift_jisx0213.c ++++ b/iconvdata/shift_jisx0213.c +@@ -43,6 +43,7 @@ + #define TO_LOOP to_shift_jisx0213 + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/sjis.c b/iconvdata/sjis.c +index ccb5dfc08febf3a3..7033aa4926a4405c 100644 +--- a/iconvdata/sjis.c ++++ b/iconvdata/sjis.c +@@ -4320,6 +4320,7 @@ static const char from_ucs4_extra[0x100][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from SJIS to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/t.61.c b/iconvdata/t.61.c +index db5952b074ded19c..c73adba7865755c9 100644 +--- a/iconvdata/t.61.c ++++ b/iconvdata/t.61.c +@@ -373,6 +373,7 @@ static const char from_ucs4[][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from T.61 to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/tcvn5712-1.c b/iconvdata/tcvn5712-1.c +index f6a0c4faa79a4628..9c1465b32942d45d 100644 +--- a/iconvdata/tcvn5712-1.c ++++ b/iconvdata/tcvn5712-1.c +@@ -29,6 +29,7 @@ + #define TO_LOOP to_tcvn5712_1 + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 1 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/tscii.c b/iconvdata/tscii.c +index 8ff708137de2ddbe..60e6ad9073f562ad 100644 +--- a/iconvdata/tscii.c ++++ b/iconvdata/tscii.c +@@ -38,6 +38,7 @@ + #define TO_LOOP to_tscii + #define DEFINE_INIT 1 + #define DEFINE_FINI 1 ++#define ONE_DIRECTION 0 + #define FROM_LOOP_MIN_NEEDED_FROM 1 + #define FROM_LOOP_MAX_NEEDED_FROM 2 + #define FROM_LOOP_MIN_NEEDED_TO 4 +diff --git a/iconvdata/uhc.c b/iconvdata/uhc.c +index da12ba614344c417..1bb548cdf43e3ca6 100644 +--- a/iconvdata/uhc.c ++++ b/iconvdata/uhc.c +@@ -3044,6 +3044,7 @@ static const char uhc_hangul_from_ucs[11172][2] = + #define MIN_NEEDED_FROM 1 + #define MAX_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + + /* First define the conversion function from UHC to UCS4. */ + #define MIN_NEEDED_INPUT MIN_NEEDED_FROM +diff --git a/iconvdata/unicode.c b/iconvdata/unicode.c +index 6a22f3b2465af526..73bda747097284d8 100644 +--- a/iconvdata/unicode.c ++++ b/iconvdata/unicode.c +@@ -38,6 +38,7 @@ + #define DEFINE_FINI 0 + #define MIN_NEEDED_FROM 2 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + #define FROM_DIRECTION (dir == from_unicode) + #define PREPARE_LOOP \ + enum direction dir = ((struct unicode_data *) step->__data)->dir; \ +diff --git a/iconvdata/utf-16.c b/iconvdata/utf-16.c +index e833d3c3ba4b2980..167e47767d045925 100644 +--- a/iconvdata/utf-16.c ++++ b/iconvdata/utf-16.c +@@ -39,6 +39,7 @@ + #define MIN_NEEDED_FROM 2 + #define MAX_NEEDED_FROM 4 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + #define FROM_DIRECTION (dir == from_utf16) + #define PREPARE_LOOP \ + enum direction dir = ((struct utf16_data *) step->__data)->dir; \ +diff --git a/iconvdata/utf-32.c b/iconvdata/utf-32.c +index 1173d6fc4988d300..d5e75a3f16bf5e92 100644 +--- a/iconvdata/utf-32.c ++++ b/iconvdata/utf-32.c +@@ -37,6 +37,7 @@ + #define DEFINE_FINI 0 + #define MIN_NEEDED_FROM 4 + #define MIN_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + #define FROM_DIRECTION (dir == from_utf32) + #define PREPARE_LOOP \ + enum direction dir = ((struct utf32_data *) step->__data)->dir; \ +diff --git a/iconvdata/utf-7.c b/iconvdata/utf-7.c +index 3336b1ff39b2c44d..b14330eb90c1eff5 100644 +--- a/iconvdata/utf-7.c ++++ b/iconvdata/utf-7.c +@@ -120,6 +120,7 @@ base64 (unsigned int i) + #define MAX_NEEDED_FROM 6 + #define MIN_NEEDED_TO 4 + #define MAX_NEEDED_TO 4 ++#define ONE_DIRECTION 0 + #define PREPARE_LOOP \ + mbstate_t saved_state; \ + mbstate_t *statep = data->__statep; diff --git a/SOURCES/glibc-rh1505492-undef-21.patch b/SOURCES/glibc-rh1505492-undef-21.patch new file mode 100644 index 0000000..a0b66a2 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-21.patch @@ -0,0 +1,54 @@ +commit eb1ed03dafcd9a7ea6e95b958413342e20b35968 +Author: Roland McGrath +Date: Mon May 5 13:06:18 2014 -0700 + + Fix -Wundef issues in generated errlist.c. + +Conflicts: + sysdeps/gnu/errlist.awk + sysdeps/gnu/errlist.c + +Due to IS_IN backport in glibc-rh1256317-2.patch. + +diff --git a/sysdeps/gnu/errlist.awk b/sysdeps/gnu/errlist.awk +index 8bad43199cd9e1c4..ebae2a6398c2697e 100644 +--- a/sysdeps/gnu/errlist.awk ++++ b/sysdeps/gnu/errlist.awk +@@ -52,6 +52,7 @@ BEGIN { + print "#ifdef ERR_MAX"; + print "# define ERRLIST_SIZE ERR_MAX + 1"; + print "#else" ++ print "# define ERR_MAX 0"; + print "# define ERRLIST_SIZE"; + print "#endif"; + +@@ -109,7 +110,7 @@ END { + print " (sizeof _sys_errlist_internal / sizeof _sys_errlist_internal [0])"; + print "const int _sys_nerr_internal = NERR;" + print ""; +- print "#if IS_IN (libc) && !ERRLIST_NO_COMPAT"; ++ print "#if IS_IN (libc) && !defined ERRLIST_NO_COMPAT"; + print "# include "; + print "#endif"; + print ""; +diff --git a/sysdeps/gnu/errlist.c b/sysdeps/gnu/errlist.c +index 278f7998b592e92a..4551249d723f47a6 100644 +--- a/sysdeps/gnu/errlist.c ++++ b/sysdeps/gnu/errlist.c +@@ -13,6 +13,7 @@ + #ifdef ERR_MAX + # define ERRLIST_SIZE ERR_MAX + 1 + #else ++# define ERR_MAX 0 + # define ERRLIST_SIZE + #endif + const char *const _sys_errlist_internal[ERRLIST_SIZE] = +@@ -1479,7 +1480,7 @@ TRANS error; @pxref{Cancel AIO Operations}. */ + (sizeof _sys_errlist_internal / sizeof _sys_errlist_internal [0]) + const int _sys_nerr_internal = NERR; + +-#if IS_IN (libc) && !ERRLIST_NO_COMPAT ++#if IS_IN (libc) && !defined ERRLIST_NO_COMPAT + # include + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-22.patch b/SOURCES/glibc-rh1505492-undef-22.patch new file mode 100644 index 0000000..e499840 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-22.patch @@ -0,0 +1,31 @@ +commit 73ba67cbc3941c3bcfda31a22a9d0d97ac928f3b +Author: Andreas Schwab +Date: Tue May 13 17:04:27 2014 +0200 + + Fix macro warning on HAVE_PT_CHOWN + +diff --git a/config.h.in b/config.h.in +index ef33c23c75ad2220..820ada7bb209b6f1 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -258,6 +258,6 @@ + #undef HAVE_ARM_PCS_VFP + + /* The pt_chown binary is being built and used by grantpt. */ +-#undef HAVE_PT_CHOWN ++#define HAVE_PT_CHOWN 0 + + #endif +diff --git a/sysdeps/unix/grantpt.c b/sysdeps/unix/grantpt.c +index 66ff3d9f41ae50a7..b7fb61ada3c789c4 100644 +--- a/sysdeps/unix/grantpt.c ++++ b/sysdeps/unix/grantpt.c +@@ -176,7 +176,7 @@ grantpt (int fd) + /* We have to use the helper program if it is available. */ + helper:; + +-#ifdef HAVE_PT_CHOWN ++#if HAVE_PT_CHOWN + pid_t pid = __fork (); + if (pid == -1) + goto cleanup; diff --git a/SOURCES/glibc-rh1505492-undef-23.patch b/SOURCES/glibc-rh1505492-undef-23.patch new file mode 100644 index 0000000..f3e0c39 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-23.patch @@ -0,0 +1,190 @@ +Recreation of this upstream commit: + +commit 3d8c8bff798a15b6dc0ee94d24fc877db9706589 +Author: Andreas Schwab +Date: Tue Mar 25 11:55:52 2014 +0100 + + Remove last use of USE___THREAD + +This was done using unifdef -m -UUSE___THREAD elf/rtld.c, followed by a +manual reindent. + +diff --git a/elf/rtld.c b/elf/rtld.c +index b5a859ecff740705..e934ad38db39d343 100644 +--- a/elf/rtld.c ++++ b/elf/rtld.c +@@ -382,19 +382,8 @@ _dl_start_final (void *arg, struct dl_start_final_info *info) + GL(dl_rtld_map).l_text_end = (ElfW(Addr)) _etext; + /* Copy the TLS related data if necessary. */ + #ifndef DONT_USE_BOOTSTRAP_MAP +-# if USE___THREAD +- assert (info->l.l_tls_modid != 0); +- GL(dl_rtld_map).l_tls_blocksize = info->l.l_tls_blocksize; +- GL(dl_rtld_map).l_tls_align = info->l.l_tls_align; +- GL(dl_rtld_map).l_tls_firstbyte_offset = info->l.l_tls_firstbyte_offset; +- GL(dl_rtld_map).l_tls_initimage_size = info->l.l_tls_initimage_size; +- GL(dl_rtld_map).l_tls_initimage = info->l.l_tls_initimage; +- GL(dl_rtld_map).l_tls_offset = info->l.l_tls_offset; +- GL(dl_rtld_map).l_tls_modid = 1; +-# else +-# if NO_TLS_OFFSET != 0 ++# if NO_TLS_OFFSET != 0 + GL(dl_rtld_map).l_tls_offset = NO_TLS_OFFSET; +-# endif + # endif + + #endif +@@ -476,9 +465,6 @@ _dl_start (void *arg) + ++cnt) + bootstrap_map.l_info[cnt] = 0; + # endif +-# if USE___THREAD +- bootstrap_map.l_tls_modid = 0; +-# endif + #endif + + /* Figure out the run-time load address of the dynamic linker itself. */ +@@ -497,117 +483,6 @@ _dl_start (void *arg) + to it. When we have something like GOTOFF relocs, we can use a plain + reference to find the runtime address. Without that, we have to rely + on the `l_addr' value, which is not the value we want when prelinked. */ +-#if USE___THREAD +- dtv_t initdtv[3]; +- ElfW(Ehdr) *ehdr +-# ifdef DONT_USE_BOOTSTRAP_MAP +- = (ElfW(Ehdr) *) &_begin; +-# else +-# error This will not work with prelink. +- = (ElfW(Ehdr) *) bootstrap_map.l_addr; +-# endif +- ElfW(Phdr) *phdr = (ElfW(Phdr) *) ((void *) ehdr + ehdr->e_phoff); +- size_t cnt = ehdr->e_phnum; /* PT_TLS is usually the last phdr. */ +- while (cnt-- > 0) +- if (phdr[cnt].p_type == PT_TLS) +- { +- void *tlsblock; +- size_t max_align = MAX (TLS_INIT_TCB_ALIGN, phdr[cnt].p_align); +- char *p; +- +- bootstrap_map.l_tls_blocksize = phdr[cnt].p_memsz; +- bootstrap_map.l_tls_align = phdr[cnt].p_align; +- if (phdr[cnt].p_align == 0) +- bootstrap_map.l_tls_firstbyte_offset = 0; +- else +- bootstrap_map.l_tls_firstbyte_offset = (phdr[cnt].p_vaddr +- & (phdr[cnt].p_align - 1)); +- assert (bootstrap_map.l_tls_blocksize != 0); +- bootstrap_map.l_tls_initimage_size = phdr[cnt].p_filesz; +- bootstrap_map.l_tls_initimage = (void *) (bootstrap_map.l_addr +- + phdr[cnt].p_vaddr); +- +- /* We can now allocate the initial TLS block. This can happen +- on the stack. We'll get the final memory later when we +- know all about the various objects loaded at startup +- time. */ +-# if TLS_TCB_AT_TP +- tlsblock = alloca (roundup (bootstrap_map.l_tls_blocksize, +- TLS_INIT_TCB_ALIGN) +- + TLS_INIT_TCB_SIZE +- + max_align); +-# elif TLS_DTV_AT_TP +- tlsblock = alloca (roundup (TLS_INIT_TCB_SIZE, +- bootstrap_map.l_tls_align) +- + bootstrap_map.l_tls_blocksize +- + max_align); +-# else +- /* In case a model with a different layout for the TCB and DTV +- is defined add another #elif here and in the following #ifs. */ +-# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" +-# endif +- /* Align the TLS block. */ +- tlsblock = (void *) (((uintptr_t) tlsblock + max_align - 1) +- & ~(max_align - 1)); +- +- /* Initialize the dtv. [0] is the length, [1] the generation +- counter. */ +- initdtv[0].counter = 1; +- initdtv[1].counter = 0; +- +- /* Initialize the TLS block. */ +-# if TLS_TCB_AT_TP +- initdtv[2].pointer = tlsblock; +-# elif TLS_DTV_AT_TP +- bootstrap_map.l_tls_offset = roundup (TLS_INIT_TCB_SIZE, +- bootstrap_map.l_tls_align); +- initdtv[2].pointer = (char *) tlsblock + bootstrap_map.l_tls_offset; +-# else +-# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" +-# endif +- p = __mempcpy (initdtv[2].pointer, bootstrap_map.l_tls_initimage, +- bootstrap_map.l_tls_initimage_size); +-# ifdef HAVE_BUILTIN_MEMSET +- __builtin_memset (p, '\0', (bootstrap_map.l_tls_blocksize +- - bootstrap_map.l_tls_initimage_size)); +-# else +- { +- size_t remaining = (bootstrap_map.l_tls_blocksize +- - bootstrap_map.l_tls_initimage_size); +- while (remaining-- > 0) +- *p++ = '\0'; +- } +-# endif +- +- /* Install the pointer to the dtv. */ +- +- /* Initialize the thread pointer. */ +-# if TLS_TCB_AT_TP +- bootstrap_map.l_tls_offset +- = roundup (bootstrap_map.l_tls_blocksize, TLS_INIT_TCB_ALIGN); +- +- INSTALL_DTV ((char *) tlsblock + bootstrap_map.l_tls_offset, +- initdtv); +- +- const char *lossage = TLS_INIT_TP ((char *) tlsblock +- + bootstrap_map.l_tls_offset, 0); +-# elif TLS_DTV_AT_TP +- INSTALL_DTV (tlsblock, initdtv); +- const char *lossage = TLS_INIT_TP (tlsblock, 0); +-# else +-# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" +-# endif +- if (__builtin_expect (lossage != NULL, 0)) +- _dl_fatal_printf ("cannot set up thread-local storage: %s\n", +- lossage); +- +- /* So far this is module number one. */ +- bootstrap_map.l_tls_modid = 1; +- +- /* There can only be one PT_TLS entry. */ +- break; +- } +-#endif /* USE___THREAD */ + + #ifdef ELF_MACHINE_BEFORE_RTLD_RELOC + ELF_MACHINE_BEFORE_RTLD_RELOC (bootstrap_map.l_info); +@@ -853,12 +728,7 @@ cannot allocate TLS data structures for initial thread"); + + /* And finally install it for the main thread. If ld.so itself uses + TLS we know the thread pointer was initialized earlier. */ +- const char *lossage +-#ifdef USE___THREAD +- = TLS_INIT_TP (tcbp, USE___THREAD); +-#else +- = TLS_INIT_TP (tcbp, 0); +-#endif ++ const char *lossage = TLS_INIT_TP (tcbp, 0); + if (__builtin_expect (lossage != NULL, 0)) + _dl_fatal_printf ("cannot set up thread-local storage: %s\n", lossage); + tls_init_tp_called = true; +@@ -2344,11 +2214,7 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n", + if (! tls_init_tp_called) + { + const char *lossage +-#ifdef USE___THREAD +- = TLS_INIT_TP (tcbp, USE___THREAD); +-#else + = TLS_INIT_TP (tcbp, 0); +-#endif + if (__builtin_expect (lossage != NULL, 0)) + _dl_fatal_printf ("cannot set up thread-local storage: %s\n", + lossage); diff --git a/SOURCES/glibc-rh1505492-undef-24.patch b/SOURCES/glibc-rh1505492-undef-24.patch new file mode 100644 index 0000000..196c0e3 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-24.patch @@ -0,0 +1,35 @@ +commit 4f02e2b8f94799b4f9e57e922c06c5eeec4272e6 +Author: Will Newton +Date: Fri Apr 25 15:48:48 2014 +0100 + + stdlib/gmp-impl.h: Silence -Wundef warning for USE_STACK_ALLOC + + The upstream version of GMP has long removed this conditional + altogether in this commit: + + changeset: 5254:88618a4694ac + user: Kevin Ryde + date: Sun Jun 17 01:37:27 2001 +0200 + + So just turn the #if into an #ifdef to silence the warning. + + ChangeLog: + + 2014-05-14 Will Newton + + * stdlib/gmp-impl.h: Test USE_STACK_ALLOC #ifdef + rather than #if. + +diff --git a/stdlib/gmp-impl.h b/stdlib/gmp-impl.h +index 7e94624859dd7017..add63603f64ff39e 100644 +--- a/stdlib/gmp-impl.h ++++ b/stdlib/gmp-impl.h +@@ -47,7 +47,7 @@ along with the GNU MP Library; see the file COPYING.LIB. If not, see + #endif + #endif + +-#if ! defined (HAVE_ALLOCA) || USE_STACK_ALLOC ++#if ! defined (HAVE_ALLOCA) || defined (USE_STACK_ALLOC) + #include "stack-alloc.h" + #else + #define TMP_DECL(m) diff --git a/SOURCES/glibc-rh1505492-undef-25.patch b/SOURCES/glibc-rh1505492-undef-25.patch new file mode 100644 index 0000000..31cbbcf --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-25.patch @@ -0,0 +1,114 @@ +commit 93a6d0820430bfe3d09695a1376c07abf6d2214f +Author: Roland McGrath +Date: Fri Jun 20 19:50:16 2014 -0700 + + Clean up stack-coloring macros. + +Conflicts: + sysdeps/x86_64/nptl/Makefile + +File change was applied to nptl/sysdeps/x86_64/Makefile instead. + +diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c +index 2c126fd4ae447b25..0fba6ce3474e8b35 100644 +--- a/nptl/allocatestack.c ++++ b/nptl/allocatestack.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + + + #ifndef NEED_SEPARATE_REGISTER_STACK +diff --git a/nptl/stack-aliasing.h b/nptl/stack-aliasing.h +new file mode 100644 +index 0000000000000000..526b54e18f7e0a27 +--- /dev/null ++++ b/nptl/stack-aliasing.h +@@ -0,0 +1,29 @@ ++/* Define macros for stack address aliasing issues for NPTL. Stub version. ++ Copyright (C) 2014 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++/* This is a number of bytes (less than a page) by which to "color" the ++ starting stack address of new threads. This number is multiplied by the ++ number of threads created so far and then truncated modulo page size, ++ to get a roughly even distribution of values for different threads. */ ++#define COLORING_INCREMENT 0 ++ ++/* This is a number of bytes that is an alignment that should be avoided ++ when choosing the exact size of a new thread's stack. If the size ++ chosen is aligned to this, an extra page will be added to render the ++ size off-aligned. */ ++#define MULTI_PAGE_ALIASING 0 +diff --git a/nptl/sysdeps/x86_64/Makefile b/nptl/sysdeps/x86_64/Makefile +index d34dea709b363d2a..e2c47764e6e38c36 100644 +--- a/nptl/sysdeps/x86_64/Makefile ++++ b/nptl/sysdeps/x86_64/Makefile +@@ -18,10 +18,3 @@ + ifeq ($(subdir),csu) + gen-as-const-headers += tcb-offsets.sym + endif +- +-ifeq ($(subdir),nptl) +-# P4s have problems with 4M aliasing. We disturb the allocation of stacks +-# just enough so the subsequent allocations do not use stack address +-# (mod 4M) == 0. +-CFLAGS-pthread_create.c += -DMULTI_PAGE_ALIASING=65536 +-endif +diff --git a/sysdeps/i386/i686/stack-aliasing.h b/sysdeps/i386/i686/stack-aliasing.h +new file mode 100644 +index 0000000000000000..1e35ceb2061d60f9 +--- /dev/null ++++ b/sysdeps/i386/i686/stack-aliasing.h +@@ -0,0 +1,28 @@ ++/* Define macros for stack address aliasing issues for NPTL. i686 version. ++ Copyright (C) 2014 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++/* It turns out that stack coloring is in general not good on P4s. Some ++ applications will benefit. We will probably have a configuration option ++ at some point. To enable coloring, set this to 128. */ ++#define COLORING_INCREMENT 0 ++ ++/* What is useful is to avoid the 64k aliasing problem which reliably ++ happens if all stacks use sizes which are a multiple of 64k. Tell ++ the stack allocator to disturb this by allocation one more page if ++ necessary. */ ++#define MULTI_PAGE_ALIASING 65536 +diff --git a/sysdeps/x86_64/stack-aliasing.h b/sysdeps/x86_64/stack-aliasing.h +new file mode 100644 +index 0000000000000000..2efdacb3b4c44c40 +--- /dev/null ++++ b/sysdeps/x86_64/stack-aliasing.h +@@ -0,0 +1 @@ ++#include diff --git a/SOURCES/glibc-rh1505492-undef-26.patch b/SOURCES/glibc-rh1505492-undef-26.patch new file mode 100644 index 0000000..cf5c69c --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-26.patch @@ -0,0 +1,75 @@ +commit 26ffd5e6c7f110cc439bb054fac9567885ffc197 +Author: Roland McGrath +Date: Fri Jun 20 20:04:47 2014 -0700 + + Clean up HAVE_CONFIG_H and STDC_HEADERS. + +Conflicts: + locale/Makefile + +Due to separate IS_IN backport in glibc-rh1256317-2.patch. + +diff --git a/catgets/Makefile b/catgets/Makefile +index 361894a94d6cb740..a1e3e376773de28c 100644 +--- a/catgets/Makefile ++++ b/catgets/Makefile +@@ -39,8 +39,7 @@ include ../Rules + + $(objpfx)gencat: $(gencat-modules:%=$(objpfx)%.o) + +-catgets-CPPFLAGS := -DNLSPATH='"$(msgcatdir)/%L/%N:$(msgcatdir)/%L/LC_MESSAGES/%N:$(msgcatdir)/%l/%N:$(msgcatdir)/%l/LC_MESSAGES/%N:"' \ +- -DHAVE_CONFIG_H ++catgets-CPPFLAGS := -DNLSPATH='"$(msgcatdir)/%L/%N:$(msgcatdir)/%L/LC_MESSAGES/%N:$(msgcatdir)/%l/%N:$(msgcatdir)/%l/LC_MESSAGES/%N:"' + + generated = de.msg test1.cat test1.h test2.cat test2.h sample.SJIS.cat \ + test-gencat.h +diff --git a/include/libc-symbols.h b/include/libc-symbols.h +index 0f47900922d4099b..bf98c33cf3ba9df6 100644 +--- a/include/libc-symbols.h ++++ b/include/libc-symbols.h +@@ -59,6 +59,19 @@ + + #include + ++/* Define this for the benefit of portable GNU code that wants to check it. ++ Code that checks with #if will not #include again, since we've ++ already done it (and this file is implicitly included in every compile, ++ via -include). Code that checks with #ifdef will #include , ++ but that file should always be idempotent (i.e., it's just #define/#undef ++ and nothing else anywhere should be changing the macro state it touches), ++ so it's harmless. */ ++#define HAVE_CONFIG_H 0 ++ ++/* Define this for the benefit of portable GNU code that wants to check it. ++ Of course, it's never false when building libc! */ ++#define STDC_HEADERS 1 ++ + /* The symbols in all the user (non-_) macros are C symbols. */ + + #if !defined HAVE_ASM_WEAK_DIRECTIVE && !defined HAVE_ASM_WEAKEXT_DIRECTIVE +diff --git a/locale/Makefile b/locale/Makefile +index 2755340dd91bfad6..edd982fe87ca66cb 100644 +--- a/locale/Makefile ++++ b/locale/Makefile +@@ -87,8 +87,7 @@ locale-CPPFLAGS = -DLOCALEDIR='"$(localedir)"' \ + CPPFLAGS-locale-programs = -DLOCALE_PATH='$(localepath)' \ + -DCHARMAP_PATH='"$(i18ndir)/charmaps"' \ + -DREPERTOIREMAP_PATH='"$(i18ndir)/repertoiremaps"' \ +- -DLOCSRCDIR='"$(i18ndir)/locales"' \ +- -DHAVE_CONFIG_H ++ -DLOCSRCDIR='"$(i18ndir)/locales"' + + CFLAGS-charmap.c = -Wno-write-strings -Wno-char-subscripts + CFLAGS-locfile.c = -Wno-write-strings -Wno-char-subscripts +diff --git a/stdlib/strtol_l.c b/stdlib/strtol_l.c +index 615190821e24b41a..8174d22f060c2149 100644 +--- a/stdlib/strtol_l.c ++++ b/stdlib/strtol_l.c +@@ -25,7 +25,6 @@ + + #ifdef _LIBC + # define USE_NUMBER_GROUPING +-# define STDC_HEADERS + # define HAVE_LIMITS_H + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-27.patch b/SOURCES/glibc-rh1505492-undef-27.patch new file mode 100644 index 0000000..ad0f18d --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-27.patch @@ -0,0 +1,55 @@ +commit 2aac0a862334f3370a7e0b6bc7a53cf0ab847182 +Author: Siddhesh Poyarekar +Date: Thu Jun 26 14:10:07 2014 +0530 + + Fix Wundef warning for SEPARATE_KEY + + The SEPARATE_KEY macro is never defined in any condition or + architecture. It is effectively dead code, so remove it. + +diff --git a/nscd/connections.c b/nscd/connections.c +index 57cb8c180e8e6402..53813cf58876eae7 100644 +--- a/nscd/connections.c ++++ b/nscd/connections.c +@@ -317,12 +317,6 @@ enum usekey + use_he = 1, + use_he_begin = use_he | use_begin, + use_he_end = use_he | use_end, +-#if SEPARATE_KEY +- use_key = 2, +- use_key_begin = use_key | use_begin, +- use_key_end = use_key | use_end, +- use_key_first = use_key_begin | use_first, +-#endif + use_data = 3, + use_data_begin = use_data | use_begin, + use_data_end = use_data | use_end, +@@ -471,16 +465,7 @@ verify_persistent_db (void *mem, struct database_pers_head *readhead, int dbnr) + if (here->key < here->packet + sizeof (struct datahead) + || here->key > here->packet + dh->allocsize + || here->key + here->len > here->packet + dh->allocsize) +- { +-#if SEPARATE_KEY +- /* If keys can appear outside of data, this should be done +- instead. But gc doesn't mark the data in that case. */ +- if (! check_use (data, head->first_free, usemap, +- use_key | (here->first ? use_first : 0), +- here->key, here->len)) +-#endif +- goto fail; +- } ++ goto fail; + + work = here->next; + +@@ -500,10 +485,6 @@ verify_persistent_db (void *mem, struct database_pers_head *readhead, int dbnr) + he->first == true hashentry. */ + for (ref_t idx = 0; idx < head->first_free; ++idx) + { +-#if SEPARATE_KEY +- if (usemap[idx] == use_key_begin) +- goto fail; +-#endif + if (usemap[idx] == use_data_begin) + goto fail; + } diff --git a/SOURCES/glibc-rh1505492-undef-28.patch b/SOURCES/glibc-rh1505492-undef-28.patch new file mode 100644 index 0000000..1d37897 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-28.patch @@ -0,0 +1,198 @@ +commit 4cf5b6d0d7c8dd40526375f384133262ed7b2ccc +Author: Siddhesh Poyarekar +Date: Thu Jun 26 15:17:40 2014 +0530 + + Fix Wundef warning for ELF_MACHINE_NO_RELA + + This patch defines ELF_MACHINE_NO_RELA on all architectures. Tested + only on x86_64 to verify that the sources before and after are + identical except for two instructions that pass the current line + number in dl-machine.h to assert_fail. + +Conflicts: + sysdeps/microblaze/dl-machine.h + +File removed manally due to missing microblaze port in our tree. + +diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c +index 1ad2e4da7a654633..a42e3c4924e067ba 100644 +--- a/elf/dl-runtime.c ++++ b/elf/dl-runtime.c +@@ -29,7 +29,7 @@ + #include + + +-#if (!defined ELF_MACHINE_NO_RELA && !defined ELF_MACHINE_PLT_REL) \ ++#if (!ELF_MACHINE_NO_RELA && !defined ELF_MACHINE_PLT_REL) \ + || ELF_MACHINE_NO_REL + # define PLTREL ElfW(Rela) + #else +diff --git a/sysdeps/aarch64/dl-machine.h b/sysdeps/aarch64/dl-machine.h +index 40b0587ba42cd59e..4faf818b710d6ed7 100644 +--- a/sysdeps/aarch64/dl-machine.h ++++ b/sysdeps/aarch64/dl-machine.h +@@ -198,6 +198,7 @@ _dl_start_user: \n\ + + /* AArch64 uses RELA not REL */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + static inline ElfW(Addr) + elf_machine_fixup_plt (struct link_map *map, lookup_t t, +diff --git a/sysdeps/hppa/dl-machine.h b/sysdeps/hppa/dl-machine.h +index 1bee330f8b98b03f..3b6d7b8e776f1f57 100644 +--- a/sysdeps/hppa/dl-machine.h ++++ b/sysdeps/hppa/dl-machine.h +@@ -488,6 +488,7 @@ asm ( \ + + /* We only use RELA. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Return the address of the entry point. */ + #define ELF_MACHINE_START_ADDRESS(map, start) \ +diff --git a/sysdeps/ia64/dl-machine.h b/sysdeps/ia64/dl-machine.h +index 1ec69d759179b555..4e8dcb804ae9b7a3 100644 +--- a/sysdeps/ia64/dl-machine.h ++++ b/sysdeps/ia64/dl-machine.h +@@ -320,6 +320,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + /* According to the IA-64 specific documentation, Rela is always used. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Return the address of the entry point. */ + #define ELF_MACHINE_START_ADDRESS(map, start) \ +diff --git a/sysdeps/m68k/dl-machine.h b/sysdeps/m68k/dl-machine.h +index b2914192d839021f..f40c9b580c49e0c7 100644 +--- a/sysdeps/m68k/dl-machine.h ++++ b/sysdeps/m68k/dl-machine.h +@@ -178,6 +178,7 @@ _dl_start_user:\n\ + + /* The m68k never uses Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + static inline Elf32_Addr + elf_machine_fixup_plt (struct link_map *map, lookup_t t, +diff --git a/sysdeps/mips/dl-machine.h b/sysdeps/mips/dl-machine.h +index 9b970a26ed8bb42d..9d7b0f516c64207d 100644 +--- a/sysdeps/mips/dl-machine.h ++++ b/sysdeps/mips/dl-machine.h +@@ -60,6 +60,8 @@ + | (((type) == R_MIPS_COPY) * ELF_RTYPE_CLASS_COPY)) + + #define ELF_MACHINE_PLT_REL 1 ++#define ELF_MACHINE_NO_REL 0 ++#define ELF_MACHINE_NO_RELA 0 + + /* Translate a processor specific dynamic tag to the index + in l_info array. */ +diff --git a/sysdeps/powerpc/powerpc32/dl-machine.h b/sysdeps/powerpc/powerpc32/dl-machine.h +index 3ae27a4924e95063..490de3281ff30ee8 100644 +--- a/sysdeps/powerpc/powerpc32/dl-machine.h ++++ b/sysdeps/powerpc/powerpc32/dl-machine.h +@@ -148,6 +148,7 @@ __elf_preferred_address(struct link_map *loader, size_t maplength, + + /* The PowerPC never uses REL relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Set up the loaded object described by MAP so its unrelocated PLT + entries will jump to the on-demand fixup code in dl-runtime.c. +diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h +index d1d34835a02a1909..7937c0e1e4f846e0 100644 +--- a/sysdeps/powerpc/powerpc64/dl-machine.h ++++ b/sysdeps/powerpc/powerpc64/dl-machine.h +@@ -294,6 +294,7 @@ BODY_PREFIX "_dl_start_user:\n" \ + + /* The PowerPC never uses REL relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Stuff for the PLT. */ + #if _CALL_ELF != 2 +diff --git a/sysdeps/s390/s390-32/dl-machine.h b/sysdeps/s390/s390-32/dl-machine.h +index d2f57e6bbe13ec9d..002ede7e935727cc 100644 +--- a/sysdeps/s390/s390-32/dl-machine.h ++++ b/sysdeps/s390/s390-32/dl-machine.h +@@ -281,6 +281,7 @@ _dl_start_user:\n\ + + /* The S390 never uses Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* We define an initialization functions. This is called very early in + _dl_sysdep_start. */ +diff --git a/sysdeps/s390/s390-64/dl-machine.h b/sysdeps/s390/s390-64/dl-machine.h +index c15f7e4d979b170c..d08ec8f783729db5 100644 +--- a/sysdeps/s390/s390-64/dl-machine.h ++++ b/sysdeps/s390/s390-64/dl-machine.h +@@ -226,6 +226,7 @@ _dl_start_user:\n\ + + /* The 64 bit S/390 never uses Elf64_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* We define an initialization functions. This is called very early in + _dl_sysdep_start. */ +diff --git a/sysdeps/sh/dl-machine.h b/sysdeps/sh/dl-machine.h +index 1bb5d156c2640e75..5cb888c12124a5d2 100644 +--- a/sysdeps/sh/dl-machine.h ++++ b/sysdeps/sh/dl-machine.h +@@ -251,6 +251,7 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc, + + /* SH never uses Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + #ifdef RESOLVE_MAP + +diff --git a/sysdeps/sparc/sparc32/dl-machine.h b/sysdeps/sparc/sparc32/dl-machine.h +index 04ce7854a1b4f64c..b33280ded7eb4a1c 100644 +--- a/sysdeps/sparc/sparc32/dl-machine.h ++++ b/sysdeps/sparc/sparc32/dl-machine.h +@@ -198,6 +198,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + /* The SPARC never uses Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Undo the sub %sp, 6*4, %sp; add %sp, 22*4, %o0 below to get at the + value we want in __libc_stack_end. */ +diff --git a/sysdeps/sparc/sparc64/dl-machine.h b/sysdeps/sparc/sparc64/dl-machine.h +index dec2fa0808a16da5..de3ecdca0321db07 100644 +--- a/sysdeps/sparc/sparc64/dl-machine.h ++++ b/sysdeps/sparc/sparc64/dl-machine.h +@@ -119,6 +119,7 @@ elf_machine_plt_value (struct link_map *map, const Elf64_Rela *reloc, + + /* The SPARC never uses Elf64_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* Set up the loaded object described by L so its unrelocated PLT + entries will jump to the on-demand fixup code in dl-runtime.c. */ +diff --git a/sysdeps/tile/dl-machine.h b/sysdeps/tile/dl-machine.h +index 09a29935827e84c5..6a62d8007d464290 100644 +--- a/sysdeps/tile/dl-machine.h ++++ b/sysdeps/tile/dl-machine.h +@@ -223,6 +223,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) + + /* TILE never uses Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* We define an initialization functions. This is called very early in + _dl_sysdep_start. */ +diff --git a/sysdeps/x86_64/dl-machine.h b/sysdeps/x86_64/dl-machine.h +index da89f2a6174a0d94..04edd797aa567bbe 100644 +--- a/sysdeps/x86_64/dl-machine.h ++++ b/sysdeps/x86_64/dl-machine.h +@@ -209,6 +209,7 @@ _dl_start_user:\n\ + + /* The x86-64 never uses Elf64_Rel/Elf32_Rel relocations. */ + #define ELF_MACHINE_NO_REL 1 ++#define ELF_MACHINE_NO_RELA 0 + + /* We define an initialization function. This is called very early in + _dl_sysdep_start. */ diff --git a/SOURCES/glibc-rh1505492-undef-29.patch b/SOURCES/glibc-rh1505492-undef-29.patch new file mode 100644 index 0000000..ee1659c --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-29.patch @@ -0,0 +1,148 @@ +commit 059bf913b5b3c5553a3756b4d9794e2eb3ce4f25 +Author: Siddhesh Poyarekar +Date: Thu Jun 26 20:40:46 2014 +0530 + + Fix Wundef warning for WIDE_CHAR_VERSION + + fnmatch.c defines WIDE_CHAR_VERSION as 1 for wide chars, but does not + define it for the non-wide char bits. Define it and also undef it in + fnmatch_loop.c like all other macros. + +diff --git a/posix/fnmatch.c b/posix/fnmatch.c +index f0b7b95548c2b9ce..99ec8c4a0eba49b3 100644 +--- a/posix/fnmatch.c ++++ b/posix/fnmatch.c +@@ -226,6 +226,7 @@ __wcschrnul (s, c) + # define MEMPCPY(D, S, N) __mempcpy (D, S, N) + # define MEMCHR(S, C, N) memchr (S, C, N) + # define STRCOLL(S1, S2) strcoll (S1, S2) ++# define WIDE_CHAR_VERSION 0 + # include "fnmatch_loop.c" + + +diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c +index 7ffa3a9944630a0c..e289f451cc23c1ee 100644 +--- a/posix/fnmatch_loop.c ++++ b/posix/fnmatch_loop.c +@@ -503,7 +503,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + { + int32_t table_size; + const int32_t *symb_table; +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + char str[c1]; + unsigned int strcnt; + # else +@@ -515,7 +515,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + int32_t second; + int32_t hash; + +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + /* We have to convert the name to a single-byte + string. This is possible since the names + consist of ASCII characters and the internal +@@ -570,7 +570,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + { + /* Compare the byte sequence but only if + this is not part of a range. */ +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + int32_t *wextra; + + idx += 1 + extra[idx]; +@@ -582,7 +582,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + + if (! is_range) + { +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + for (c1 = 0; + (int32_t) c1 < wextra[idx]; + ++c1) +@@ -603,7 +603,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + + /* Get the collation sequence value. */ + is_seqval = 1; +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + cold = wextra[1 + wextra[idx]]; + # else + /* Adjust for the alignment. */ +@@ -666,7 +666,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + uint32_t lcollseq; + UCHAR cend = *p++; + +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + /* Search in the `names' array for the characters. */ + fcollseq = __collseq_table_lookup (collseq, fn); + if (fcollseq == ~((uint32_t) 0)) +@@ -721,7 +721,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + { + int32_t table_size; + const int32_t *symb_table; +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + char str[c1]; + unsigned int strcnt; + # else +@@ -733,7 +733,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + int32_t second; + int32_t hash; + +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + /* We have to convert the name to a single-byte + string. This is possible since the names + consist of ASCII characters and the internal +@@ -788,7 +788,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + { + /* Compare the byte sequence but only if + this is not part of a range. */ +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + int32_t *wextra; + + idx += 1 + extra[idx]; +@@ -799,7 +799,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + # endif + /* Get the collation sequence value. */ + is_seqval = 1; +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + cend = wextra[1 + wextra[idx]]; + # else + /* Adjust for the alignment. */ +@@ -831,7 +831,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + characters which are not mentioned in the + collation specification. */ + if ( +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + lcollseq == 0xffffffff || + # endif + lcollseq <= fcollseq) +@@ -843,7 +843,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + hcollseq = cend; + else + { +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + hcollseq = + __collseq_table_lookup (collseq, cend); + if (hcollseq == ~((uint32_t) 0)) +@@ -864,7 +864,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + if (lcollseq <= hcollseq && fcollseq <= hcollseq) + goto matched; + } +-# ifdef WIDE_CHAR_VERSION ++# if WIDE_CHAR_VERSION + range_not_matched: + # endif + #else +@@ -1279,3 +1279,4 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + #undef STRCAT + #undef L + #undef BTOWC ++#undef WIDE_CHAR_VERSION diff --git a/SOURCES/glibc-rh1505492-undef-3.patch b/SOURCES/glibc-rh1505492-undef-3.patch new file mode 100644 index 0000000..7e23a23 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-3.patch @@ -0,0 +1,51 @@ +commit f3499f95c8610364264479d42d455a79f15c4c86 +Author: Joseph Myers +Date: Thu Jan 31 23:01:01 2013 +0000 + + Remove CHECK_IOCTL, CHECK_FCNTL and CHECK_N_PAGES. + +diff --git a/sysdeps/generic/bp-checks.h b/sysdeps/generic/bp-checks.h +index 86f998ae69feb81f..d43e299d4dc06b6b 100644 +--- a/sysdeps/generic/bp-checks.h ++++ b/sysdeps/generic/bp-checks.h +@@ -66,30 +66,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + /* Same as CHECK_STRING, but tolerate ARG == NULL. */ + # define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG)) + +-# if defined (_IOC_SIZESHIFT) && defined (_IOC_SIZEBITS) +-/* Extract the size of the ioctl data and check its bounds. */ +-# define CHECK_IOCTL(ARG, CMD) \ +- CHECK_N ((const char *) (ARG), \ +- (((CMD) >> _IOC_SIZESHIFT) & ((1 << _IOC_SIZEBITS) - 1))) +-# else +-/* We don't know the size of the ioctl data, so the best we can do +- is check that the first byte is within bounds. */ +-# define CHECK_IOCTL(ARG, CMD) CHECK_1 ((const char *) ARG) +-# endif +- +-/* Check bounds of `struct flock *' for the locking fcntl commands. */ +-# define CHECK_FCNTL(ARG, CMD) \ +- (((CMD) == F_GETLK || (CMD) == F_SETLK || (CMD) == F_SETLKW) \ +- ? CHECK_1 ((struct flock *) ARG) : (unsigned long) (ARG)) +- +-/* Check bounds of an array of mincore residency-status flags that +- cover a region of NBYTES. Such a vector occupies one byte per page +- of memory. */ +-# define CHECK_N_PAGES(ARG, NBYTES) \ +- ({ int _page_size_ = sysconf (_SC_PAGE_SIZE); \ +- CHECK_N ((const char *) (ARG), \ +- ((NBYTES) + _page_size_ - 1) / _page_size_); }) +- + /* Return a bounded pointer with value PTR that satisfies CHECK_N (PTR, N). */ + # define BOUNDED_N(PTR, N) \ + ({ __typeof (PTR) __bounded _p_; \ +@@ -109,9 +85,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned); + # define CHECK_N(ARG, N) (ARG) + # define CHECK_N_NULL_OK(ARG, N) (ARG) + # define CHECK_STRING(ARG) (ARG) +-# define CHECK_IOCTL(ARG, CMD) (ARG) +-# define CHECK_FCNTL(ARG, CMD) (ARG) +-# define CHECK_N_PAGES(ARG, NBYTES) (ARG) + # define BOUNDED_N(PTR, N) (PTR) + + #endif /* !__BOUNDED_POINTERS__ */ diff --git a/SOURCES/glibc-rh1505492-undef-30.patch b/SOURCES/glibc-rh1505492-undef-30.patch new file mode 100644 index 0000000..f5196b0 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-30.patch @@ -0,0 +1,72 @@ +commit 64df73c2ea0e02f7794ba2f08540a74a9bb198db +Author: Siddhesh Poyarekar +Date: Sat Jun 28 06:05:24 2014 +0530 + + Fix Wundef warning for MEMCPY_OK_FOR_FWD_MEMMOVE + + Define MEMCPY_OK_FOR_FWD_MEMMOVE in memcopy.h and let arch-specific + implementations of that file override the value if necessary. This + override is only useful for tile and moving this macro to memcopy.h + allows us to remove the tile-specific memmove.c. + +Conflicts: + sysdeps/tile/tilegx/memmove.c + +Due to copyright header change; file removed manually. + +diff --git a/sysdeps/generic/memcopy.h b/sysdeps/generic/memcopy.h +index 631214b85ab81d57..08892a4ea33f1ca7 100644 +--- a/sysdeps/generic/memcopy.h ++++ b/sysdeps/generic/memcopy.h +@@ -148,4 +148,6 @@ extern void _wordcopy_bwd_dest_aligned (long int, long int, size_t) __THROW; + /* Threshold value for when to enter the unrolled loops. */ + #define OP_T_THRES 16 + ++#define MEMCPY_OK_FOR_FWD_MEMMOVE 0 ++ + #endif /* memcopy.h */ +diff --git a/sysdeps/tile/memcopy.h b/sysdeps/tile/memcopy.h +index 2bc3fce6864315b8..2876baa0e9f9ab31 100644 +--- a/sysdeps/tile/memcopy.h ++++ b/sysdeps/tile/memcopy.h +@@ -19,6 +19,12 @@ + #include + #include + ++/* The tilegx implementation of memcpy is safe to use for memmove. */ ++#ifdef __tilegx__ ++# undef MEMCPY_OK_FOR_FWD_MEMMOVE ++# define MEMCPY_OK_FOR_FWD_MEMMOVE 1 ++#endif ++ + /* Support more efficient copying on tilegx32, which supports + long long as a native 64-bit type. */ + #if defined (__tilegx__) && __WORDSIZE == 32 +diff --git a/sysdeps/tile/tilegx/memmove.c b/sysdeps/tile/tilegx/memmove.c +deleted file mode 100644 +index 0cb0a81e5fd53639..0000000000000000 +--- a/sysdeps/tile/tilegx/memmove.c ++++ /dev/null +@@ -1,22 +0,0 @@ +-/* Copy memory to memory until the specified number of bytes +- has been copied. Overlap is handled correctly. +- Copyright (C) 2012 Free Software Foundation, Inc. +- This file is part of the GNU C Library. +- +- The GNU C Library is free software; you can redistribute it and/or +- modify it under the terms of the GNU Lesser General Public +- License as published by the Free Software Foundation; either +- version 2.1 of the License, or (at your option) any later version. +- +- The GNU C Library is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public +- License along with the GNU C Library; if not, see +- . */ +- +-/* The tilegx implementation of memcpy is safe to use for memmove. */ +-#define MEMCPY_OK_FOR_FWD_MEMMOVE 1 +-#include diff --git a/SOURCES/glibc-rh1505492-undef-31.patch b/SOURCES/glibc-rh1505492-undef-31.patch new file mode 100644 index 0000000..dd6041a --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-31.patch @@ -0,0 +1,21 @@ +commit 256aa665963ebbc2893ed4519dde33e25d8f51c9 +Author: Siddhesh Poyarekar +Date: Wed Jul 2 15:09:39 2014 +0530 + + Fix typo in macro name + + It is _POSIX_SIGNALS and not _POSUX_SIGNALS + +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index 99043b7558e9aca4..6340b6250d57c295 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -998,7 +998,7 @@ __sysconf (name) + #endif + + case _SC_SIGNALS: +-#ifdef _POSUX_SIGNALS ++#ifdef _POSIX_SIGNALS + return _POSIX_SIGNALS; + #else + return -1; diff --git a/SOURCES/glibc-rh1505492-undef-32.patch b/SOURCES/glibc-rh1505492-undef-32.patch new file mode 100644 index 0000000..ab2bc33 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-32.patch @@ -0,0 +1,224 @@ +commit 99f8dc922033821edcc13f9f8360e9fda40dfcff +Author: Siddhesh Poyarekar +Date: Thu Jul 3 01:28:45 2014 +0530 + + Fix -Wundef warning on PAGE_COPY_THRESHOLD + + The PAGE_COPY_THRESHOLD macro is meant to be overridden by + architecture-specific pagecopy.h, but it is currently done only by + mach; all other architectures use the default. Check to see if the + macro is defined in addition to whether it is set to a non-zero value. + +Conflicts: + sysdeps/generic/pagecopy.h + +Due to copyright header change. + +diff --git a/debug/memcpy_chk.c b/debug/memcpy_chk.c +index bd43583ff4239c8a..4af85a8cb8f5c8de 100644 +--- a/debug/memcpy_chk.c ++++ b/debug/memcpy_chk.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + void * + __memcpy_chk (dstpp, srcpp, len, dstlen) +diff --git a/debug/mempcpy_chk.c b/debug/mempcpy_chk.c +index 8e26953764ff1b35..9a4f0e2fbcdde951 100644 +--- a/debug/mempcpy_chk.c ++++ b/debug/mempcpy_chk.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + void * + __mempcpy_chk (dstpp, srcpp, len, dstlen) +diff --git a/string/memcpy.c b/string/memcpy.c +index 3080fcb4de4cec83..fa1ec24eaca527c4 100644 +--- a/string/memcpy.c ++++ b/string/memcpy.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + #undef memcpy + +diff --git a/string/memmove.c b/string/memmove.c +index c59e7a9c2a640f7d..51bff31c0530ba91 100644 +--- a/string/memmove.c ++++ b/string/memmove.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + /* All this is so that bcopy.c can #include + this file after defining some things. */ +diff --git a/sysdeps/generic/memcopy.h b/sysdeps/generic/memcopy.h +index 08892a4ea33f1ca7..d0ffcd33b007ba38 100644 +--- a/sysdeps/generic/memcopy.h ++++ b/sysdeps/generic/memcopy.h +@@ -40,6 +40,7 @@ + + #include + #include ++#include + + /* The macros defined in this file are: + +@@ -144,6 +145,47 @@ extern void _wordcopy_bwd_dest_aligned (long int, long int, size_t) __THROW; + (nbytes_left) = (nbytes) % OPSIZ; \ + } while (0) + ++/* The macro PAGE_COPY_FWD_MAYBE (dstp, srcp, nbytes_left, nbytes) is invoked ++ like WORD_COPY_FWD et al. The pointers should be at least word aligned. ++ This will check if virtual copying by pages can and should be done and do it ++ if so. The pointers will be aligned to PAGE_SIZE bytes. The macro requires ++ that pagecopy.h defines at least PAGE_COPY_THRESHOLD to 0. If ++ PAGE_COPY_THRESHOLD is non-zero, the header must also define PAGE_COPY_FWD ++ and PAGE_SIZE. ++*/ ++#if PAGE_COPY_THRESHOLD ++ ++# include ++ ++# define PAGE_COPY_FWD_MAYBE(dstp, srcp, nbytes_left, nbytes) \ ++ do \ ++ { \ ++ if ((nbytes) >= PAGE_COPY_THRESHOLD && \ ++ PAGE_OFFSET ((dstp) - (srcp)) == 0) \ ++ { \ ++ /* The amount to copy is past the threshold for copying \ ++ pages virtually with kernel VM operations, and the \ ++ source and destination addresses have the same alignment. */ \ ++ size_t nbytes_before = PAGE_OFFSET (-(dstp)); \ ++ if (nbytes_before != 0) \ ++ { \ ++ /* First copy the words before the first page boundary. */ \ ++ WORD_COPY_FWD (dstp, srcp, nbytes_left, nbytes_before); \ ++ assert (nbytes_left == 0); \ ++ nbytes -= nbytes_before; \ ++ } \ ++ PAGE_COPY_FWD (dstp, srcp, nbytes_left, nbytes); \ ++ } \ ++ } while (0) ++ ++/* The page size is always a power of two, so we can avoid modulo division. */ ++# define PAGE_OFFSET(n) ((n) & (PAGE_SIZE - 1)) ++ ++#else ++ ++# define PAGE_COPY_FWD_MAYBE(dstp, srcp, nbytes_left, nbytes) /* nada */ ++ ++#endif + + /* Threshold value for when to enter the unrolled loops. */ + #define OP_T_THRES 16 +diff --git a/sysdeps/generic/pagecopy.h b/sysdeps/generic/pagecopy.h +index 89f392cb43c4dcbc..3c81de1b236486bf 100644 +--- a/sysdeps/generic/pagecopy.h ++++ b/sysdeps/generic/pagecopy.h +@@ -1,5 +1,5 @@ +-/* Macros for copying by pages; used in memcpy, memmove. Generic macros. +- Copyright (C) 1995, 1997 Free Software Foundation, Inc. ++/* Macros for copying by pages; used in memcpy, memmove. ++ Copyright (C) 1995-2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or +@@ -16,19 +16,15 @@ + License along with the GNU C Library; if not, see + . */ + +-/* This file defines the macro: ++/* The macro PAGE_COPY_FWD_MAYBE defined in memcopy.h is used in memmove if the ++ PAGE_COPY_THRESHOLD macro is set to a non-zero value. The default is 0, ++ that is copying by pages is not implemented. + +- PAGE_COPY_FWD_MAYBE (dstp, srcp, nbytes_left, nbytes) +- +- which is invoked like WORD_COPY_FWD et al. The pointers should be at +- least word aligned. This will check if virtual copying by pages can and +- should be done and do it if so. +- +- System-specific pagecopy.h files should define these macros and then +- #include this file: ++ System-specific pagecopy.h files that want to support page copying should ++ define these macros: + + PAGE_COPY_THRESHOLD +- -- Minimum size for which virtual copying by pages is worthwhile. ++ -- A non-zero minimum size for which virtual copying by pages is worthwhile. + + PAGE_SIZE + -- Size of a page. +@@ -38,37 +34,4 @@ + The pointers will be aligned to PAGE_SIZE bytes. + */ + +- +-#if PAGE_COPY_THRESHOLD +- +-#include +- +-#define PAGE_COPY_FWD_MAYBE(dstp, srcp, nbytes_left, nbytes) \ +- do \ +- { \ +- if ((nbytes) >= PAGE_COPY_THRESHOLD && \ +- PAGE_OFFSET ((dstp) - (srcp)) == 0) \ +- { \ +- /* The amount to copy is past the threshold for copying \ +- pages virtually with kernel VM operations, and the \ +- source and destination addresses have the same alignment. */ \ +- size_t nbytes_before = PAGE_OFFSET (-(dstp)); \ +- if (nbytes_before != 0) \ +- { \ +- /* First copy the words before the first page boundary. */ \ +- WORD_COPY_FWD (dstp, srcp, nbytes_left, nbytes_before); \ +- assert (nbytes_left == 0); \ +- nbytes -= nbytes_before; \ +- } \ +- PAGE_COPY_FWD (dstp, srcp, nbytes_left, nbytes); \ +- } \ +- } while (0) +- +-/* The page size is always a power of two, so we can avoid modulo division. */ +-#define PAGE_OFFSET(n) ((n) & (PAGE_SIZE - 1)) +- +-#else +- +-#define PAGE_COPY_FWD_MAYBE(dstp, srcp, nbytes_left, nbytes) /* nada */ +- +-#endif ++#define PAGE_COPY_THRESHOLD 0 +diff --git a/sysdeps/mach/pagecopy.h b/sysdeps/mach/pagecopy.h +index 5b212144b7b163fe..8cce76a6d76698b9 100644 +--- a/sysdeps/mach/pagecopy.h ++++ b/sysdeps/mach/pagecopy.h +@@ -30,6 +30,3 @@ + (vm_address_t) dstp) == KERN_SUCCESS \ + ? trunc_page (nbytes) \ + : 0))) +- +-/* Get the generic macro. */ +-#include +diff --git a/sysdeps/powerpc/memmove.c b/sysdeps/powerpc/memmove.c +index 1617ecea95620133..50734e45458352c5 100644 +--- a/sysdeps/powerpc/memmove.c ++++ b/sysdeps/powerpc/memmove.c +@@ -20,7 +20,6 @@ + + #include + #include +-#include + + /* All this is so that bcopy.c can #include + this file after defining some things. */ diff --git a/SOURCES/glibc-rh1505492-undef-33.patch b/SOURCES/glibc-rh1505492-undef-33.patch new file mode 100644 index 0000000..fab08df --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-33.patch @@ -0,0 +1,24 @@ +commit 4d614fe5e0625f197805978730214e5236ef360c +Author: Roland McGrath +Date: Thu Jul 3 19:17:00 2014 -0700 + + S390: Quash unused variable warning due to no-op THREAD_SET_POINTER_GUARD. + +Conflicts: + sysdeps/s390/nptl/tls.h + +Change applied to nptl/sysdeps/s390/tls.h instead. + +diff --git a/nptl/sysdeps/s390/tls.h b/nptl/sysdeps/s390/tls.h +index 580196b7bfee3046..b3ba0ecc20ce0fcc 100644 +--- a/nptl/sysdeps/s390/tls.h ++++ b/nptl/sysdeps/s390/tls.h +@@ -170,7 +170,7 @@ typedef struct + use stack_guard as pointer_guard. */ + #define THREAD_GET_POINTER_GUARD() \ + THREAD_GETMEM (THREAD_SELF, header.stack_guard) +-#define THREAD_SET_POINTER_GUARD(value) ++#define THREAD_SET_POINTER_GUARD(value) ((void) (value)) + #define THREAD_COPY_POINTER_GUARD(descr) + + /* Get and set the global scope generation counter in struct pthread. */ diff --git a/SOURCES/glibc-rh1505492-undef-34.patch b/SOURCES/glibc-rh1505492-undef-34.patch new file mode 100644 index 0000000..bbab2b4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-34.patch @@ -0,0 +1,38 @@ +commit 3f17b03b0947fbe2482e2776f654056d1d5ba093 +Author: Adhemerval Zanella +Date: Tue Jun 24 06:41:46 2014 -0500 + + PowerPC: Guard CALL_ELF check for ppc64 only in link.h + + This patch fixes powerpc32 undef compiler warnings for _CALL_ELF, + since it is defined only for powerpc64. + +diff --git a/sysdeps/powerpc/bits/link.h b/sysdeps/powerpc/bits/link.h +index 6c7867e04353a39e..201d3427dac8aece 100644 +--- a/sysdeps/powerpc/bits/link.h ++++ b/sysdeps/powerpc/bits/link.h +@@ -63,7 +63,8 @@ extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, + + __END_DECLS + +-#elif _CALL_ELF != 2 ++#elif __ELF_NATIVE_CLASS == 64 ++# if _CALL_ELF != 2 + + /* Registers for entry into PLT on PPC64. */ + typedef struct La_ppc64_regs +@@ -107,7 +108,7 @@ extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, + + __END_DECLS + +-#else ++# else + + /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ + typedef struct La_ppc64v2_regs +@@ -151,4 +152,5 @@ extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, + + __END_DECLS + ++# endif + #endif diff --git a/SOURCES/glibc-rh1505492-undef-35.patch b/SOURCES/glibc-rh1505492-undef-35.patch new file mode 100644 index 0000000..3042a23 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-35.patch @@ -0,0 +1,1115 @@ +commit 7c33f1e52c7ed39416b24c894e61d39eabf6cd14 +Author: Siddhesh Poyarekar +Date: Tue Jul 8 15:02:58 2014 +0530 + + Fix Wundef warning with SHOJI_IS_RIGHT + + The macro is not defined anywhere, so it looks like we're convinced + that Shoji is wrong :) + +diff --git a/localedata/tests-mbwc/dat_iswalnum.c b/localedata/tests-mbwc/dat_iswalnum.c +index a0b457d52fa682bc..b500a83bd70b92a6 100644 +--- a/localedata/tests-mbwc/dat_iswalnum.c ++++ b/localedata/tests-mbwc/dat_iswalnum.c +@@ -103,54 +103,23 @@ TST_ISW_LOC (ALNUM, alnum) = { + { + { { 0x3000 }, { 0,1,0 } }, /* IDEO. SPACE */ + { { 0x3020 }, { 0,1,0 } }, /* POSTAL MARK FACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3029 }, { 0,1,0 } }, /* Hangzhou NUM9 */ +-#else + { { 0x3029 }, { 0,0,0 } }, /* Hangzhou NUM9 */ +-#endif + { { 0x302F }, { 0,1,0 } }, /* Diacritics(Hangul) */ + { { 0x3037 }, { 0,1,0 } }, /* Separator Symbol */ + { { 0x303F }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3041 }, { 0,1,0 } }, /* HIRAGANA a */ +- { { 0x3094 }, { 0,1,0 } }, /* HIRAGANA u" */ +-#else + { { 0x3041 }, { 0,0,0 } }, /* HIRAGANA a */ + { { 0x3094 }, { 0,0,0 } }, /* HIRAGANA u" */ +-#endif + { { 0x3099 }, { 0,1,0 } }, /* SOUND MARK */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x309E }, { 0,1,0 } }, /* ITERATION MARK */ +- { { 0x30A1 }, { 0,1,0 } }, /* KATAKANA a */ +- { { 0x30FA }, { 0,1,0 } }, /* KATAKANA wo" */ +-#else + { { 0x309E }, { 0,0,0 } }, /* ITERATION MARK */ + { { 0x30A1 }, { 0,0,0 } }, /* KATAKANA a */ + { { 0x30FA }, { 0,0,0 } }, /* KATAKANA wo" */ +-#endif + { { 0x30FB }, { 0,1,0 } }, /* KATAKANA MID.DOT */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x30FE }, { 0,1,0 } }, /* KATAKANA ITERATION */ +-#else + { { 0x30FE }, { 0,0,0 } }, /* KATAKANA ITERATION */ +-#endif + { { 0x3191 }, { 0,1,0 } }, /* KANBUN REV.MARK */ + { { 0x3243 }, { 0,1,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE }, { 0,1,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E00 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4E05 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4E06 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x4E07 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4FFF }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9000 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9006 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9007 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA5 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#else + { { 0x4E00 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E05 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E06 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +@@ -161,7 +130,6 @@ TST_ISW_LOC (ALNUM, alnum) = { + { { 0x9007 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA5 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#endif + { { 0xFE4F }, { 0,1,0 } }, /* CJK UNI.IDEO. */ + { { 0xFF0F }, { 0,1,0 } }, /* FULL SLASH */ + { { 0xFF19 }, { 0,0,0 } }, /* FULL 9 */ +@@ -172,19 +140,11 @@ TST_ISW_LOC (ALNUM, alnum) = { + { { 0xFF5E }, { 0,1,0 } }, /* FULL ~ (tilde) */ + { { 0xFF61 }, { 0,1,0 } }, /* HALF IDEO.STOP. . */ + { { 0xFF65 }, { 0,1,0 } }, /* HALF KATA MID.DOT */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF66 }, { 0,1,0 } }, /* HALF KATA WO */ +- { { 0xFF6F }, { 0,1,0 } }, /* HALF KATA tu */ +- { { 0xFF70 }, { 0,1,0 } }, /* HALF KATA PL - */ +- { { 0xFF71 }, { 0,1,0 } }, /* HALF KATA A */ +- { { 0xFF9E }, { 0,1,0 } }, /* HALF KATA MI */ +-#else + { { 0xFF66 }, { 0,0,0 } }, /* HALF KATA WO */ + { { 0xFF6F }, { 0,0,0 } }, /* HALF KATA tu */ + { { 0xFF70 }, { 0,0,0 } }, /* HALF KATA PL - */ + { { 0xFF71 }, { 0,0,0 } }, /* HALF KATA A */ + { { 0xFF9E }, { 0,0,0 } }, /* HALF KATA MI */ +-#endif + { .is_last = 1 } /* last element */ + } + }, +diff --git a/localedata/tests-mbwc/dat_iswalpha.c b/localedata/tests-mbwc/dat_iswalpha.c +index a1fa1d6bfc437d5a..ba71fc0cd73895fd 100644 +--- a/localedata/tests-mbwc/dat_iswalpha.c ++++ b/localedata/tests-mbwc/dat_iswalpha.c +@@ -72,54 +72,23 @@ TST_ISW_LOC (ALPHA, alpha) = { + { + { { 0x3000 }, { 0,1,0 } }, /* IDEO. SPACE */ + { { 0x3020 }, { 0,1,0 } }, /* POSTAL MARK FACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3029 }, { 0,1,0 } }, /* Hangzhou NUM9 */ +-#else + { { 0x3029 }, { 0,0,0 } }, /* Hangzhou NUM9 */ +-#endif + { { 0x302F }, { 0,1,0 } }, /* Diacritics(Hangul) */ + { { 0x3037 }, { 0,1,0 } }, /* Separator Symbol */ + { { 0x303F }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3041 }, { 0,1,0 } }, /* HIRAGANA a */ +- { { 0x3094 }, { 0,1,0 } }, /* HIRAGANA u" */ +-#else + { { 0x3041 }, { 0,0,0 } }, /* HIRAGANA a */ + { { 0x3094 }, { 0,0,0 } }, /* HIRAGANA u" */ +-#endif + { { 0x3099 }, { 0,1,0 } }, /* SOUND MARK */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x309E }, { 0,1,0 } }, /* ITERATION MARK */ +- { { 0x30A1 }, { 0,1,0 } }, /* KATAKANA a */ +- { { 0x30FA }, { 0,1,0 } }, /* KATAKANA wo" */ +-#else + { { 0x309E }, { 0,0,0 } }, /* ITERATION MARK */ + { { 0x30A1 }, { 0,0,0 } }, /* KATAKANA a */ + { { 0x30FA }, { 0,0,0 } }, /* KATAKANA wo" */ +-#endif + { { 0x30FB }, { 0,1,0 } }, /* KATAKANA MID.DOT */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x30FE }, { 0,1,0 } }, /* KATAKANA ITERATION */ +-#else + { { 0x30FE }, { 0,0,0 } }, /* KATAKANA ITERATION */ +-#endif + { { 0x3191 }, { 0,1,0 } }, /* KANBUN REV.MARK */ + { { 0x3243 }, { 0,1,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE }, { 0,1,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E00 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4E05 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4E06 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x4E07 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x4FFF }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9000 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9006 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +- { { 0x9007 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA5 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#else + { { 0x4E00 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E05 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E06 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +@@ -130,14 +99,9 @@ TST_ISW_LOC (ALPHA, alpha) = { + { { 0x9007 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA5 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#endif + { { 0xFE4F }, { 0,1,0 } }, /* CJK UNI.IDEO. */ + { { 0xFF0F }, { 0,1,0 } }, /* FULL SLASH */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF19 }, { 0,1,0 } }, /* FULL 9 */ +-#else + { { 0xFF19 }, { 0,0,0 } }, /* FULL 9 */ +-#endif + { { 0xFF20 }, { 0,1,0 } }, /* FULL @ */ + { { 0xFF3A }, { 0,0,0 } }, /* FULL Z */ + { { 0xFF40 }, { 0,1,0 } }, /* FULL GRAVE ACC. */ +@@ -145,19 +109,11 @@ TST_ISW_LOC (ALPHA, alpha) = { + { { 0xFF5E }, { 0,1,0 } }, /* FULL ~ (tilde) */ + { { 0xFF61 }, { 0,1,0 } }, /* HALF IDEO.STOP. . */ + { { 0xFF65 }, { 0,1,0 } }, /* HALF KATA MID.DOT */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF66 }, { 0,1,0 } }, /* HALF KATA WO */ +- { { 0xFF6F }, { 0,1,0 } }, /* HALF KATA tu */ +- { { 0xFF70 }, { 0,1,0 } }, /* HALF KATA PL - */ +- { { 0xFF71 }, { 0,1,0 } }, /* HALF KATA A */ +- { { 0xFF9E }, { 0,1,0 } }, /* HALF KATA MI */ +-#else + { { 0xFF66 }, { 0,0,0 } }, /* HALF KATA WO */ + { { 0xFF6F }, { 0,0,0 } }, /* HALF KATA tu */ + { { 0xFF70 }, { 0,0,0 } }, /* HALF KATA PL - */ + { { 0xFF71 }, { 0,0,0 } }, /* HALF KATA A */ + { { 0xFF9E }, { 0,0,0 } }, /* HALF KATA MI */ +-#endif + { .is_last = 1 } /* last element */ + } + }, +diff --git a/localedata/tests-mbwc/dat_iswctype.c b/localedata/tests-mbwc/dat_iswctype.c +index 38d692954fd29d2b..41111e03bd64e8a8 100644 +--- a/localedata/tests-mbwc/dat_iswctype.c ++++ b/localedata/tests-mbwc/dat_iswctype.c +@@ -81,11 +81,7 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0x00B9, "digit" }, { 0,1,0 } }, /* SUP 1 */ + { { 0x00BE, "digit" }, { 0,1,0 } }, /* 3/4 */ + { { 0x009F, "graph" }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0, "graph" }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0, "graph" }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1, "graph" }, { 0,0,0 } }, /* UD ! */ + { { 0x00B1, "graph" }, { 0,0,0 } }, /* +- sign */ + { { 0x00B3, "graph" }, { 0,0,0 } }, /* SUP 3 */ +@@ -101,11 +97,7 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0x00F8, "graph" }, { 0,0,0 } }, /* o stroke */ + { { 0x00FF, "graph" }, { 0,0,0 } }, /* y dia */ + { { 0x009F, "print" }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0, "print" }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0, "print" }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1, "print" }, { 0,0,0 } }, /* UD ! */ + { { 0x00B1, "print" }, { 0,0,0 } }, /* +- sign */ + { { 0x00B4, "print" }, { 0,0,0 } }, /* ACUTE */ +@@ -120,11 +112,7 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0x00F8, "print" }, { 0,0,0 } }, /* o stroke */ + { { 0x00FF, "print" }, { 0,0,0 } }, /* y dia */ + { { 0x009F, "punct" }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0, "punct" }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0, "punct" }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1, "punct" }, { 0,0,0 } }, /* UD ! */ + { { 0x00B0, "punct" }, { 0,0,0 } }, /* Degree */ + { { 0x00B1, "punct" }, { 0,0,0 } }, /* +- sign */ +@@ -389,42 +377,22 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { + { Tiswctype, TST_LOC_eucJP }, + { +-#ifdef SHOJI_IS_RIGHT +- { { 0x3029, "alnum" }, { 0,1,0 } }, /* Hangzhou NUM9 */ +-#else + { { 0x3029, "alnum" }, { 0,0,0 } }, /* Hangzhou NUM9 */ +-#endif + { { 0xFE4F, "alnum" }, { 0,1,0 } }, /* CJK UNI.IDEO. */ + { { 0xFF19, "alnum" }, { 0,0,0 } }, /* FULL 9 */ + { { 0xFF20, "alnum" }, { 0,1,0 } }, /* FULL @ */ + { { 0xFF3A, "alnum" }, { 0,0,0 } }, /* FULL Z */ + { { 0xFF40, "alnum" }, { 0,1,0 } }, /* FULL GRAVE ACC. */ + { { 0xFF5A, "alnum" }, { 0,0,0 } }, /* FULL z */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF71, "alnum" }, { 0,1,0 } }, /* HALF KATA A */ +-#else + { { 0xFF71, "alnum" }, { 0,0,0 } }, /* HALF KATA A */ +-#endif +-#ifdef SHOJI_IS_RIGHT +- { { 0x3029, "alpha" }, { 0,1,0 } }, /* Hangzhou NUM9 */ +-#else + { { 0x3029, "alpha" }, { 0,0,0 } }, /* Hangzhou NUM9 */ +-#endif + { { 0xFE4F, "alpha" }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF19, "alpha" }, { 0,1,0 } }, /* FULL 9 */ +-#else + { { 0xFF19, "alpha" }, { 0,0,0 } }, /* FULL 9 */ +-#endif + { { 0xFF20, "alpha" }, { 0,1,0 } }, /* FULL @ */ + { { 0xFF3A, "alpha" }, { 0,0,0 } }, /* FULL Z */ + { { 0xFF40, "alpha" }, { 0,1,0 } }, /* FULL GRAVE ACC. */ + { { 0xFF5A, "alpha" }, { 0,0,0 } }, /* FULL z */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFF71, "alpha" }, { 0,1,0 } }, /* HALF KATA A */ +-#else + { { 0xFF71, "alpha" }, { 0,0,0 } }, /* HALF KATA A */ +-#endif + { { 0x0080, "cntrl" }, { 0,0,0 } }, /* CNTRL */ + { { 0x3000, "cntrl" }, { 0,1,0 } }, /* IDEO. SPACE */ + { { 0x3029, "digit" }, { 0,1,0 } }, /* Hangzhou NUM9 */ +@@ -433,83 +401,42 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0x33FE, "digit" }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ + { { 0xFF19, "digit" }, { 0,1,0 } }, /* FULL 9 */ + { { 0x3000, "graph" }, { 0,1,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020, "graph" }, { 0,1,0 } }, /* POSTAL MARK FACE */ +- { { 0x3029, "graph" }, { 0,1,0 } }, /* Hangzhou NUM9 */ +- { { 0x302F, "graph" }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037, "graph" }, { 0,1,0 } }, /* Separator Symbol */ +- { { 0x303F, "graph" }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#else + { { 0x3020, "graph" }, { 0,0,0 } }, /* POSTAL MARK FACE */ + { { 0x3029, "graph" }, { 0,0,0 } }, /* Hangzhou NUM9 */ + { { 0x302F, "graph" }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037, "graph" }, { 0,0,0 } }, /* Separator Symbol */ + { { 0x303F, "graph" }, { 0,0,0 } }, /* IDEO. HALF SPACE */ +-#endif + /* 29: */ + { { 0x3041, "graph" }, { 0,0,0 } }, /* HIRAGANA a */ + /* Non jis: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3094, "graph" }, { 0,1,0 } }, /* HIRAGANA u" */ +-#else + { { 0x3094, "graph" }, { 0,0,0 } }, /* HIRAGANA u" */ +-#endif + /* Non jis: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3099, "graph" }, { 0,1,0 } }, /* SOUND MARK */ +-#else + { { 0x3099, "graph" }, { 0,0,0 } }, /* SOUND MARK */ +-#endif + { { 0x309E, "graph" }, { 0,0,0 } }, /* ITERATION MARK */ + /* 33: */ + { { 0x30A1, "graph" }, { 0,0,0 } }, /* KATAKANA a */ + /* Non jis: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x30FA, "graph" }, { 0,1,0 } }, /* KATAKANA wo" */ +-#else + { { 0x30FA, "graph" }, { 0,0,0 } }, /* KATAKANA wo" */ +-#endif + { { 0x30FB, "graph" }, { 0,0,0 } }, /* KATAKANA MID.DOT */ + { { 0x30FE, "graph" }, { 0,0,0 } }, /* KATAKANA ITERATION */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3191, "graph" }, { 0,1,0 } }, /* KANBUN REV.MARK */ +- { { 0x3243, "graph" }, { 0,1,0 } }, /* IDEO. MARK (reach) */ +- { { 0x32CB, "graph" }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ +- { { 0x32FE, "graph" }, { 0,1,0 } }, /* MARU KATAKANA wo */ +- { { 0x33FE, "graph" }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#else + { { 0x3191, "graph" }, { 0,0,0 } }, /* KANBUN REV.MARK */ + { { 0x3243, "graph" }, { 0,0,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB, "graph" }, { 0,0,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE, "graph" }, { 0,0,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE, "graph" }, { 0,0,0 } }, /* CJK IDEO.TEL.31th */ +-#endif + { { 0x4E00, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E05, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E06, "graph" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x4E06, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x4E07, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4FFF, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9000, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9006, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x9007, "graph" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4, "graph" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x9007, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + /* 51 */ + { { 0x9FA5, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + /* Non jis: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFE4F, "graph" }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#else + { { 0xFE4F, "graph" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#endif + { { 0xFF0F, "graph" }, { 0,0,0 } }, /* FULL SLASH */ + { { 0xFF19, "graph" }, { 0,0,0 } }, /* FULL 9 */ + { { 0xFF20, "graph" }, { 0,0,0 } }, /* FULL @ */ +@@ -525,82 +452,43 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0xFF71, "graph" }, { 0,0,0 } }, /* HALF KATA A */ + { { 0xFF9E, "graph" }, { 0,0,0 } }, /* HALF KATA MI */ + { { 0x3000, "print" }, { 0,0,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020, "print" }, { 0,1,0 } }, /* POSTAL MARK FACE */ +- { { 0x3029, "print" }, { 0,1,0 } }, /* Hangzhou NUM9 */ +- { { 0x302F, "print" }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037, "print" }, { 0,1,0 } }, /* Separator Symbol */ +-#else + { { 0x3020, "print" }, { 0,0,0 } }, /* POSTAL MARK FACE */ + { { 0x3029, "print" }, { 0,0,0 } }, /* Hangzhou NUM9 */ + { { 0x302F, "print" }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037, "print" }, { 0,0,0 } }, /* Separator Symbol */ +-#endif + { { 0x4E00, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E05, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E06, "print" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x4E06, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x4E07, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4FFF, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9000, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9006, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x9007, "print" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4, "print" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x9007, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + /* 81: */ + { { 0x9FA5, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + /* Non jis: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFE4F, "print" }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#else + { { 0xFE4F, "print" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#endif + { { 0x3000, "punct" }, { 0,1,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020, "punct" }, { 0,1,0 } }, /* POSTAL MARK FACE */ +- { { 0x302F, "punct" }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037, "punct" }, { 0,1,0 } }, /* FEED Separator */ +- { { 0x303F, "punct" }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#else + { { 0x3020, "punct" }, { 0,0,0 } }, /* POSTAL MARK FACE */ + { { 0x302F, "punct" }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037, "punct" }, { 0,0,0 } }, /* FEED Separator */ + { { 0x303F, "punct" }, { 0,0,0 } }, /* IDEO. HALF SPACE */ +-#endif + { { 0x3041, "punct" }, { 0,1,0 } }, /* HIRAGANA a */ + { { 0x3094, "punct" }, { 0,1,0 } }, /* HIRAGANA u" */ + /* 90: */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3099, "punct" }, { 0,1,0 } }, /* SOUND MARK */ +-#else + { { 0x3099, "punct" }, { 0,0,0 } }, /* SOUND MARK */ +-#endif + { { 0x309E, "punct" }, { 0,1,0 } }, /* ITERATION MARK */ + { { 0x30A1, "punct" }, { 0,1,0 } }, /* KATAKANA a */ + { { 0x30FA, "punct" }, { 0,1,0 } }, /* KATAKANA wo" */ + { { 0x30FB, "punct" }, { 0,0,0 } }, /* KATAKANA MID.DOT */ + /* 95: */ + { { 0x30FE, "punct" }, { 0,1,0 } }, /* KATAKANA ITERATION */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3191, "punct" }, { 0,1,0 } }, /* KANBUN REV.MARK */ +- { { 0x3243, "punct" }, { 0,1,0 } }, /* IDEO. MARK (reach) */ +- { { 0x32CB, "punct" }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ +- { { 0x32FE, "punct" }, { 0,1,0 } }, /* MARU KATAKANA wo */ +- { { 0x33FE, "punct" }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#else + { { 0x3191, "punct" }, { 0,0,0 } }, /* KANBUN REV.MARK */ + { { 0x3243, "punct" }, { 0,0,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB, "punct" }, { 0,0,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE, "punct" }, { 0,0,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE, "punct" }, { 0,0,0 } }, /* CJK IDEO.TEL.31th */ +-#endif + { { 0x9007, "punct" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4, "punct" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA5, "punct" }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +@@ -643,13 +531,8 @@ TST_ISWCTYPE tst_iswctype_loc [] = { + { { 0xFF66, "jkata" }, { 0,0,0 } }, /* HALF KATA WO */ + { { 0xFF6F, "jkata" }, { 0,0,0 } }, /* HALF KATA tu */ + { { 0x4E05, "jkanji" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- /* : */ +- { { 0x4E06, "jkanji" }, { 0,1,1 } }, /* CJK UNI.IDEO.NON-J */ +-#else + /* XXX This character does not exist in EUC-JP. */ + { { 0x4E06, "jkanji" }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x4E07, "jkanji" }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { .is_last = 1 } + } +diff --git a/localedata/tests-mbwc/dat_iswgraph.c b/localedata/tests-mbwc/dat_iswgraph.c +index f94cec709ad84b74..b9ce0f62e853d66c 100644 +--- a/localedata/tests-mbwc/dat_iswgraph.c ++++ b/localedata/tests-mbwc/dat_iswgraph.c +@@ -16,11 +16,7 @@ TST_ISW_LOC (GRAPH, graph) = { + { + { { 0x0080 }, { 0,1,0 } }, /* CTRL */ + { { 0x009F }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0 }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0 }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1 }, { 0,0,0 } }, /* UD ! */ + { { 0x00B0 }, { 0,0,0 } }, /* Degree */ + { { 0x00B1 }, { 0,0,0 } }, /* +- sign */ +@@ -75,73 +71,35 @@ TST_ISW_LOC (GRAPH, graph) = { + { TST_ISW_REC( eucJP, graph ) + { + { { 0x3000 }, { 0,1,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020 }, { 0,1,0 } }, /* POSTAL MARK FACE */ +- { { 0x3029 }, { 0,1,0 } }, /* Hangzhou NUM9 */ +- { { 0x302F }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037 }, { 0,1,0 } }, /* Separator Symbol */ +- { { 0x303F }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#else + { { 0x3020 }, { 0,0,0 } }, /* POSTAL MARK FACE */ + { { 0x3029 }, { 0,0,0 } }, /* Hangzhou NUM9 */ + { { 0x302F }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037 }, { 0,0,0 } }, /* Separator Symbol */ + { { 0x303F }, { 0,0,0 } }, /* IDEO. HALF SPACE */ +-#endif + { { 0x3041 }, { 0,0,0 } }, /* HIRAGANA a */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3094 }, { 0,1,0 } }, /* HIRAGANA u" */ /* non jis */ +- { { 0x3099 }, { 0,1,0 } }, /* SOUND MARK */ +-#else + { { 0x3094 }, { 0,0,0 } }, /* HIRAGANA u" */ /* non jis */ + { { 0x3099 }, { 0,0,0 } }, /* SOUND MARK */ +-#endif + { { 0x309E }, { 0,0,0 } }, /* ITERATION MARK */ /* 10 */ + { { 0x30A1 }, { 0,0,0 } }, /* KATAKANA a */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x30FA }, { 0,1,0 } }, /* KATAKANA wo" */ /* non jis */ +-#else + { { 0x30FA }, { 0,0,0 } }, /* KATAKANA wo" */ /* non jis */ +-#endif + { { 0x30FB }, { 0,0,0 } }, /* KATAKANA MID.DOT */ + { { 0x30FE }, { 0,0,0 } }, /* KATAKANA ITERATION */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3191 }, { 0,1,0 } }, /* KANBUN REV.MARK */ +- { { 0x3243 }, { 0,1,0 } }, /* IDEO. MARK (reach) */ +- { { 0x32CB }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ +- { { 0x32FE }, { 0,1,0 } }, /* MARU KATAKANA wo */ +- { { 0x33FE }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#else + { { 0x3191 }, { 0,0,0 } }, /* KANBUN REV.MARK */ + { { 0x3243 }, { 0,0,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB }, { 0,0,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE }, { 0,0,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE }, { 0,0,0 } }, /* CJK IDEO.TEL.31th */ +-#endif + { { 0x4E00 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ /* 20 */ + { { 0x4E05 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E06 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x4E06 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x4E07 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4FFF }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9000 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9006 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x9007 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x9007 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x9FA5 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFE4F }, { 0,1,0 } }, /* CJK Wave Low Line */ /* 30 */ +-#else + { { 0xFE4F }, { 0,0,0 } }, /* CJK Wave Low Line */ /* 30 */ +-#endif + { { 0xFF0F }, { 0,0,0 } }, /* FULL SLASH */ + { { 0xFF19 }, { 0,0,0 } }, /* FULL 9 */ + { { 0xFF20 }, { 0,0,0 } }, /* FULL @ */ +diff --git a/localedata/tests-mbwc/dat_iswprint.c b/localedata/tests-mbwc/dat_iswprint.c +index 57acc7184ccfb00d..5b672e1ad36605dc 100644 +--- a/localedata/tests-mbwc/dat_iswprint.c ++++ b/localedata/tests-mbwc/dat_iswprint.c +@@ -16,11 +16,7 @@ TST_ISW_LOC (PRINT, print) = { + { + { { 0x0080 }, { 0,1,0 } }, /* CTRL */ + { { 0x009F }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0 }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0 }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1 }, { 0,0,0 } }, /* UD ! */ + { { 0x00B0 }, { 0,0,0 } }, /* Degree */ + { { 0x00B1 }, { 0,0,0 } }, /* +- sign */ +@@ -78,73 +74,35 @@ TST_ISW_LOC (PRINT, print) = { + { TST_ISW_REC (eucJP, print) + { + { { 0x3000 }, { 0,0,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020 }, { 0,1,0 } }, /* POSTAL MARK FACE */ +- { { 0x3029 }, { 0,1,0 } }, /* Hangzhou NUM9 */ +- { { 0x302F }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037 }, { 0,1,0 } }, /* Separator Symbol */ +- { { 0x303F }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#else + { { 0x3020 }, { 0,0,0 } }, /* POSTAL MARK FACE */ + { { 0x3029 }, { 0,0,0 } }, /* Hangzhou NUM9 */ + { { 0x302F }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037 }, { 0,0,0 } }, /* Separator Symbol */ + { { 0x303F }, { 0,0,0 } }, /* IDEO. HALF SPACE */ +-#endif + { { 0x3041 }, { 0,0,0 } }, /* HIRAGANA a */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3094 }, { 0,1,0 } }, /* HIRAGANA u" */ /* non jis */ +- { { 0x3099 }, { 0,1,0 } }, /* SOUND MARK */ +-#else + { { 0x3094 }, { 0,0,0 } }, /* HIRAGANA u" */ /* non jis */ + { { 0x3099 }, { 0,0,0 } }, /* SOUND MARK */ +-#endif + { { 0x309E }, { 0,0,0 } }, /* ITERATION MARK */ /* 10 */ + { { 0x30A1 }, { 0,0,0 } }, /* KATAKANA a */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x30FA }, { 0,1,0 } }, /* KATAKANA wo" */ /* non jis */ +-#else + { { 0x30FA }, { 0,0,0 } }, /* KATAKANA wo" */ /* non jis */ +-#endif + { { 0x30FB }, { 0,0,0 } }, /* KATAKANA MID.DOT */ + { { 0x30FE }, { 0,0,0 } }, /* KATAKANA ITERATION */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3191 }, { 0,1,0 } }, /* KANBUN REV.MARK */ +- { { 0x3243 }, { 0,1,0 } }, /* IDEO. MARK (reach) */ +- { { 0x32CB }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ +- { { 0x32FE }, { 0,1,0 } }, /* MARU KATAKANA wo */ +- { { 0x33FE }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#else + { { 0x3191 }, { 0,0,0 } }, /* KANBUN REV.MARK */ + { { 0x3243 }, { 0,0,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB }, { 0,0,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE }, { 0,0,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE }, { 0,0,0 } }, /* CJK IDEO.TEL.31th */ +-#endif + { { 0x4E00 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ /* 20 */ + { { 0x4E05 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x4E06 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x4E06 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x4E07 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x4FFF }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9000 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ + { { 0x9006 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x9007 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +- { { 0x9FA4 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +-#else + { { 0x9007 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4 }, { 0,0,0 } }, /* CJK UNI.IDEO.NON-J */ +-#endif + { { 0x9FA5 }, { 0,0,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFE4F }, { 0,1,0 } }, /* WAVE LOW LINE */ /* 30 */ +-#else + { { 0xFE4F }, { 0,0,0 } }, /* WAVE LOW LINE */ /* 30 */ +-#endif + { { 0xFF0F }, { 0,0,0 } }, /* FULL SLASH */ + { { 0xFF19 }, { 0,0,0 } }, /* FULL 9 */ + { { 0xFF20 }, { 0,0,0 } }, /* FULL @ */ +diff --git a/localedata/tests-mbwc/dat_iswpunct.c b/localedata/tests-mbwc/dat_iswpunct.c +index b31e1bd50f1117f0..c51e740547a12564 100644 +--- a/localedata/tests-mbwc/dat_iswpunct.c ++++ b/localedata/tests-mbwc/dat_iswpunct.c +@@ -16,11 +16,7 @@ TST_ISW_LOC (PUNCT, punct) = { + { + { { 0x0080 }, { 0,1,0 } }, /* CTRL */ + { { 0x009F }, { 0,1,0 } }, /* CTRL */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x00A0 }, { 0,1,0 } }, /* NB SPACE */ +-#else + { { 0x00A0 }, { 0,0,0 } }, /* NB SPACE */ +-#endif + { { 0x00A1 }, { 0,0,0 } }, /* UD ! */ + { { 0x00B0 }, { 0,0,0 } }, /* Degree */ + { { 0x00B1 }, { 0,0,0 } }, /* +- sign */ +@@ -75,46 +71,24 @@ TST_ISW_LOC (PUNCT, punct) = { + { TST_ISW_REC (eucJP, punct) + { + { { 0x3000 }, { 0,1,0 } }, /* IDEO. SPACE */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3020 }, { 0,1,0 } }, /* POSTAL MARK FACE */ +-#else + { { 0x3020 }, { 0,0,0 } }, /* POSTAL MARK FACE */ +-#endif + { { 0x3029 }, { 0,1,0 } }, /* Hangzhou NUM9 */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x302F }, { 0,1,0 } }, /* Diacritics(Hangul) */ +- { { 0x3037 }, { 0,1,0 } }, /* Separator Symbol */ +- { { 0x303F }, { 0,1,0 } }, /* IDEO. HALF SPACE */ +-#else + { { 0x302F }, { 0,0,0 } }, /* Diacritics(Hangul) */ + { { 0x3037 }, { 0,0,0 } }, /* Separator Symbol */ + { { 0x303F }, { 0,0,0 } }, /* IDEO. HALF SPACE */ +-#endif + { { 0x3041 }, { 0,1,0 } }, /* HIRAGANA a */ + { { 0x3094 }, { 0,1,0 } }, /* HIRAGANA u" */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3099 }, { 0,1,0 } }, /* SOUND MARK */ +-#else + { { 0x3099 }, { 0,0,0 } }, /* SOUND MARK */ +-#endif + { { 0x309E }, { 0,1,0 } }, /* ITERATION MARK */ /* 10 */ + { { 0x30A1 }, { 0,1,0 } }, /* KATAKANA a */ + { { 0x30FA }, { 0,1,0 } }, /* KATAKANA wo" */ + { { 0x30FB }, { 0,0,0 } }, /* KATAKANA MID.DOT */ + { { 0x30FE }, { 0,1,0 } }, /* KATAKANA ITERATION */ +-#ifdef SHOJI_IS_RIGHT +- { { 0x3191 }, { 0,1,0 } }, /* KANBUN REV.MARK */ +- { { 0x3243 }, { 0,1,0 } }, /* IDEO. MARK (reach) */ +- { { 0x32CB }, { 0,1,0 } }, /* IDEO.TEL.SYM.DEC12 */ +- { { 0x32FE }, { 0,1,0 } }, /* MARU KATAKANA wo */ +- { { 0x33FE }, { 0,1,0 } }, /* CJK IDEO.TEL.31th */ +-#else + { { 0x3191 }, { 0,0,0 } }, /* KANBUN REV.MARK */ + { { 0x3243 }, { 0,0,0 } }, /* IDEO. MARK (reach) */ + { { 0x32CB }, { 0,0,0 } }, /* IDEO.TEL.SYM.DEC12 */ + { { 0x32FE }, { 0,0,0 } }, /* MARU KATAKANA wo */ + { { 0x33FE }, { 0,0,0 } }, /* CJK IDEO.TEL.31th */ +-#endif + { { 0x4E00 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ /* 20 */ + { { 0x4E05 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ + { { 0x4E06 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ +@@ -125,11 +99,7 @@ TST_ISW_LOC (PUNCT, punct) = { + { { 0x9007 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA4 }, { 0,1,0 } }, /* CJK UNI.IDEO.NON-J */ + { { 0x9FA5 }, { 0,1,0 } }, /* CJK UNI.IDEO. */ +-#ifdef SHOJI_IS_RIGHT +- { { 0xFE4F }, { 0,1,0 } }, /* CJK UNI.IDEO. */ /* 30 */ +-#else + { { 0xFE4F }, { 0,0,0 } }, /* CJK UNI.IDEO. */ /* 30 */ +-#endif + { { 0xFF0F }, { 0,0,0 } }, /* FULL SLASH */ + { { 0xFF19 }, { 0,1,0 } }, /* FULL 9 */ + { { 0xFF20 }, { 0,0,0 } }, /* FULL @ */ +diff --git a/localedata/tests-mbwc/dat_mbrlen.c b/localedata/tests-mbwc/dat_mbrlen.c +index a21ab762a8bf5a35..61e84231158a245d 100644 +--- a/localedata/tests-mbwc/dat_mbrlen.c ++++ b/localedata/tests-mbwc/dat_mbrlen.c +@@ -123,13 +123,9 @@ TST_MBRLEN tst_mbrlen_loc [] = { + { + { + { 0, 1, -2, }, +-#ifdef SHOJI_IS_RIGHT +- { 0, 1, +2, }, +-#else + /* XXX ISO C explicitly says that the return value does not + XXX reflect the bytes contained in the state. */ + { 0, 1, +1, }, +-#endif + { 0, 1, 2, }, + } + } +diff --git a/localedata/tests-mbwc/dat_mbstowcs.c b/localedata/tests-mbwc/dat_mbstowcs.c +index cabe4cdf2408d475..32aa8065c3e85002 100644 +--- a/localedata/tests-mbwc/dat_mbstowcs.c ++++ b/localedata/tests-mbwc/dat_mbstowcs.c +@@ -107,19 +107,9 @@ TST_MBSTOWCS tst_mbstowcs_loc [] = { + { /*----------------- #02 -----------------*/ + { + { +-#ifdef SHOJI_IS_RIGHT +- /* XXX I really don't understand the first and third line. +- the result of the first line is the same as the first +- in the last test (i.e., returns 6). Also, the third +- test will simply convert everything. */ +- { 1, 1, "\244\242\244\244\244\246ABC", 7 }, +- { 1, 1, "", 1 }, +- { 0, 1, "\244\242\244\244\244\246ABC", 7 }, +-#else + { 1, 1, "\244\242\244\244\244\246ABC", 4 }, + { 1, 1, "", 1 }, + { 0, 1, "\244\242\244\244\244\246ABC", 0 }, +-#endif + } + }, + { +diff --git a/localedata/tests-mbwc/dat_mbtowc.c b/localedata/tests-mbwc/dat_mbtowc.c +index 95edb684d321eec2..ee2bdcb74b4202e0 100644 +--- a/localedata/tests-mbwc/dat_mbtowc.c ++++ b/localedata/tests-mbwc/dat_mbtowc.c +@@ -248,12 +248,8 @@ TST_MBTOWC tst_mbtowc_loc [] = { + }, + { + { +-#ifdef SHOJI_IS_RIGHT +- { EILSEQ, 1, -1, 0x0000 }, +-#else + /* XXX EILSEQ was introduced in ISO C99. */ + { 0, 1, -1, 0x0000 }, +-#endif + { 0, 1, 2, 0x3042 }, + { 0, 1, 2, 0x3042 }, + } +@@ -270,11 +266,7 @@ TST_MBTOWC tst_mbtowc_loc [] = { + { + { + { 0, 1, +1, 0x007F }, +-#ifdef SHOJI_IS_RIGHT +- { EILSEQ, 1, -1, 0x0000 }, +-#else + { 0, 1, -1, 0x0000 }, +-#endif + { 0, 1, +1, 0x0081 }, + } + } +@@ -290,12 +282,8 @@ TST_MBTOWC tst_mbtowc_loc [] = { + { + { + { 0, 1, 0, 0x0000 }, +-#ifdef SHOJI_IS_RIGHT +- { EILSEQ, 1, -1, 0x0000 }, +-#else + /* XXX EILSEQ was introduced in ISO C99. */ + { 0, 1, -1, 0x0000 }, +-#endif + { 0, 1, 2, 0x0000 }, + } + } +diff --git a/localedata/tests-mbwc/dat_strcoll.c b/localedata/tests-mbwc/dat_strcoll.c +index 168425ce0640eb74..b729ae9e894a3757 100644 +--- a/localedata/tests-mbwc/dat_strcoll.c ++++ b/localedata/tests-mbwc/dat_strcoll.c +@@ -72,22 +72,14 @@ TST_STRCOLL tst_strcoll_loc [] = { + { + /* */ + /*input.*/ { "B", "a" }, /* #4 */ +-#ifdef SHOJI_IS_RIGHT +- /*expect*/ { 0,0,-1, }, +-#else + /* XXX We are not testing the C locale. */ + /*expect*/ { 0,0,+1, }, +-#endif + }, + { + /* */ + /*input.*/ { "a", "B" }, /* #5 */ +-#ifdef SHOJI_IS_RIGHT +- /*expect*/ { 0,0,+1, }, +-#else + /* XXX We are not testing the C locale. */ + /*expect*/ { 0,0,-1, }, +-#endif + }, + { /*input.*/ { "b", "A" }, /* #6 */ + /*expect*/ { 0,0,+1, }, +diff --git a/localedata/tests-mbwc/dat_swscanf.c b/localedata/tests-mbwc/dat_swscanf.c +index 08fd2d508c6ebc6d..7f6583222a744533 100644 +--- a/localedata/tests-mbwc/dat_swscanf.c ++++ b/localedata/tests-mbwc/dat_swscanf.c +@@ -61,13 +61,8 @@ TST_SWSCANF tst_swscanf_loc [] = + }, + L"1%d:2%d:3%d:4%d:5%d:6%d:7%d:8%d:9%d", 0 + }, +-#ifdef SHOJI_IS_RIGHT +- { 1,EINVAL,1,WEOF, +- 0,0,0,0,"", { 0x0000 }, +-#else + { 0,1,0, + 0,0,0,0,"", { 0x0000 }, +-#endif + }, + }, + /*---------------------------------------------------*/ +@@ -155,22 +150,6 @@ TST_SWSCANF tst_swscanf_loc [] = + 0, 1, 3.9, 'a', "cd", { 0x0000 } + }, + }, +-#ifdef SHOJI_IS_RIGHT +- /* XXX This test does not make sense. The format string is +- L"\x1\x2\x25\x53" and it is supposed to match the words +- 0x30A2, 0x30A4, 0x0001. */ +- /*------------------------ 04 -----------------------*/ +- /* x 2 */ +- { { { +- 0x30A2, 0x30A4, 0x0001, 0x0000 +- }, +- { 0x0001,0x0002,0x0025,0x0053,0x0000 }, 'S' +- }, +- { EILSEQ,1,EOF, +- 0,0,0,0,"", { 0x0000 } +- }, +- }, +-#endif + /*---------------------------------------------------*/ + { .is_last = 1} /* Last element. */ + } +diff --git a/localedata/tests-mbwc/dat_towctrans.c b/localedata/tests-mbwc/dat_towctrans.c +index e7fe1dc028cf4885..9c01701ec60e5bbd 100644 +--- a/localedata/tests-mbwc/dat_towctrans.c ++++ b/localedata/tests-mbwc/dat_towctrans.c +@@ -38,11 +38,7 @@ TST_TOWCTRANS tst_towctrans_loc [] = { + { + { Ttowctrans, TST_LOC_C }, + { +-#ifdef SHOJI_IS_RIGHT +- { { 0x0010, "xxxxxxx" }, { EINVAL,1,0x0010 } }, +-#else + { { 0x0010, "xxxxxxx" }, { 0, 1,0x0010 } }, +-#endif + { { 0x007F, "tolower" }, { 0, 1,0x007F } }, + { { 0x0061, "toupper" }, { 0, 1,0x0041 } }, + { { 0x0041, "tolower" }, { 0, 1,0x0061 } }, +@@ -52,11 +48,7 @@ TST_TOWCTRANS tst_towctrans_loc [] = { + { + { Ttowctrans, TST_LOC_de }, + { +-#ifdef SHOJI_IS_RIGHT +- { { 0x0010, "tojkata" }, { EINVAL,1,0x0010 } }, +-#else + { { 0x0010, "tojkata" }, { 0, 1,0x0010 } }, +-#endif + { { 0x0080, "tolower" }, { 0, 1,0x0080 } }, + { { 0x00EC, "toupper" }, { 0, 1,0x00CC } }, + { { 0x00CC, "tolower" }, { 0, 1,0x00EC } }, +@@ -66,11 +58,7 @@ TST_TOWCTRANS tst_towctrans_loc [] = { + { + { Ttowctrans, TST_LOC_enUS }, + { +-#ifdef SHOJI_IS_RIGHT +- { { 0x0010, "xxxxxxx" }, { EINVAL,1,0x0010 } }, +-#else + { { 0x0010, "xxxxxxx" }, { 0, 1,0x0010 } }, +-#endif + { { 0x007F, "tolower" }, { 0, 1,0x007F } }, + { { 0x0061, "toupper" }, { 0, 1,0x0041 } }, + { { 0x0041, "tolower" }, { 0, 1,0x0061 } }, +diff --git a/localedata/tests-mbwc/dat_wcscoll.c b/localedata/tests-mbwc/dat_wcscoll.c +index cfc3f85c90eff8b4..5e2fbbe65ca0c789 100644 +--- a/localedata/tests-mbwc/dat_wcscoll.c ++++ b/localedata/tests-mbwc/dat_wcscoll.c +@@ -104,18 +104,6 @@ TST_WCSCOLL tst_wcscoll_loc [] = { + { 0x0041,0x0041,0x0043,0x0000 }, }, /* #4 */ + /*expect*/ { 0,0,0, -1, }, + }, +-#ifdef SHOJI_IS_RIGHT +- /* */ /* assume ascii */ +- { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 }, +- { 0x0041,0x0061,0x0043,0x0000 }, }, /* #5 */ +- /*expect*/ { 0,0,0, -1, }, +- }, +- /* */ /* assume ascii */ +- { /*input.*/ { { 0x0041,0x0061,0x0043,0x0000 }, +- { 0x0041,0x0042,0x0043,0x0000 }, }, /* #6 */ +- /*expect*/ { 0,0,0, +1, }, +- }, +-#else + /* XXX Correct order is lowercase before uppercase. */ + { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 }, + { 0x0041,0x0061,0x0043,0x0000 }, }, /* #5 */ +@@ -125,7 +113,6 @@ TST_WCSCOLL tst_wcscoll_loc [] = { + { 0x0041,0x0042,0x0043,0x0000 }, }, /* #6 */ + /*expect*/ { 0,0,0, -1, }, + }, +-#endif + { /*input.*/ { { 0x0041,0x0042,0x0000 }, + { 0x0041,0x0042,0x0049,0x0000 }, }, /* #7 */ + /*expect*/ { 0,0,0, -1, }, +@@ -134,16 +121,6 @@ TST_WCSCOLL tst_wcscoll_loc [] = { + { 0x0041,0x0042,0x0000 }, }, /* #8 */ + /*expect*/ { 0,0,0, +1, }, + }, +-#ifdef SHOJI_IS_RIGHT +- { /*input.*/ { { 0x0041,0x0092,0x0049,0x0000 }, +- { 0x0041,0x008E,0x0049,0x0000 }, }, /* #9 */ +- /*expect*/ { 0,0,0, +1, }, +- }, +- { /*input.*/ { { 0x0041,0x008E,0x0049,0x0000 }, +- { 0x0041,0x0092,0x0049,0x0000 }, }, /* #10 */ +- /*expect*/ { 0,0,0, -1, }, +- }, +-#else + /* Do not assume position of character out of range. */ + { /*input.*/ { { 0x0041,0x0092,0x0049,0x0000 }, + { 0x0041,0x008E,0x0049,0x0000 }, }, /* #9 */ +@@ -153,7 +130,6 @@ TST_WCSCOLL tst_wcscoll_loc [] = { + { 0x0041,0x0092,0x0049,0x0000 }, }, /* #10 */ + /*expect*/ { 0,0,0, 0, }, + }, +-#endif + { .is_last = 1 } + } + }, +diff --git a/localedata/tests-mbwc/dat_wcswidth.c b/localedata/tests-mbwc/dat_wcswidth.c +index 68054e797fbef427..c030b3ba2e1e699a 100644 +--- a/localedata/tests-mbwc/dat_wcswidth.c ++++ b/localedata/tests-mbwc/dat_wcswidth.c +@@ -56,11 +56,7 @@ TST_WCSWIDTH tst_wcswidth_loc [] = { + /*expect*/ { 0,1,-1 }, + }, + { /*input.*/ { { 0x00C1,0x00A0,0x0000 }, 2 }, /* 16 */ +-#ifdef SHOJI_IS_RIGHT +- /*expect*/ { 0,1,-1 }, +-#else + /*expect*/ { 0,1,2 }, +-#endif + }, + { /*input.*/ { { 0x00C1,0x00A1,0x0000 }, 2 }, /* 17 */ + /*expect*/ { 0,1,2 }, +@@ -89,21 +85,12 @@ TST_WCSWIDTH tst_wcswidth_loc [] = { + { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 2 }, /* 03 */ + /*expect*/ { 0,1,2 }, + }, +-#ifdef SHOJI_IS_RIGHT +- { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 3 }, /* 04 */ +- /*expect*/ { 0,1,3 }, +- }, +- { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 4 }, /* 05 */ +- /*expect*/ { 0,1,3 }, +- }, +-#else + { /*input.*/ { { 0x0041,0x0042,0x00C3,0x0000 }, 3 }, /* 04 */ + /*expect*/ { 0,1,-1 }, + }, + { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 }, 4 }, /* 05 */ + /*expect*/ { 0,1,3 }, + }, +-#endif + { /*input.*/ { { 0x0000 }, 1 }, /* 06 */ + /*expect*/ { 0,1,0 }, + }, +@@ -137,21 +124,12 @@ TST_WCSWIDTH tst_wcswidth_loc [] = { + { /*input.*/ { { 0x0041,0x00A0,0x0000 }, 2 }, /* 16 */ + /*expect*/ { 0,1,-1 }, + }, +-#ifdef SHOJI_IS_RIGHT +- { /*input.*/ { { 0x0041,0x00A1,0x0000 }, 2 }, /* 17 */ +- /*expect*/ { 0,1,2 }, +- }, +- { /*input.*/ { { 0x0041,0x00FF,0x0000 }, 2 }, /* 18 */ +- /*expect*/ { 0,1,2 }, +- }, +-#else + { /*input.*/ { { 0x0041,0x007E,0x0000 }, 2 }, /* 17 */ + /*expect*/ { 0,1,2 }, + }, + { /*input.*/ { { 0x0041,0x0020,0x0000 }, 2 }, /* 18 */ + /*expect*/ { 0,1,2 }, + }, +-#endif + { /*input.*/ { { 0x0041,0x3042,0x0000 }, 2 }, /* 19 */ + /*expect*/ { 0,1,-1 }, + }, +diff --git a/localedata/tests-mbwc/dat_wctob.c b/localedata/tests-mbwc/dat_wctob.c +index 4247e694f01fb9a1..5c1f0fb2761e5fe7 100644 +--- a/localedata/tests-mbwc/dat_wctob.c ++++ b/localedata/tests-mbwc/dat_wctob.c +@@ -25,14 +25,9 @@ TST_WCTOB tst_wctob_loc [] = { + { { WEOF }, { 0, 1, EOF } }, + { { 0x0020 }, { 0, 1, 0x20 } }, + { { 0x0061 }, { 0, 1, 0x61 } }, +-#ifdef SHOJI_IS_RIGHT +- { { 0x0080 }, { 0, 1, 0x80 } }, +- { { 0x00C4 }, { 0, 1, 0xC4 } }, +-#else + /* XXX These are no valid characters. */ + { { 0x0080 }, { 0, 1, EOF } }, + { { 0x00C4 }, { 0, 1, EOF } }, +-#endif + { { 0x30C4 }, { 0, 1, EOF } }, + { .is_last = 1 } /* Last element. */ + } +diff --git a/localedata/tests-mbwc/dat_wcwidth.c b/localedata/tests-mbwc/dat_wcwidth.c +index e50d963830239e95..ec667813e274886c 100644 +--- a/localedata/tests-mbwc/dat_wcwidth.c ++++ b/localedata/tests-mbwc/dat_wcwidth.c +@@ -28,16 +28,9 @@ TST_WCWIDTH tst_wcwidth_loc [] = { + { /*inp*/ { 0x00C1 }, /* #06 */ + /*exp*/ { 0, 1,1, }, + }, +-#ifdef SHOJI_IS_RIGHT +- /* */ /* CHECK : wint_t */ +- { /*inp*/ { 0x3041 }, /* #07 */ +- /*exp*/ { 0, 1,0, }, +- }, +-#else + { /*inp*/ { 0x3041 }, /* #07 */ + /*exp*/ { 0, 1,EOF, }, + }, +-#endif + { .is_last = 1 } + } + }, +@@ -83,17 +76,10 @@ TST_WCWIDTH tst_wcwidth_loc [] = { + { /*inp*/ { 0x0080 }, /* #04 */ + /*exp*/ { 0, 1,-1, }, + }, +-#ifdef SHOJI_IS_RIGHT +- /* */ +- { /*inp*/ { 0x00A1 }, /* #05 */ +- /*exp*/ { 0, 1,0, }, +- }, +-#else + /* XXX U00A1 is a valid character in EUC-JP. */ + { /*inp*/ { 0x00A1 }, /* #05 */ + /*exp*/ { 0, 1,2, }, + }, +-#endif + /* jisx0212 */ + { /*inp*/ { 0x00C1 }, /* #06 */ + /*exp*/ { 0, 1,2, }, +diff --git a/localedata/tests-mbwc/tst_towctrans.c b/localedata/tests-mbwc/tst_towctrans.c +index 1d874dc0f7176205..47bab2cf6553d4f0 100644 +--- a/localedata/tests-mbwc/tst_towctrans.c ++++ b/localedata/tests-mbwc/tst_towctrans.c +@@ -14,9 +14,6 @@ tst_towctrans (FILE *fp, int debug_flg) + TST_DECL_VARS (wint_t); + wint_t wc; + const char *ts; +-#if SHOJI_IS_RIGHT +- int dummy=0; +-#endif + wctrans_t wto; + + TST_DO_TEST (towctrans) +@@ -28,25 +25,7 @@ tst_towctrans (FILE *fp, int debug_flg) + wc = TST_INPUT (towctrans).wc; + ts = TST_INPUT (towctrans).ts; + +-#if SHOJI_IS_RIGHT +- if ((wto = wctrans (ts)) == (wctrans_t) 0) +- { +-#if 0 +- result (fp, C_IGNORED, S_TOWCTRANS, locale, rec+1, seq_num+1, 3, +- "Skip this data because the wctrans object is not invalid."); +- warn_count++; +- continue; +-#else +- wto = &dummy; /* not good ... */ +-#endif +- if (debug_flg) +- { +- fprintf (stdout, "towctrans() ------ wctrans() returnd 0.\n"); +- } +- } +-#else + wto = wctrans (ts); +-#endif + + TST_CLEAR_ERRNO; + ret = towctrans (wc, wto); diff --git a/SOURCES/glibc-rh1505492-undef-36.patch b/SOURCES/glibc-rh1505492-undef-36.patch new file mode 100644 index 0000000..24a0aff --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-36.patch @@ -0,0 +1,18 @@ +commit 80b5c505889ac4747aab54614d2bce18efa511ea +Author: Siddhesh Poyarekar +Date: Tue Jul 8 16:19:55 2014 +0530 + + Fix Wundef warning for ELF_MACHINE_NO_REL on i386 + +diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h +index 67d23228782d39c9..c52f17ae713fdebb 100644 +--- a/sysdeps/i386/dl-machine.h ++++ b/sysdeps/i386/dl-machine.h +@@ -295,6 +295,7 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc, + /* The i386 never uses Elf32_Rela relocations for the dynamic linker. + Prelinked libraries may use Elf32_Rela though. */ + #define ELF_MACHINE_NO_RELA defined RTLD_BOOTSTRAP ++#define ELF_MACHINE_NO_REL 0 + + #ifdef RESOLVE_MAP + diff --git a/SOURCES/glibc-rh1505492-undef-37.patch b/SOURCES/glibc-rh1505492-undef-37.patch new file mode 100644 index 0000000..7d31bf0 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-37.patch @@ -0,0 +1,22 @@ +commit 6680738a18fc219de2e4f7be1d53e4fb251f1166 +Author: Siddhesh Poyarekar +Date: Wed Jul 9 10:36:23 2014 +0530 + + Fix Wundef warning for __cplusplus + + All current uses of the __cplusplus macro only check if it is defined + or not. Fix this #if to use $ifdef like the rest of the code. + +diff --git a/sysdeps/generic/unwind-pe.h b/sysdeps/generic/unwind-pe.h +index 3985fec998a2083d..b190cb34a102f5f9 100644 +--- a/sysdeps/generic/unwind-pe.h ++++ b/sysdeps/generic/unwind-pe.h +@@ -22,7 +22,7 @@ + than duplicating code, however. */ + + /* If using C++, references to abort have to be qualified with std::. */ +-#if __cplusplus ++#ifdef __cplusplus + #define __gxx_abort std::abort + #else + #define __gxx_abort abort diff --git a/SOURCES/glibc-rh1505492-undef-38.patch b/SOURCES/glibc-rh1505492-undef-38.patch new file mode 100644 index 0000000..552cffb --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-38.patch @@ -0,0 +1,86 @@ +commit 82374e65d745c3c94258ad81c38f8af34b9f9113 +Author: Will Newton +Date: Mon Jul 7 15:14:26 2014 +0100 + + Fix -Wundef warnings for SHARED + + The definition of SHARED is tested with #ifdef pretty much everywhere + apart from these few places. The tlsdesc.c code seems to be copy and + pasted to a few architectures and there is one instance in the hppa + startup code. + + ChangeLog: + + 2014-07-09 Will Newton + + * sysdeps/aarch64/tlsdesc.c (_dl_unmap): Test SHARED with #ifdef. + * sysdeps/arm/tlsdesc.c (_dl_unmap): Likewise. + * sysdeps/i386/tlsdesc.c (_dl_unmap): Likewise. + * sysdeps/x86_64/tlsdesc.c (_dl_unmap): Likewise. + * sysdeps/hppa/start.S (_start): Likewise. + +diff --git a/sysdeps/aarch64/tlsdesc.c b/sysdeps/aarch64/tlsdesc.c +index 606ce797c66ce84d..1543064999964dd9 100644 +--- a/sysdeps/aarch64/tlsdesc.c ++++ b/sysdeps/aarch64/tlsdesc.c +@@ -147,7 +147,7 @@ _dl_unmap (struct link_map *map) + __munmap ((void *) (map)->l_map_start, + (map)->l_map_end - (map)->l_map_start); + +-#if SHARED ++#ifdef SHARED + if (map->l_mach.tlsdesc_table) + htab_delete (map->l_mach.tlsdesc_table); + #endif +diff --git a/sysdeps/arm/tlsdesc.c b/sysdeps/arm/tlsdesc.c +index c5e69a8755147361..dd8d340d740876d9 100644 +--- a/sysdeps/arm/tlsdesc.c ++++ b/sysdeps/arm/tlsdesc.c +@@ -149,7 +149,7 @@ _dl_unmap (struct link_map *map) + __munmap ((void *) (map)->l_map_start, + (map)->l_map_end - (map)->l_map_start); + +-#if SHARED ++#ifdef SHARED + /* _dl_unmap is only called for dlopen()ed libraries, for which + calling free() is safe, or before we've completed the initial + relocation, in which case calling free() is probably pointless, +diff --git a/sysdeps/hppa/start.S b/sysdeps/hppa/start.S +index 97196bd52df23391..08b13ee4f4a0937c 100644 +--- a/sysdeps/hppa/start.S ++++ b/sysdeps/hppa/start.S +@@ -93,7 +93,7 @@ _start: + stw %r23, -56(%sp) + /* Need to setup 1, 4, 5, and 7th arguments */ + +-#if SHARED ++#ifdef SHARED + /* load main (1st argument) */ + addil LT'.Lpmain, %r19 + ldw RT'.Lpmain(%r1), %r26 +diff --git a/sysdeps/i386/tlsdesc.c b/sysdeps/i386/tlsdesc.c +index 2d55c63cdb976d79..cfde1a684850e04c 100644 +--- a/sysdeps/i386/tlsdesc.c ++++ b/sysdeps/i386/tlsdesc.c +@@ -261,7 +261,7 @@ _dl_unmap (struct link_map *map) + __munmap ((void *) (map)->l_map_start, + (map)->l_map_end - (map)->l_map_start); + +-#if SHARED ++#ifdef SHARED + if (map->l_mach.tlsdesc_table) + htab_delete (map->l_mach.tlsdesc_table); + #endif +diff --git a/sysdeps/x86_64/tlsdesc.c b/sysdeps/x86_64/tlsdesc.c +index 19d55a7c91992439..8def142e87c298be 100644 +--- a/sysdeps/x86_64/tlsdesc.c ++++ b/sysdeps/x86_64/tlsdesc.c +@@ -139,7 +139,7 @@ _dl_unmap (struct link_map *map) + __munmap ((void *) (map)->l_map_start, + (map)->l_map_end - (map)->l_map_start); + +-#if SHARED ++#ifdef SHARED + /* _dl_unmap is only called for dlopen()ed libraries, for which + calling free() is safe, or before we've completed the initial + relocation, in which case calling free() is probably pointless, diff --git a/SOURCES/glibc-rh1505492-undef-39.patch b/SOURCES/glibc-rh1505492-undef-39.patch new file mode 100644 index 0000000..2eef5a3 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-39.patch @@ -0,0 +1,27 @@ +commit c3c7c3604fdf934d7a8ec70d79915cd8c8984ad1 +Author: Siddhesh Poyarekar +Date: Thu Jul 10 14:18:13 2014 +0530 + + Fix -Wundef warning for HAVE_OBSTACK + + Remove the HAVE_OBSTACK macro check and include obstack check in + include path order since we don't have a copy of obstack.h in the + current directory. + +diff --git a/locale/programs/simple-hash.c b/locale/programs/simple-hash.c +index bb3076612da90ca1..30d3247d5ce98374 100644 +--- a/locale/programs/simple-hash.c ++++ b/locale/programs/simple-hash.c +@@ -26,11 +26,7 @@ + #include + #include + +-#if HAVE_OBSTACK +-# include +-#else +-# include "obstack.h" +-#endif ++#include + + #ifdef HAVE_VALUES_H + # include diff --git a/SOURCES/glibc-rh1505492-undef-4.patch b/SOURCES/glibc-rh1505492-undef-4.patch new file mode 100644 index 0000000..3dd2e6a --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-4.patch @@ -0,0 +1,1208 @@ +commit 8e254d8e0d0820716e0ccf5f2b89c4fd1325f051 +Author: Joseph Myers +Date: Fri Jun 7 14:56:03 2013 +0000 + + Remove trailing whitespace from localedata. + +diff --git a/localedata/charmaps/BIG5 b/localedata/charmaps/BIG5 +index 1a0a66fc4be52d32..50f5f16cd22cb287 100644 +--- a/localedata/charmaps/BIG5 ++++ b/localedata/charmaps/BIG5 +@@ -16,7 +16,7 @@ + % Aprhic Tech. CO., LTD. Big5 <==> Unicode mapping table. + % + % Irrevsible mapping Big5 characters (using %IRREVERSIBLE% notation): +-% /xa2/xcc, /xa2/xce, /xf9/xe9, /xf9/xea, /xf9/xeb, ++% /xa2/xcc, /xa2/xce, /xf9/xe9, /xf9/xea, /xf9/xeb, + % /xf9/xf9, /xf9/xfa, /xf9/xfb, /xf9/xfc, /xf9/xfd + % + % alias BIG5-CP950 +diff --git a/localedata/charmaps/IBM866NAV b/localedata/charmaps/IBM866NAV +index add2bf2ee76d0dfe..38cf436534537a19 100644 +--- a/localedata/charmaps/IBM866NAV ++++ b/localedata/charmaps/IBM866NAV +@@ -3,10 +3,10 @@ + / + % Obtained by editing IBM866 charmap (Alexander Vidybida) + % +-% Corresponds to Ukrainian texts produced with "keyrus" screen and ++% Corresponds to Ukrainian texts produced with "keyrus" screen and + % keyboard driver under DOS + % +-% Corresponds to file `cp866nav.def' from the ++% Corresponds to file `cp866nav.def' from the + % standard LaTeX `Cyrillic Bundle' except of codes /xfd, /xfe + + % alias CP866NAV +diff --git a/localedata/charmaps/ISIRI-3342 b/localedata/charmaps/ISIRI-3342 +index 3dd589f63a2727f3..6165cc8c527d285f 100644 +--- a/localedata/charmaps/ISIRI-3342 ++++ b/localedata/charmaps/ISIRI-3342 +@@ -5,7 +5,7 @@ + % source: Iranian standard ISIRI 3342 (1993) + % author: Pablo Saratxaga, and Roozbeh Pournader + % email: pablo@mandrakesoft.com, roozbeh@sina.sharif.ac.ir +- ++ + % I think the mnemonic for upper space (0xA0) should be different from + % lower space (0x20). Because the semantics are different, although they + % are mapped to a single Unicode character. This is specially important +@@ -23,7 +23,7 @@ + % f>, , , <)/>+>, <<(+>, , <(!+>, <<<+>, />+>, <*+>, + % , and . Also, all character sequences + % .., ,
have counter-parts .., , +- ++ + CHARMAP + /x00 NULL (NUL) + /x01 START OF HEADING (SOH) +diff --git a/localedata/charmaps/ISO_8859-1,GL b/localedata/charmaps/ISO_8859-1,GL +index 62d13d9c8782d8e0..99737202fd53b498 100644 +--- a/localedata/charmaps/ISO_8859-1,GL ++++ b/localedata/charmaps/ISO_8859-1,GL +@@ -4,7 +4,7 @@ + # to "A", the "LATIN SMALL LETTER A" has been shorted to "a", and the + # names are, wherever possible, shortened to approx 20 characters. I + # would like comments on this charmap... +-# ++# + # -Greger Leijonhufvud- + # INTERACTIVE Systems, UK + # greger@{iuk,ism}.isc.com +diff --git a/localedata/locales/ber_DZ b/localedata/locales/ber_DZ +index 4256a513cf1ab7f7..be334c5bf66492fa 100644 +--- a/localedata/locales/ber_DZ ++++ b/localedata/locales/ber_DZ +@@ -2,7 +2,7 @@ comment_char % + escape_char / + % + % Amazigh Language Locale for Algeria (latin) +-% Source: ++% Source: + % Contact: Pablo Saratxaga + % Email: + % Language: ber +@@ -47,8 +47,8 @@ END LC_IDENTIFICATION + % TODO: fix LC_TIME, LC_MONETARY, LC_MESSAGES, LC_NAME, LC_ADDRESS + + LC_COLLATE +-% The latin amazigh alphabet is: +-% , , , , , , , , , , , , , ++% The latin amazigh alphabet is: ++% , , , , , , , , , , , , , + % , , , , , , , , , , , , , + % , , , , , , , , , , , , + % +@@ -291,7 +291,7 @@ country_num 12 + %country_isbn "" + %country_car "" + lang_name "" +-%lang_ab ++%lang_ab + lang_term "" + lang_lib "" + +diff --git a/localedata/locales/bn_BD b/localedata/locales/bn_BD +index 8b46636b25714c68..9dbc4057820a014a 100644 +--- a/localedata/locales/bn_BD ++++ b/localedata/locales/bn_BD +@@ -53,7 +53,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/crh_UA b/localedata/locales/crh_UA +index a6fceeae0ad5d086..d543b9b14e0c0429 100644 +--- a/localedata/locales/crh_UA ++++ b/localedata/locales/crh_UA +@@ -11,7 +11,7 @@ escape_char / + % Date: 2009-08-16 + % Application: general + % Users: general +-% Charset: UTF-8 ++% Charset: UTF-8 + % Distribution and use is free, also + % for commercial purposes. + +@@ -48,7 +48,7 @@ END LC_IDENTIFICATION + + LC_COLLATE + % The new Crimean Tatar alphabet (Latin) is: +-% , , , , , , , , , , ++% , , , , , , , , , , + % (dotless i), (i with dot), , , , , , , , + % ,

, , , , , , , , , , , , + +diff --git a/localedata/locales/uk_UA b/localedata/locales/uk_UA +index 3896d27a22d67404..b1df63085c485829 100644 +--- a/localedata/locales/uk_UA ++++ b/localedata/locales/uk_UA +@@ -5,7 +5,7 @@ escape_char / + % Copyright (C) 2006 Max Kutny + % + % Ukrainian Language Locale for Ukraine +-% Source: ++% Source: + % Contact: Volodymyr M. Lisivka + % Email: v_lisivka@users.sourceforge.net + % Contact: Max Kutny +@@ -118,7 +118,7 @@ translit_start + % transliteration into English. + % + % Ukrainian English Note Example +-% letter letter ++% letter letter + % + + % - - Alushta +@@ -831,7 +831,7 @@ LC_NUMERIC + % 0,001 + % 0,0001 + % 0,00001 +-% ++% + % 1 + % -1 + % +@@ -954,7 +954,7 @@ abmon / + ""; %ver / + ""; %zhov / + ""; %lys / +- "" %hru ++ "" %hru + + % A list of month names in proper form for calendar, see alt_digits. (%B) + mon / +@@ -969,7 +969,7 @@ mon / + ""; %veresen` / + ""; %zhovten` / + ""; %lystopad / +- "" %hruden` ++ "" %hruden` + + % Initially alt_digits was supposed to hold alternative symbols for _digits_, + % corresponding to %O modified conversion specification. +@@ -1057,7 +1057,7 @@ timezone " + % pt +2++9+16 23 30 6 13 20 27 + % *sb* *3*10*17*24*31* *7*14*21+28+ + % +nd+ +4+11+18+25+ +1+ +8+15+22+29+ +-% ++% + % + - means red color + % * - means bold font + % +@@ -1083,12 +1083,12 @@ LC_TELEPHONE + + % Format of a telephone number for international use. + % +-% a area code without nationwide prefix (prefix is often <0>). +-% A area code including nationwide prefix (prefix is often <0>). +-% l local number (within area code). +-% e extension (to local number) +-% c country code +-% C alternate carrier service code used for dialling abroad ++% a area code without nationwide prefix (prefix is often <0>). ++% A area code including nationwide prefix (prefix is often <0>). ++% l local number (within area code). ++% e extension (to local number) ++% c country code ++% C alternate carrier service code used for dialling abroad + % t Insert a if the previous descriptor's value was not an empty + % string; otherwise ignore. + % +@@ -1152,10 +1152,10 @@ LC_NAME + % FIXME: + % to make proper salutation, we must change person name and middle name + % to proper forms (klychna forma), but this is imposible without +-% ispell-like rules. ++% ispell-like rules. + % Now I use regular form, like in Russian (sic!) langauge. + +-% Field descriptors for the keyword: ++% Field descriptors for the keyword: + % f - family name + % F - family name in uppercase + % g - first given name +@@ -1244,27 +1244,27 @@ LC_ADDRESS + % Means: + % vul. Hranychna 7 - street and building + % s. Bohdashiv - village name (s. - selo) +-% Zdolbunivs`koho rajonu - in region of town Zdolbuniv (rajon) ++% Zdolbunivs`koho rajonu - in region of town Zdolbuniv (rajon) + + +-% n Person's name, possibly constructed with the LC_NAME keyword. +-% a Care of person, or organization. +-% f Firm name. +-% d Department name. +-% b Building name. +-% s Street or block (eg. Japanese) name. +-% h House number or designation. ++% n Person's name, possibly constructed with the LC_NAME keyword. ++% a Care of person, or organization. ++% f Firm name. ++% d Department name. ++% b Building name. ++% s Street or block (eg. Japanese) name. ++% h House number or designation. + % N Insert an if the previous descriptor s value was not an empty + % string; otherwise ignore. + % t Insert a if the previous descriptor s value was not an empty string; + % otherwise ignore. +-% r Room number, door designation. +-% e Floor number. +-% C Country designation, from the keyword. +-% l Local township within town or city +-% z Zip number, postal code. +-% T Town, city. +-% S State, province, or prefecture. ++% r Room number, door designation. ++% e Floor number. ++% C Country designation, from the keyword. ++% l Local township within town or city ++% z Zip number, postal code. ++% T Town, city. ++% S State, province, or prefecture. + % c Country, as taken from data record. + % + % Each field descriptor may have an after the <%> to specify that the +@@ -1276,10 +1276,10 @@ LC_ADDRESS + %postal_fmt "" + postal_fmt "" + +-% Giving: ++% Giving: + % +-% Care of person Person's name Firm Department +-% Street Number, Building Floor Room ++% Care of person Person's name Firm Department ++% Street Number, Building Floor Room + % Town City State + % Zip + % Country +diff --git a/localedata/locales/ur_IN b/localedata/locales/ur_IN +index 3ac8c737ea40a592..d14946f29c130669 100644 +--- a/localedata/locales/ur_IN ++++ b/localedata/locales/ur_IN +@@ -2,7 +2,7 @@ comment_char % + escape_char / + % Urdu language locale for India. + % Contributed by Pravin Satpute and +-% Mrs. Nasreen Khan ++% Mrs. Nasreen Khan + + LC_IDENTIFICATION + +diff --git a/localedata/locales/uz_UZ b/localedata/locales/uz_UZ +index d003bc6811d2aac8..c529e61ee8a02bc5 100644 +--- a/localedata/locales/uz_UZ ++++ b/localedata/locales/uz_UZ +@@ -93,10 +93,10 @@ include "translit_combining";"" + "" % c% -> ch + "" % s% -> sh + "" % shcha -> sh +- "" % hard sign= -> ' ++ "" % hard sign= -> ' + "" % yeru -> 1 + "" % soft sign omitted. not in latin-uzbek alphabet. stupid, but it is a fact. +- "" % je= -> e ++ "" % je= -> e + "" % ju -> yu + "" % ja -> ya + "" % v% -> o' +diff --git a/localedata/locales/uz_UZ@cyrillic b/localedata/locales/uz_UZ@cyrillic +index 6c3f7522fbc2cda6..4a34eacfc853eeb5 100644 +--- a/localedata/locales/uz_UZ@cyrillic ++++ b/localedata/locales/uz_UZ@cyrillic +@@ -88,10 +88,10 @@ include "translit_combining";"" + "" % c% -> ch + "" % s% -> sh + "" % shcha -> sh +- "" % hard sign= -> ' ++ "" % hard sign= -> ' + "" % yeru -> 1 + "" % soft sign omitted. not in latin-uzbek alphabet. stupid, but it is a fact. +- "" % je= -> e ++ "" % je= -> e + "" % ju -> yu + "" % ja -> ya + "" % v% -> o' +diff --git a/localedata/locales/yo_NG b/localedata/locales/yo_NG +index 1a5dc78f1f14a1aa..f0206ae1a566ebf3 100644 +--- a/localedata/locales/yo_NG ++++ b/localedata/locales/yo_NG +@@ -2,7 +2,7 @@ escape_char / + comment_char % + % + % Yoruba language locale for Nigeria +-% Source: ++% Source: + % Contact: Pablo Saratxaga + % Email: pablo@mandriva.com + % Language: yo +@@ -52,7 +52,7 @@ LC_COLLATE + % * m and n may be nazalization marks when they follow a vowel; + % or they can be vocalic, in such case they get the three + % tones, and middle tone is marked with a macron +-% * a same vowel with following up/down or down/up tones ++% * a same vowel with following up/down or down/up tones + % may be written with respectively a circumflex or a caron, + % eg: áà = â, àá = ǎ + % * old orthography also has tilde on vowels, but is deprecated +@@ -165,7 +165,7 @@ collating-element from "" + + collating-symbol + collating-symbol +- ++ + reorder-after + + +@@ -173,7 +173,7 @@ reorder-after + + reorder-after + +- ++ + reorder-after + + +@@ -370,7 +370,7 @@ END LC_NUMERIC + LC_TELEPHONE + copy "en_NG" + END LC_TELEPHONE +- ++ + LC_TIME + % SUN, MON, TUE, WED, THU, FRI, SAT + abday "";"";/ +diff --git a/localedata/tests-mbwc/dat_mblen.c b/localedata/tests-mbwc/dat_mblen.c +index 507ab8f35c61ba1f..a5eff44052897ac8 100644 +--- a/localedata/tests-mbwc/dat_mblen.c ++++ b/localedata/tests-mbwc/dat_mblen.c +@@ -80,11 +80,11 @@ TST_MBLEN tst_mblen_loc [] = { + { { 1, "a", USE_MBCURMAX }, { 0, 1, 1 } }, + /* 03: a character + an invalid byte. */ + { { 1, "Z\204", USE_MBCURMAX }, { 0, 1, +1 } }, +- /* 04: control/invalid characters. */ ++ /* 04: control/invalid characters. */ + { { 1, "\177\000", USE_MBCURMAX }, { 0, 1, +1 } }, +- /* 05: a null string. */ ++ /* 05: a null string. */ + { { 1, "", USE_MBCURMAX }, { 0, 1, 0 } }, +- /* 06: a null pointer. */ ++ /* 06: a null pointer. */ + { { 0, "", USE_MBCURMAX }, { 0, 0, 0 } }, + /* Last element. */ + { .is_last = 1 } +@@ -95,15 +95,15 @@ TST_MBLEN tst_mblen_loc [] = { + { + /* 01: a character. */ + { { 1, "\264\301", USE_MBCURMAX }, { 0, 1, 2 } }, +- /* 02: a character. */ ++ /* 02: a character. */ + { { 1, "\216\261", USE_MBCURMAX }, { 0, 1, 2 } }, +- /* 03: a character + an invalid byte. */ ++ /* 03: a character + an invalid byte. */ + { { 1, "\260\241\200", USE_MBCURMAX }, { 0, 1, 2 } }, + /* 04: control/invalid characters. */ + { { 1, "\377\202", USE_MBCURMAX }, { EILSEQ, 1, -1 } }, +- /* 05: a null string. */ ++ /* 05: a null string. */ + { { 1, "", USE_MBCURMAX }, { 0, 1, 0 } }, +- /* 06: a null pointer. */ ++ /* 06: a null pointer. */ + { { 0, "", USE_MBCURMAX }, { 0, 0, 0 } }, + /* Last element. */ + { .is_last = 1 } +diff --git a/localedata/tests-mbwc/dat_towctrans.c b/localedata/tests-mbwc/dat_towctrans.c +index 6816af9c03e28ec2..e7fe1dc028cf4885 100644 +--- a/localedata/tests-mbwc/dat_towctrans.c ++++ b/localedata/tests-mbwc/dat_towctrans.c +@@ -40,9 +40,9 @@ TST_TOWCTRANS tst_towctrans_loc [] = { + { + #ifdef SHOJI_IS_RIGHT + { { 0x0010, "xxxxxxx" }, { EINVAL,1,0x0010 } }, +-#else ++#else + { { 0x0010, "xxxxxxx" }, { 0, 1,0x0010 } }, +-#endif ++#endif + { { 0x007F, "tolower" }, { 0, 1,0x007F } }, + { { 0x0061, "toupper" }, { 0, 1,0x0041 } }, + { { 0x0041, "tolower" }, { 0, 1,0x0061 } }, +@@ -54,32 +54,32 @@ TST_TOWCTRANS tst_towctrans_loc [] = { + { + #ifdef SHOJI_IS_RIGHT + { { 0x0010, "tojkata" }, { EINVAL,1,0x0010 } }, +-#else ++#else + { { 0x0010, "tojkata" }, { 0, 1,0x0010 } }, +-#endif ++#endif + { { 0x0080, "tolower" }, { 0, 1,0x0080 } }, + { { 0x00EC, "toupper" }, { 0, 1,0x00CC } }, + { { 0x00CC, "tolower" }, { 0, 1,0x00EC } }, +- { .is_last = 1 } +- } +- }, +- { +- { Ttowctrans, TST_LOC_enUS }, +- { +-#ifdef SHOJI_IS_RIGHT ++ { .is_last = 1 } ++ } ++ }, ++ { ++ { Ttowctrans, TST_LOC_enUS }, ++ { ++#ifdef SHOJI_IS_RIGHT + { { 0x0010, "xxxxxxx" }, { EINVAL,1,0x0010 } }, +-#else ++#else + { { 0x0010, "xxxxxxx" }, { 0, 1,0x0010 } }, +-#endif ++#endif + { { 0x007F, "tolower" }, { 0, 1,0x007F } }, + { { 0x0061, "toupper" }, { 0, 1,0x0041 } }, + { { 0x0041, "tolower" }, { 0, 1,0x0061 } }, +- { .is_last = 1 } +- } +- }, +- { ++ { .is_last = 1 } ++ } ++ }, ++ { + { Ttowctrans, TST_LOC_eucJP }, +- { ++ { + { { 0xFF21, "tolower" }, { 0, 1,0xFF41 } }, + { { 0xFF41, "toupper" }, { 0, 1,0xFF21 } }, + { { 0x30A1, "tojhira" }, { 0, 1,0x3041 } }, diff --git a/SOURCES/glibc-rh1505492-undef-40.patch b/SOURCES/glibc-rh1505492-undef-40.patch new file mode 100644 index 0000000..72cc2b1 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-40.patch @@ -0,0 +1,23 @@ +commit 12f2254b815056bb897a25a0c6dee0122aef52ac +Author: Siddhesh Poyarekar +Date: Thu Jul 10 14:19:21 2014 +0530 + + Fix -Wundef warning for HAVE_SYS_PARAM_H + + Include sys/param.h unconditionally + +diff --git a/io/ftw.c b/io/ftw.c +index 7aff7d04c9ed1e95..ffdb4b02dc7ca4d5 100644 +--- a/io/ftw.c ++++ b/io/ftw.c +@@ -66,9 +66,7 @@ char *alloca (); + #include + #include + #include +-#if HAVE_SYS_PARAM_H || defined _LIBC +-# include +-#endif ++#include + #ifdef _LIBC + # include + #else diff --git a/SOURCES/glibc-rh1505492-undef-41.patch b/SOURCES/glibc-rh1505492-undef-41.patch new file mode 100644 index 0000000..21daa11 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-41.patch @@ -0,0 +1,20 @@ +commit d22f1fe2f369a273533e50d757c4590adf147ef1 +Author: Siddhesh Poyarekar +Date: Thu Jul 10 14:20:42 2014 +0530 + + Fix Wundef warning for HAVE_STRFTIME + + Define it to 0 + +diff --git a/time/strftime_l.c b/time/strftime_l.c +index d33a9687e02457f5..21303c9735baeb5f 100644 +--- a/time/strftime_l.c ++++ b/time/strftime_l.c +@@ -29,6 +29,7 @@ + # define HAVE_TM_ZONE 1 + # define HAVE_TZNAME 1 + # define HAVE_TZSET 1 ++# define HAVE_STRFTIME 0 + # define MULTIBYTE_IS_FORMAT_SAFE 1 + # define STDC_HEADERS 1 + # include "../locale/localeinfo.h" diff --git a/SOURCES/glibc-rh1505492-undef-42.patch b/SOURCES/glibc-rh1505492-undef-42.patch new file mode 100644 index 0000000..7d6fe9b --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-42.patch @@ -0,0 +1,21 @@ +commit 180e0e4b29e4950cd411144c7b9dab1f850853d9 +Author: Siddhesh Poyarekar +Date: Thu Jul 10 14:21:27 2014 +0530 + + Fix -Wundef warning for HAVE_LOCALTIME_R + + Define it to 0. There is a gnulib copy for this, but it is out of + sync with our copy. + +diff --git a/time/strptime_l.c b/time/strptime_l.c +index 7bc5ed3eb0a349ce..14d50a2e879a2c5c 100644 +--- a/time/strptime_l.c ++++ b/time/strptime_l.c +@@ -28,6 +28,7 @@ + #include + + #ifdef _LIBC ++# define HAVE_LOCALTIME_R 0 + # include "../locale/localeinfo.h" + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-43.patch b/SOURCES/glibc-rh1505492-undef-43.patch new file mode 100644 index 0000000..3a0471e --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-43.patch @@ -0,0 +1,168 @@ +commit 32bead5b6d6edc4421a8ca628ce7dc14d435202a +Author: Will Newton +Date: Thu Jul 10 09:18:03 2014 +0100 + + iconv/loop.c: Fix -Wundef warning with !_STRING_ARCH_unaligned + + If code is required to handle the unaligned case then loop.c includes + itself and relies on the #undefs at the end of the file to avoid + outputting two copies of LOOPFCT and gconv_btowc. However + MAX_NEEDED_INPUT is tested with #if so this causes a warning. + Reorder the code so that the function definitions are in an #else + block to make the behaviour clearer and fix the warning. + + Verified that code is unchanged on x86_64 and arm. + + ChangeLog: + + 2014-07-17 Will Newton + + * iconv/loop.c: Move definition of LOOPFCT and gconv_btowc + into an #else block. + +diff --git a/iconv/loop.c b/iconv/loop.c +index 7b2499a3d0657265..9152209b67d32481 100644 +--- a/iconv/loop.c ++++ b/iconv/loop.c +@@ -354,12 +354,10 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step, + # define DEFINE_UNALIGNED + # include "loop.c" + # undef DEFINE_UNALIGNED +-#endif +- +- +-#if MAX_NEEDED_INPUT > 1 +-# define SINGLE(fct) SINGLE2 (fct) +-# define SINGLE2(fct) fct##_single ++#else ++# if MAX_NEEDED_INPUT > 1 ++# define SINGLE(fct) SINGLE2 (fct) ++# define SINGLE2(fct) fct##_single + static inline int + __attribute ((always_inline)) + SINGLE(LOOPFCT) (struct __gconv_step *step, +@@ -369,37 +367,37 @@ SINGLE(LOOPFCT) (struct __gconv_step *step, + size_t *irreversible EXTRA_LOOP_DECLS) + { + mbstate_t *state = step_data->__statep; +-#ifdef LOOP_NEED_FLAGS ++# ifdef LOOP_NEED_FLAGS + int flags = step_data->__flags; +-#endif +-#ifdef LOOP_NEED_DATA ++# endif ++# ifdef LOOP_NEED_DATA + void *data = step->__data; +-#endif ++# endif + int result = __GCONV_OK; + unsigned char bytebuf[MAX_NEEDED_INPUT]; + const unsigned char *inptr = *inptrp; + unsigned char *outptr = *outptrp; + size_t inlen; + +-#ifdef INIT_PARAMS ++# ifdef INIT_PARAMS + INIT_PARAMS; +-#endif ++# endif + +-#ifdef UNPACK_BYTES ++# ifdef UNPACK_BYTES + UNPACK_BYTES +-#else ++# else + /* Add the bytes from the state to the input buffer. */ + assert ((state->__count & 7) <= sizeof (state->__value)); + for (inlen = 0; inlen < (size_t) (state->__count & 7); ++inlen) + bytebuf[inlen] = state->__value.__wchb[inlen]; +-#endif ++# endif + + /* Are there enough bytes in the input buffer? */ + if (MIN_NEEDED_INPUT > 1 + && __builtin_expect (inptr + (MIN_NEEDED_INPUT - inlen) > inend, 0)) + { + *inptrp = inend; +-#ifdef STORE_REST ++# ifdef STORE_REST + while (inptr < inend) + bytebuf[inlen++] = *inptr++; + +@@ -408,12 +406,12 @@ SINGLE(LOOPFCT) (struct __gconv_step *step, + inend = &bytebuf[inlen]; + + STORE_REST +-#else ++# else + /* We don't have enough input for another complete input + character. */ + while (inptr < inend) + state->__value.__wchb[inlen++] = *inptr++; +-#endif ++# endif + + return __GCONV_INCOMPLETE_INPUT; + } +@@ -453,11 +451,11 @@ SINGLE(LOOPFCT) (struct __gconv_step *step, + result = __GCONV_OK; + + /* Clear the state buffer. */ +-#ifdef CLEAR_STATE ++# ifdef CLEAR_STATE + CLEAR_STATE; +-#else ++# else + state->__count &= ~7; +-#endif ++# endif + } + else if (result == __GCONV_INCOMPLETE_INPUT) + { +@@ -466,11 +464,11 @@ SINGLE(LOOPFCT) (struct __gconv_step *step, + assert (inend != &bytebuf[MAX_NEEDED_INPUT]); + + *inptrp += inend - bytebuf - (state->__count & 7); +-#ifdef STORE_REST ++# ifdef STORE_REST + inptrp = &inptr; + + STORE_REST +-#else ++# else + /* We don't have enough input for another complete input + character. */ + assert (inend - inptr > (state->__count & ~7)); +@@ -479,24 +477,25 @@ SINGLE(LOOPFCT) (struct __gconv_step *step, + inlen = 0; + while (inptr < inend) + state->__value.__wchb[inlen++] = *inptr++; +-#endif ++# endif + } + + return result; + } +-# undef SINGLE +-# undef SINGLE2 +-#endif ++# undef SINGLE ++# undef SINGLE2 ++# endif + + +-#ifdef ONEBYTE_BODY ++# ifdef ONEBYTE_BODY + /* Define the shortcut function for btowc. */ + static wint_t + gconv_btowc (struct __gconv_step *step, unsigned char c) + ONEBYTE_BODY +-# define FROM_ONEBYTE gconv_btowc +-#endif ++# define FROM_ONEBYTE gconv_btowc ++# endif + ++#endif + + /* We remove the macro definitions so that we can include this file again + for the definition of another function. */ diff --git a/SOURCES/glibc-rh1505492-undef-44.patch b/SOURCES/glibc-rh1505492-undef-44.patch new file mode 100644 index 0000000..ddf6c4f --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-44.patch @@ -0,0 +1,46 @@ +commit 3f3dd810e03661535980e334723666205c693313 +Author: Siddhesh Poyarekar +Date: Fri Aug 1 14:23:38 2014 +0530 + + Fix -Wundef warnings in fnmatch.c + + Fixes -Wundef warnings for MBSTATE_T and HAVE_STRING_H. The + HAVE_STRING_H bit is a merge from the gnulib fnmatch.c and the + MBSTATE_T fix has been posted to gnulib for inclusion. + +diff --git a/include/libc-symbols.h b/include/libc-symbols.h +index bf98c33cf3ba9df6..fa0d590b0f072871 100644 +--- a/include/libc-symbols.h ++++ b/include/libc-symbols.h +@@ -68,9 +68,11 @@ + so it's harmless. */ + #define HAVE_CONFIG_H 0 + +-/* Define this for the benefit of portable GNU code that wants to check it. +- Of course, it's never false when building libc! */ ++/* Define these macros for the benefit of portable GNU code that wants to check ++ them. Of course, STDC_HEADERS is never false when building libc! */ + #define STDC_HEADERS 1 ++#define HAVE_MBSTATE_T 1 ++#define HAVE_MBSRTOWCS 1 + + /* The symbols in all the user (non-_) macros are C symbols. */ + +diff --git a/posix/fnmatch.c b/posix/fnmatch.c +index 99ec8c4a0eba49b3..eed12b7b515e390c 100644 +--- a/posix/fnmatch.c ++++ b/posix/fnmatch.c +@@ -29,12 +29,7 @@ + #include + #include + #include +- +-#if HAVE_STRING_H || defined _LIBC +-# include +-#else +-# include +-#endif ++#include + + #if defined STDC_HEADERS || defined _LIBC + # include diff --git a/SOURCES/glibc-rh1505492-undef-45.patch b/SOURCES/glibc-rh1505492-undef-45.patch new file mode 100644 index 0000000..b771d9b --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-45.patch @@ -0,0 +1,33 @@ +commit 78dd658a025fb16d004677284b4db0d0c0191845 +Author: Siddhesh Poyarekar +Date: Fri Aug 1 14:24:41 2014 +0530 + + Check if DEBUG is defined in regex_internal.c + + The DEBUG macro is checked for its value in one place and if it is + defined in another. Make this consistent across the two cases and use + the same style that we did in mktime.c, which is to check if the macro + is defined and it is set. + +diff --git a/posix/regex_internal.c b/posix/regex_internal.c +index 9be8a532e6d34150..1765035f06e906e5 100644 +--- a/posix/regex_internal.c ++++ b/posix/regex_internal.c +@@ -679,7 +679,7 @@ re_string_reconstruct (re_string_t *pstr, int idx, int eflags) + pstr->valid_len - offset); + pstr->valid_len -= offset; + pstr->valid_raw_len -= offset; +-#if DEBUG ++#if defined DEBUG && DEBUG + assert (pstr->valid_len > 0); + #endif + } +@@ -936,7 +936,7 @@ re_string_context_at (const re_string_t *input, int idx, int eflags) + int wc_idx = idx; + while(input->wcs[wc_idx] == WEOF) + { +-#ifdef DEBUG ++#if defined DEBUG && DEBUG + /* It must not happen. */ + assert (wc_idx >= 0); + #endif diff --git a/SOURCES/glibc-rh1505492-undef-46.patch b/SOURCES/glibc-rh1505492-undef-46.patch new file mode 100644 index 0000000..800b848 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-46.patch @@ -0,0 +1,34 @@ +commit a476ac4b45fe39b023bed55c852abad04d70c5df +Author: Siddhesh Poyarekar +Date: Fri Aug 1 14:30:43 2014 +0530 + + Fix -Wundef warnings in regex_internal.h + +diff --git a/include/libc-symbols.h b/include/libc-symbols.h +index fa0d590b0f072871..c555bf2939f2df7f 100644 +--- a/include/libc-symbols.h ++++ b/include/libc-symbols.h +@@ -73,6 +73,10 @@ + #define STDC_HEADERS 1 + #define HAVE_MBSTATE_T 1 + #define HAVE_MBSRTOWCS 1 ++#define HAVE_LIBINTL_H 1 ++#define HAVE_WCTYPE_H 1 ++#define HAVE_ISWCTYPE 1 ++#define ENABLE_NLS 1 + + /* The symbols in all the user (non-_) macros are C symbols. */ + +diff --git a/posix/regex_internal.h b/posix/regex_internal.h +index b7f051eff00d1e7d..1e423caa128c1704 100644 +--- a/posix/regex_internal.h ++++ b/posix/regex_internal.h +@@ -90,7 +90,7 @@ + # define SIZE_MAX ((size_t) -1) + #endif + +-#if (defined MB_CUR_MAX && HAVE_LOCALE_H && HAVE_WCTYPE_H && HAVE_WCHAR_H && HAVE_WCRTOMB && HAVE_MBRTOWC && HAVE_WCSCOLL) || _LIBC ++#if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE) || _LIBC + # define RE_ENABLE_I18N + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-47.patch b/SOURCES/glibc-rh1505492-undef-47.patch new file mode 100644 index 0000000..0b25772 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-47.patch @@ -0,0 +1,33 @@ +commit 920238e061af76ac99dd94c40a80b0c6d23f35d4 +Author: Siddhesh Poyarekar +Date: Fri Sep 12 16:37:31 2014 +0530 + + Fix typo in macro names in sysconf.c + + Spell _POSIX_DEVICE_SPECIFIC and _POSIX_DEVICE_SPECIFIC_R correctly. + Found when trying to make the getconf environment variables + typo-proof. + + * sysdeps/posix/sysconf.c (__sysconf): Spell + _POSIX_DEVICE_SPECIFIC and _POSIX_DEVICE_SPECIFIC_R correctly. + +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index 6340b6250d57c295..e795b565367bdd1b 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -886,13 +886,13 @@ __sysconf (name) + return -1; + #endif + case _SC_DEVICE_SPECIFIC: +-#if _POSIX_DEVICE_SPCIFIC > 0 ++#if _POSIX_DEVICE_SPECIFIC > 0 + return _POSIX_DEVICE_SPECIFIC; + #else + return -1; + #endif + case _SC_DEVICE_SPECIFIC_R: +-#if _POSIX_DEVICE_SPCIFIC_R > 0 ++#if _POSIX_DEVICE_SPECIFIC_R > 0 + return _POSIX_DEVICE_SPECIFIC_R; + #else + return -1; diff --git a/SOURCES/glibc-rh1505492-undef-48.patch b/SOURCES/glibc-rh1505492-undef-48.patch new file mode 100644 index 0000000..d6e0a49 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-48.patch @@ -0,0 +1,35 @@ +commit 61fe374a44a92621e0b75ec1f011ff1fba6c2148 +Author: Siddhesh Poyarekar +Date: Mon Sep 15 10:16:14 2014 +0530 + + Remove _POSIX_REGEX_VERSION + + There is no _POSIX_REGEX_VERSION, so don't check for it. + _REGEX_VERSION has been removed as well[1], so only keep the -1 return + for backward compatibility. I found this when trying to make the + getconf environment variables typo-proof. + + * sysdeps/posix/sysconf.c (__sysconf): Return -1 for + _SC_REGEX_VERSION. + + [1] http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html + +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index e795b565367bdd1b..cf4f8010097e309a 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -983,12 +983,10 @@ __sysconf (name) + #else + return -1; + #endif ++ /* _REGEX_VERSION has been removed with IEEE Std 1003.1-2001/Cor 2-2004, ++ item XSH/TC2/D6/137. */ + case _SC_REGEX_VERSION: +-#if _POSIX_REGEX_VERSION > 0 +- return _POSIX_REGEX_VERSION; +-#else + return -1; +-#endif + + case _SC_SHELL: + #if _POSIX_SHELL > 0 diff --git a/SOURCES/glibc-rh1505492-undef-49.patch b/SOURCES/glibc-rh1505492-undef-49.patch new file mode 100644 index 0000000..398349c --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-49.patch @@ -0,0 +1,425 @@ +commit 4a6aca7bf8a70f1dc66a07c04aba2d7fd837602d +Author: Siddhesh Poyarekar +Date: Mon Dec 29 17:37:54 2014 +0530 + + Remove Wundef warnings for specification macros + + This patch adds a file posix-conf-vars.list that is used to generate + macros to determine if a macro is defined as set, unset or not + defined. gen-posix-conf-vars.awk processes this file and generates a + header (posix-conf-vars-def.h) with these macros. A new header + posix-conf-vars.h includes this generated header and defines accessor + macros for the generated macros. + + Tested on x86_64. + + * posix/Makefile (before-compile): Add posix-conf-vars-def.h. + ($(objpfx)posix-conf-vars-def.h): New target. + * posix/posix-conf-vars.list: New file. + * posix/posix-conf-vars.h: New file. + * posix/confstr.c: Include posix-conf-vars.h. + (confstr): Use CONF_IS_* macros. + * posix/posix-envs.def: Include posix-conf-vars.h. Use + CONF_IS_* macros. + * scripts/gen-posix-conf-vars.awk: New file. + +diff --git a/posix/Makefile b/posix/Makefile +index 4034282866139aaa..c272e87a480f5254 100644 +--- a/posix/Makefile ++++ b/posix/Makefile +@@ -96,7 +96,7 @@ others := getconf + install-bin := getconf + install-others-programs := $(inst_libexecdir)/getconf + +-before-compile += testcases.h ptestcases.h ++before-compile += testcases.h ptestcases.h posix-conf-vars-def.h + + # So they get cleaned up. + generated := $(addprefix wordexp-test-result, 1 2 3 4 5 6 7 8 9 10) \ +@@ -288,3 +288,9 @@ $(objpfx)getconf.speclist: getconf-speclist.c posix-envs.def + # be built both makes it available for eyeball inspection and avoids the + # surprise of things that look like compilation being done by 'make install'. + others: $(objpfx)getconf.speclist ++ ++$(objpfx)posix-conf-vars-def.h: $(..)scripts/gen-posix-conf-vars.awk \ ++ posix-conf-vars.list Makefile ++ $(make-target-directory) ++ $(AWK) -f $(filter-out Makefile, $^) > $@.tmp ++ mv -f $@.tmp $@ +diff --git a/posix/confstr.c b/posix/confstr.c +index 7d86d60bc177c32d..5b03986a3678e007 100644 +--- a/posix/confstr.c ++++ b/posix/confstr.c +@@ -21,6 +21,7 @@ + #include + #include + #include "../version.h" ++#include + + /* If BUF is not NULL and LEN > 0, fill in at most LEN - 1 bytes + of BUF with the value corresponding to NAME and zero-terminate BUF. +@@ -100,9 +101,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_ILP32_OFF32_CFLAGS: + case _CS_POSIX_V7_ILP32_OFF32_CFLAGS: + #ifdef __ILP32_OFF32_CFLAGS +-# if _POSIX_V7_ILP32_OFF32 == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_ILP32_OFF32) + # error "__ILP32_OFF32_CFLAGS should not be defined" +-# elif !defined _POSIX_V7_ILP32_OFF32 ++# elif CONF_IS_UNDEFINED (_POSIX_V7_ILP32_OFF32) + if (__sysconf (_SC_V7_ILP32_OFF32) < 0) + break; + # endif +@@ -115,9 +116,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: + case _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: + #ifdef __ILP32_OFFBIG_CFLAGS +-# if _POSIX_V7_ILP32_OFFBIG == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_ILP32_OFFBIG) + # error "__ILP32_OFFBIG_CFLAGS should not be defined" +-# elif !defined _POSIX_V7_ILP32_OFFBIG ++# elif CONF_IS_UNDEFINED (_POSIX_V7_ILP32_OFFBIG) + if (__sysconf (_SC_V7_ILP32_OFFBIG) < 0) + break; + # endif +@@ -130,9 +131,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_LP64_OFF64_CFLAGS: + case _CS_POSIX_V7_LP64_OFF64_CFLAGS: + #ifdef __LP64_OFF64_CFLAGS +-# if _POSIX_V7_LP64_OFF64 == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_LP64_OFF64) + # error "__LP64_OFF64_CFLAGS should not be defined" +-# elif !defined _POSIX_V7_LP64_OFF64 ++# elif CONF_IS_UNDEFINED (_POSIX_V7_LP64_OFF64) + if (__sysconf (_SC_V7_LP64_OFF64) < 0) + break; + # endif +@@ -145,9 +146,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: + case _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: + #ifdef __ILP32_OFF32_LDFLAGS +-# if _POSIX_V7_ILP32_OFF32 == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_ILP32_OFF32 ) + # error "__ILP32_OFF32_LDFLAGS should not be defined" +-# elif !defined _POSIX_V7_ILP32_OFF32 ++# elif CONF_IS_UNDEFINED (_POSIX_V7_ILP32_OFF32) + if (__sysconf (_SC_V7_ILP32_OFF32) < 0) + break; + # endif +@@ -160,9 +161,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: + case _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: + #ifdef __ILP32_OFFBIG_LDFLAGS +-# if _POSIX_V7_ILP32_OFFBIG == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_ILP32_OFFBIG) + # error "__ILP32_OFFBIG_LDFLAGS should not be defined" +-# elif !defined _POSIX_V7_ILP32_OFFBIG ++# elif CONF_IS_UNDEFINED (_POSIX_V7_ILP32_OFFBIG) + if (__sysconf (_SC_V7_ILP32_OFFBIG) < 0) + break; + # endif +@@ -175,9 +176,9 @@ confstr (name, buf, len) + case _CS_POSIX_V6_LP64_OFF64_LDFLAGS: + case _CS_POSIX_V7_LP64_OFF64_LDFLAGS: + #ifdef __LP64_OFF64_LDFLAGS +-# if _POSIX_V7_LP64_OFF64 == -1 ++# if CONF_IS_DEFINED_UNSET (_POSIX_V7_LP64_OFF64) + # error "__LP64_OFF64_LDFLAGS should not be defined" +-# elif !defined _POSIX_V7_LP64_OFF64 ++# elif CONF_IS_UNDEFINED (_POSIX_V7_LP64_OFF64) + if (__sysconf (_SC_V7_LP64_OFF64) < 0) + break; + # endif +@@ -188,7 +189,8 @@ confstr (name, buf, len) + + case _CS_LFS_CFLAGS: + case _CS_LFS_LINTFLAGS: +-#if _POSIX_V6_ILP32_OFF32 == 1 && _POSIX_V6_ILP32_OFFBIG == 1 ++#if (CONF_IS_DEFINED_SET (_POSIX_V6_ILP32_OFF32) \ ++ && CONF_IS_DEFINED_SET (_POSIX_V6_ILP32_OFFBIG)) + # define __LFS_CFLAGS "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" + /* Signal that we want the new ABI. */ + string = __LFS_CFLAGS; +diff --git a/posix/posix-conf-vars.h b/posix/posix-conf-vars.h +new file mode 100644 +index 0000000000000000..6faf29f56b55b7e8 +--- /dev/null ++++ b/posix/posix-conf-vars.h +@@ -0,0 +1,48 @@ ++/* Macros to check if a POSIX configuration variable is defined or set. ++ ++ Copyright (C) 1991-2014 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#ifndef _POSIX_CONF_VARS_H ++#define _POSIX_CONF_VARS_H ++ ++/* The script gen-posix-conf-vars.awk generates the header ++ posix-conf-vars-def.h from the list file posix-conf-vars.list and defines ++ CONF_DEF_* macros for each entry in the list file set to either of ++ CONF_DEF_UNDEFINED, CONF_DEF_DEFINED_SET or CONF_DEF_DEFINED_UNSET. To ++ check configuration variables within glibc code, use the configuration macro ++ functions instead of checking for definitions of the macros. */ ++ ++#include ++ ++#define CONF_DEF_UNDEFINED 1 ++#define CONF_DEF_DEFINED_SET 2 ++#define CONF_DEF_DEFINED_UNSET 3 ++ ++/* The configuration variable is not defined. */ ++#define CONF_IS_UNDEFINED(conf) (CONF_DEF##conf == CONF_DEF_UNDEFINED) ++ ++/* The configuration variable is defined. It may or may not be set. */ ++#define CONF_IS_DEFINED(conf) (CONF_DEF##conf != CONF_DEF_UNDEFINED) ++ ++/* The configuration variable is defined and set. */ ++#define CONF_IS_DEFINED_SET(conf) (CONF_DEF##conf == CONF_DEF_DEFINED_SET) ++ ++/* The configuration variable is defined but not set. */ ++#define CONF_IS_DEFINED_UNSET(conf) (CONF_DEF##conf == CONF_DEF_DEFINED_UNSET) ++ ++#endif +diff --git a/posix/posix-conf-vars.list b/posix/posix-conf-vars.list +new file mode 100644 +index 0000000000000000..8f308c216626c59c +--- /dev/null ++++ b/posix/posix-conf-vars.list +@@ -0,0 +1,22 @@ ++# Configuration variables identified by getconf. The heading of each section ++# is of the format TYPE PREFIX with the opening curly brace on the same line. ++# TYPE can either be SYSCONF, PATHCONF, CONFSTR or SPEC. Variable names are ++# put one on each line with a curly brace on its own line ending the section. ++ ++SPEC POSIX { ++ V6_ILP32_OFF32 ++ V6_ILP32_OFFBIG ++ V6_LP64_OFF64 ++ V6_LPBIG_OFFBIG ++ V7_ILP32_OFF32 ++ V7_ILP32_OFFBIG ++ V7_LP64_OFF64 ++ V7_LPBIG_OFFBIG ++} ++ ++SPEC XBS5 { ++ ILP32_OFF32 ++ ILP32_OFFBIG ++ LP64_OFF64 ++ LPBIG_OFFBIG ++} +diff --git a/posix/posix-envs.def b/posix/posix-envs.def +index c32ea8acfcfebb78..e820e6dbe3fa3b61 100644 +--- a/posix/posix-envs.def ++++ b/posix/posix-envs.def +@@ -42,35 +42,37 @@ + defined. These are called with arguments V5, V6, V7 before and + after the relevant groups of environments. */ + ++#include ++ + START_ENV_GROUP (V7) + +-#if _POSIX_V7_ILP32_OFF32 > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V7_ILP32_OFF32) + KNOWN_PRESENT_ENVIRONMENT (V7, POSIX_V7, ILP32_OFF32) +-#elif defined _POSIX_V7_ILP32_OFF32 ++#elif CONF_IS_DEFINED (_POSIX_V7_ILP32_OFF32) + KNOWN_ABSENT_ENVIRONMENT (V7, POSIX_V7, ILP32_OFF32) + #else + UNKNOWN_ENVIRONMENT (V7, POSIX_V7, ILP32_OFF32) + #endif + +-#if _POSIX_V7_ILP32_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V7_ILP32_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (V7, POSIX_V7, ILP32_OFFBIG) +-#elif defined _POSIX_V7_ILP32_OFFBIG ++#elif CONF_IS_DEFINED (_POSIX_V7_ILP32_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (V7, POSIX_V7, ILP32_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (V7, POSIX_V7, ILP32_OFFBIG) + #endif + +-#if _POSIX_V7_LP64_OFF64 > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V7_LP64_OFF64) + KNOWN_PRESENT_ENVIRONMENT (V7, POSIX_V7, LP64_OFF64) +-#elif defined _POSIX_V7_LP64_OFF64 ++#elif CONF_IS_DEFINED (_POSIX_V7_LP64_OFF64) + KNOWN_ABSENT_ENVIRONMENT (V7, POSIX_V7, LP64_OFF64) + #else + UNKNOWN_ENVIRONMENT (V7, POSIX_V7, LP64_OFF64) + #endif + +-#if _POSIX_V7_LPBIG_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V7_LPBIG_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (V7, POSIX_V7, LPBIG_OFFBIG) +-#elif defined _POSIX_V7_LPBIG_OFFBIG ++#elif CONF_IS_DEFINED (_POSIX_V7_LPBIG_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (V7, POSIX_V7, LPBIG_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (V7, POSIX_V7, LPBIG_OFFBIG) +@@ -80,33 +82,33 @@ END_ENV_GROUP (V7) + + START_ENV_GROUP (V6) + +-#if _POSIX_V6_ILP32_OFF32 > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V6_ILP32_OFF32) + KNOWN_PRESENT_ENVIRONMENT (V6, POSIX_V6, ILP32_OFF32) +-#elif defined _POSIX_V6_ILP32_OFF32 ++#elif CONF_IS_DEFINED (_POSIX_V6_ILP32_OFF32) + KNOWN_ABSENT_ENVIRONMENT (V6, POSIX_V6, ILP32_OFF32) + #else + UNKNOWN_ENVIRONMENT (V6, POSIX_V6, ILP32_OFF32) + #endif + +-#if _POSIX_V6_ILP32_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V6_ILP32_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (V6, POSIX_V6, ILP32_OFFBIG) +-#elif defined _POSIX_V6_ILP32_OFFBIG ++#elif CONF_IS_DEFINED (_POSIX_V6_ILP32_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (V6, POSIX_V6, ILP32_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (V6, POSIX_V6, ILP32_OFFBIG) + #endif + +-#if _POSIX_V6_LP64_OFF64 > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V6_LP64_OFF64) + KNOWN_PRESENT_ENVIRONMENT (V6, POSIX_V6, LP64_OFF64) +-#elif defined _POSIX_V6_LP64_OFF64 ++#elif CONF_IS_DEFINED (_POSIX_V6_LP64_OFF64) + KNOWN_ABSENT_ENVIRONMENT (V6, POSIX_V6, LP64_OFF64) + #else + UNKNOWN_ENVIRONMENT (V6, POSIX_V6, LP64_OFF64) + #endif + +-#if _POSIX_V6_LPBIG_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_V6_LPBIG_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (V6, POSIX_V6, LPBIG_OFFBIG) +-#elif defined _POSIX_V6_LPBIG_OFFBIG ++#elif CONF_IS_DEFINED (_POSIX_V6_LPBIG_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (V6, POSIX_V6, LPBIG_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (V6, POSIX_V6, LPBIG_OFFBIG) +@@ -116,33 +118,33 @@ END_ENV_GROUP (V6) + + START_ENV_GROUP (V5) + +-#if _XBS5_ILP32_OFF32 > 0 ++#if CONF_IS_DEFINED_SET (_XBS5_ILP32_OFF32) + KNOWN_PRESENT_ENVIRONMENT (XBS5, XBS5, ILP32_OFF32) +-#elif defined _XBS5_ILP32_OFF32 ++#elif CONF_IS_DEFINED (_XBS5_ILP32_OFF32) + KNOWN_ABSENT_ENVIRONMENT (XBS5, XBS5, ILP32_OFF32) + #else + UNKNOWN_ENVIRONMENT (XBS5, XBS5, ILP32_OFF32) + #endif + +-#if _XBS5_ILP32_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_XBS5_ILP32_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (XBS5, XBS5, ILP32_OFFBIG) +-#elif defined _XBS5_ILP32_OFFBIG ++#elif CONF_IS_DEFINED (_XBS5_ILP32_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (XBS5, XBS5, ILP32_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (XBS5, XBS5, ILP32_OFFBIG) + #endif + +-#if _XBS5_LP64_OFF64 > 0 ++#if CONF_IS_DEFINED_SET (_XBS5_LP64_OFF64) + KNOWN_PRESENT_ENVIRONMENT (XBS5, XBS5, LP64_OFF64) +-#elif defined _XBS5_LP64_OFF64 ++#elif CONF_IS_DEFINED (_XBS5_LP64_OFF64) + KNOWN_ABSENT_ENVIRONMENT (XBS5, XBS5, LP64_OFF64) + #else + UNKNOWN_ENVIRONMENT (XBS5, XBS5, LP64_OFF64) + #endif + +-#if _XBS5_LPBIG_OFFBIG > 0 ++#if CONF_IS_DEFINED_SET (_XBS5_LPBIG_OFFBIG) + KNOWN_PRESENT_ENVIRONMENT (XBS5, XBS5, LPBIG_OFFBIG) +-#elif defined _XBS5_LPBIG_OFFBIG ++#elif CONF_IS_DEFINED (_XBS5_LPBIG_OFFBIG) + KNOWN_ABSENT_ENVIRONMENT (XBS5, XBS5, LPBIG_OFFBIG) + #else + UNKNOWN_ENVIRONMENT (XBS5, XBS5, LPBIG_OFFBIG) +diff --git a/scripts/gen-posix-conf-vars.awk b/scripts/gen-posix-conf-vars.awk +new file mode 100644 +index 0000000000000000..16e20fc1007bd2f5 +--- /dev/null ++++ b/scripts/gen-posix-conf-vars.awk +@@ -0,0 +1,61 @@ ++# Generate posix-conf-vars-def.h with definitions for CONF_DEF{CONF} for each ++# configuration variable that getconf or sysconf may use. Currently it is ++# equipped only to generate such macros for specification macros and for ++# SYSCONF macros in the _POSIX namespace. ++ ++BEGIN { ++ prefix = "" ++} ++ ++$1 ~ /^#/ || $0 ~ /^\s*$/ { ++ next ++} ++ ++# Begin a new prefix. ++$NF == "{" { ++ type = $1 ++ prefix = $2 ++ next ++} ++ ++$1 == "}" { ++ prefix = "" ++ type = "" ++ next ++} ++ ++{ ++ if (prefix == "" && type == "" && sc_prefix == "") { ++ printf ("Syntax error at %s:%d\n", FILENAME, FNR) > "/dev/stderr" ++ exit 1 ++ } ++ ++ # The prefix and variable names are indices and the value indicates what type ++ # of variable it is. The possible options are: ++ # CONFSTR: A configuration string ++ # SYSCONF: A numeric value ++ # SPEC: A specification ++ conf[prefix][$1] = type ++} ++ ++END { ++ print "/* AUTOGENERATED by gen-posix-conf-vars.awk. DO NOT EDIT. */\n" ++ ++ # Generate macros that specify if a sysconf macro is defined and/or set. ++ for (p in conf) { ++ for (c in conf[p]) { ++ printf "#ifndef _%s_%s\n", p, c ++ printf "# define CONF_DEF_%s_%s CONF_DEF_UNDEFINED\n", p, c ++ # CONFSTR have string values and they are not set or unset. ++ if (conf[p][c] != "CONFSTR") { ++ printf "#else\n" ++ printf "# if _%s_%s > 0\n", p, c ++ printf "# define CONF_DEF_%s_%s CONF_DEF_DEFINED_SET\n", p, c ++ printf "# else\n" ++ printf "# define CONF_DEF_%s_%s CONF_DEF_DEFINED_UNSET\n", p, c ++ printf "# endif\n" ++ } ++ printf "#endif\n\n" ++ } ++ } ++} diff --git a/SOURCES/glibc-rh1505492-undef-5.patch b/SOURCES/glibc-rh1505492-undef-5.patch new file mode 100644 index 0000000..504b552 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-5.patch @@ -0,0 +1,169 @@ +commit bdfe308a166b433a841d5c9ae256560c18bce640 +Author: Ondřej Bílka +Date: Mon Feb 10 12:25:04 2014 +0100 + + Remove THREAD_STATS. + + A THREAD_STATS macro duplicates gathering information that could be + obtained by systemtap probes instead. + +Conflicts: + malloc/arena.c + malloc/malloc.c + +Textual conflicts due to independent malloc backports. + +diff --git a/malloc/arena.c b/malloc/arena.c +index f5e97fadc17ad92d..fe4ec8de614454c9 100644 +--- a/malloc/arena.c ++++ b/malloc/arena.c +@@ -40,14 +40,6 @@ + mmap threshold, so that requests with a size just below that + threshold can be fulfilled without creating too many heaps. */ + +- +-#ifndef THREAD_STATS +-#define THREAD_STATS 0 +-#endif +- +-/* If THREAD_STATS is non-zero, some statistics on mutex locking are +- computed. */ +- + /***************************************************************************/ + + #define top(ar_ptr) ((ar_ptr)->top) +@@ -101,13 +93,6 @@ static mstate free_list; + acquired. */ + static mutex_t list_lock = MUTEX_INITIALIZER; + +-#if THREAD_STATS +-static int stat_n_heaps; +-#define THREAD_STAT(x) x +-#else +-#define THREAD_STAT(x) do ; while(0) +-#endif +- + /* Mapped memory in non-main arenas (reliable only for NO_THREADS). */ + static unsigned long arena_mem; + +@@ -583,7 +568,6 @@ new_heap(size_t size, size_t top_pad) + h = (heap_info *)p2; + h->size = size; + h->mprotect_size = size; +- THREAD_STAT(stat_n_heaps++); + LIBC_PROBE (memory_heap_new, 2, h, h->size); + return h; + } +@@ -811,8 +795,6 @@ _int_new_arena(size_t size) + + (void) mutex_lock (&a->mutex); + +- THREAD_STAT(++(a->stat_lock_loop)); +- + return a; + } + +@@ -844,7 +826,6 @@ get_free_list (void) + LIBC_PROBE (memory_arena_reuse_free_list, 1, result); + (void)mutex_lock(&result->mutex); + tsd_setspecific(arena_key, (void *)result); +- THREAD_STAT(++(result->stat_lock_loop)); + } + } + +@@ -941,7 +922,6 @@ reused_arena (mstate avoid_arena) + } + LIBC_PROBE (memory_arena_reuse, 2, result, avoid_arena); + tsd_setspecific(arena_key, (void *)result); +- THREAD_STAT(++(result->stat_lock_loop)); + next_to_use = result->next; + + return result; +diff --git a/malloc/malloc.c b/malloc/malloc.c +index fc86b344ee3b3a7c..9d3b24ee0c137a1b 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -1712,11 +1712,6 @@ struct malloc_state { + /* Flags (formerly in max_fast). */ + int flags; + +-#if THREAD_STATS +- /* Statistics for locking. Only used if THREAD_STATS is defined. */ +- long stat_lock_direct, stat_lock_loop, stat_lock_wait; +-#endif +- + /* Fastbins */ + mfastbinptr fastbinsY[NFASTBINS]; + +@@ -3015,17 +3010,7 @@ __libc_realloc(void* oldmem, size_t bytes) + return newmem; + } + +-#if THREAD_STATS +- if(!mutex_trylock(&ar_ptr->mutex)) +- ++(ar_ptr->stat_lock_direct); +- else { +- (void)mutex_lock(&ar_ptr->mutex); +- ++(ar_ptr->stat_lock_wait); +- } +-#else + (void)mutex_lock(&ar_ptr->mutex); +-#endif +- + + newp = _int_realloc(ar_ptr, oldp, oldsize, nb); + +@@ -3941,16 +3926,7 @@ _int_free(mstate av, mchunkptr p, int have_lock) + + else if (!chunk_is_mmapped(p)) { + if (! have_lock) { +-#if THREAD_STATS +- if(!mutex_trylock(&av->mutex)) +- ++(av->stat_lock_direct); +- else { +- (void)mutex_lock(&av->mutex); +- ++(av->stat_lock_wait); +- } +-#else + (void)mutex_lock(&av->mutex); +-#endif + locked = 1; + } + +@@ -4713,9 +4689,6 @@ __malloc_stats (void) + int i; + mstate ar_ptr; + unsigned int in_use_b = mp_.mmapped_mem, system_b = in_use_b; +-#if THREAD_STATS +- long stat_lock_direct = 0, stat_lock_loop = 0, stat_lock_wait = 0; +-#endif + + if(__malloc_initialized < 0) + ptmalloc_init (); +@@ -4737,11 +4710,6 @@ __malloc_stats (void) + #endif + system_b += mi.arena; + in_use_b += mi.uordblks; +-#if THREAD_STATS +- stat_lock_direct += ar_ptr->stat_lock_direct; +- stat_lock_loop += ar_ptr->stat_lock_loop; +- stat_lock_wait += ar_ptr->stat_lock_wait; +-#endif + (void)mutex_unlock(&ar_ptr->mutex); + ar_ptr = ar_ptr->next; + if(ar_ptr == &main_arena) break; +@@ -4752,14 +4720,6 @@ __malloc_stats (void) + fprintf(stderr, "max mmap regions = %10u\n", (unsigned int)mp_.max_n_mmaps); + fprintf(stderr, "max mmap bytes = %10lu\n", + (unsigned long)mp_.max_mmapped_mem); +-#if THREAD_STATS +- fprintf(stderr, "heaps created = %10d\n", stat_n_heaps); +- fprintf(stderr, "locked directly = %10ld\n", stat_lock_direct); +- fprintf(stderr, "locked in loop = %10ld\n", stat_lock_loop); +- fprintf(stderr, "locked waiting = %10ld\n", stat_lock_wait); +- fprintf(stderr, "locked total = %10ld\n", +- stat_lock_direct + stat_lock_loop + stat_lock_wait); +-#endif + ((_IO_FILE *) stderr)->_flags2 |= old_flags2; + _IO_funlockfile (stderr); + } diff --git a/SOURCES/glibc-rh1505492-undef-50.patch b/SOURCES/glibc-rh1505492-undef-50.patch new file mode 100644 index 0000000..5c282ba --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-50.patch @@ -0,0 +1,745 @@ +commit 3b566046c3e8cb252f4c0ab7b6041fef5098f1a5 +Author: Siddhesh Poyarekar +Date: Mon Dec 29 17:39:30 2014 +0530 + + Add _POSIX namespace SYSCONF macros to posix-conf-vars.list + + This fixes the remaining -Wundef warnings. Tested on x86_64. + + * posix/posix-conf-vars.list: Add _POSIX sysconf namespace. + * sysdeps/posix/sysconf.c: Include posix-conf-vars.h. + (__sysconf): Use CONF_IS_* macros. + +diff --git a/posix/posix-conf-vars.list b/posix/posix-conf-vars.list +index 8f308c216626c59c..3e7e7cdaa9c46c85 100644 +--- a/posix/posix-conf-vars.list ++++ b/posix/posix-conf-vars.list +@@ -14,6 +14,96 @@ SPEC POSIX { + V7_LPBIG_OFFBIG + } + ++SYSCONF POSIX { ++ ADVISORY_INFO ++ ARG_MAX ++ ASYNCHRONOUS_IO ++ BARRIERS ++ BASE ++ CHILD_MAX ++ C_LANG_SUPPORT ++ C_LANG_SUPPORT_R ++ CLOCK_SELECTION ++ CPUTIME ++ DEVICE_IO ++ DEVICE_SPECIFIC ++ DEVICE_SPECIFIC_R ++ FD_MGMT ++ FIFO ++ FILE_ATTRIBUTES ++ FILE_LOCKING ++ FILE_SYSTEM ++ FSYNC ++ JOB_CONTROL ++ MAPPED_FILES ++ MEMLOCK ++ MEMLOCK_RANGE ++ MEMORY_PROTECTION ++ MESSAGE_PASSING ++ MONOTONIC_CLOCK ++ MULTI_PROCESS ++ NETWORKING ++ NGROUPS_MAX ++ OPEN_MAX ++ PII ++ PII_INTERNET ++ PII_INTERNET_DGRAM ++ PII_INTERNET_STREAM ++ PII_OSI ++ PII_OSI_CLTS ++ PII_OSI_COTS ++ PII_OSI_M ++ PII_SOCKET ++ PII_XTI ++ PIPE ++ POLL ++ PRIORITIZED_IO ++ PRIORITY_SCHEDULING ++ READER_WRITER_LOCKS ++ REALTIME_SIGNALS ++ REGEXP ++ SAVED_IDS ++ SELECT ++ SEMAPHORES ++ SHARED_MEMORY_OBJECTS ++ SHELL ++ SIGNALS ++ SINGLE_PROCESS ++ SPAWN ++ SPIN_LOCKS ++ SPORADIC_SERVER ++ SSIZE_MAX ++ STREAM_MAX ++ SYNCHRONIZED_IO ++ SYSTEM_DATABASE ++ SYSTEM_DATABASE_R ++ THREAD_ATTR_STACKADDR ++ THREAD_ATTR_STACKSIZE ++ THREAD_CPUTIME ++ THREAD_PRIO_INHERIT ++ THREAD_PRIO_PROTECT ++ THREAD_PRIORITY_SCHEDULING ++ THREAD_PROCESS_SHARED ++ THREADS ++ THREAD_SAFE_FUNCTIONS ++ THREAD_SPORADIC_SERVER ++ TIMEOUTS ++ TIMERS ++ TRACE ++ TRACE_EVENT_FILTER ++ TRACE_INHERIT ++ TRACE_LOG ++ TYPED_MEMORY_OBJECTS ++ TZNAME_MAX ++ USER_GROUPS ++ USER_GROUPS_R ++ VERSION ++# Additional variables not in getconf. ++ THREAD_DESTRUCTOR_ITERATIONS ++ IPV6 ++ RAW_SOCKETS ++} ++ + SPEC XBS5 { + ILP32_OFF32 + ILP32_OFFBIG +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index cf4f8010097e309a..1e9d4e099e94981c 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -31,6 +31,8 @@ + #include + #include + ++#include ++ + + #define NEED_CHECK_SPEC \ + (!defined _XBS5_ILP32_OFF32 || !defined _XBS5_ILP32_OFFBIG \ +@@ -95,112 +97,112 @@ __sysconf (name) + return MAX (__tzname_max (), _POSIX_TZNAME_MAX); + + case _SC_JOB_CONTROL: +-#if _POSIX_JOB_CONTROL > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_JOB_CONTROL) + return _POSIX_JOB_CONTROL; + #else + return -1; + #endif + + case _SC_SAVED_IDS: +-#if _POSIX_SAVED_IDS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SAVED_IDS) + return 1; + #else + return -1; + #endif + + case _SC_REALTIME_SIGNALS: +-#if _POSIX_REALTIME_SIGNALS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_REALTIME_SIGNALS) + return _POSIX_REALTIME_SIGNALS; + #else + return -1; + #endif + + case _SC_PRIORITY_SCHEDULING: +-#if _POSIX_PRIORITY_SCHEDULING > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PRIORITY_SCHEDULING) + return _POSIX_PRIORITY_SCHEDULING; + #else + return -1; + #endif + + case _SC_TIMERS: +-#if _POSIX_TIMERS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TIMERS) + return _POSIX_TIMERS; + #else + return -1; + #endif + + case _SC_ASYNCHRONOUS_IO: +-#if _POSIX_ASYNCHRONOUS_IO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_ASYNCHRONOUS_IO) + return _POSIX_ASYNCHRONOUS_IO; + #else + return -1; + #endif + + case _SC_PRIORITIZED_IO: +-#if _POSIX_PRIORITIZED_IO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PRIORITIZED_IO) + return _POSIX_PRIORITIZED_IO; + #else + return -1; + #endif + + case _SC_SYNCHRONIZED_IO: +-#if _POSIX_SYNCHRONIZED_IO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SYNCHRONIZED_IO) + return _POSIX_SYNCHRONIZED_IO; + #else + return -1; + #endif + + case _SC_FSYNC: +-#if _POSIX_FSYNC > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FSYNC) + return _POSIX_FSYNC; + #else + return -1; + #endif + + case _SC_MAPPED_FILES: +-#if _POSIX_MAPPED_FILES > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MAPPED_FILES) + return _POSIX_MAPPED_FILES; + #else + return -1; + #endif + + case _SC_MEMLOCK: +-#if _POSIX_MEMLOCK > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MEMLOCK) + return _POSIX_MEMLOCK; + #else + return -1; + #endif + + case _SC_MEMLOCK_RANGE: +-#if _POSIX_MEMLOCK_RANGE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MEMLOCK_RANGE) + return _POSIX_MEMLOCK_RANGE; + #else + return -1; + #endif + + case _SC_MEMORY_PROTECTION: +-#if _POSIX_MEMORY_PROTECTION > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MEMORY_PROTECTION) + return _POSIX_MEMORY_PROTECTION; + #else + return -1; + #endif + + case _SC_MESSAGE_PASSING: +-#if _POSIX_MESSAGE_PASSING > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MESSAGE_PASSING) + return _POSIX_MESSAGE_PASSING; + #else + return -1; + #endif + + case _SC_SEMAPHORES: +-#if _POSIX_SEMAPHORES > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SEMAPHORES) + return _POSIX_SEMAPHORES; + #else + return -1; + #endif + + case _SC_SHARED_MEMORY_OBJECTS: +-#if _POSIX_SHARED_MEMORY_OBJECTS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SHARED_MEMORY_OBJECTS) + return _POSIX_SHARED_MEMORY_OBJECTS; + #else + return -1; +@@ -353,49 +355,49 @@ __sysconf (name) + #endif + + case _SC_PII: +-#if _POSIX_PII > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII) + return 1; + #else + return -1; + #endif + + case _SC_PII_XTI: +-#if _POSIX_PII_XTI > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_XTI) + return 1; + #else + return -1; + #endif + + case _SC_PII_SOCKET: +-#if _POSIX_PII_SOCKET > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_SOCKET) + return 1; + #else + return -1; + #endif + + case _SC_PII_INTERNET: +-#if _POSIX_PII_INTERNET > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_INTERNET) + return 1; + #else + return -1; + #endif + + case _SC_PII_OSI: +-#if _POSIX_PII_OSI > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_OSI) + return 1; + #else + return -1; + #endif + + case _SC_POLL: +-#if _POSIX_POLL > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_POLL) + return 1; + #else + return -1; + #endif + + case _SC_SELECT: +-#if _POSIX_SELECT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SELECT) + return 1; + #else + return -1; +@@ -410,35 +412,35 @@ __sysconf (name) + #endif + + case _SC_PII_INTERNET_STREAM: +-#if _POSIX_PII_INTERNET_STREAM > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_INTERNET_STREAM) + return 1; + #else + return -1; + #endif + + case _SC_PII_INTERNET_DGRAM: +-#if _POSIX_PII_INTERNET_DGRAM > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_INTERNET_DGRAM) + return 1; + #else + return -1; + #endif + + case _SC_PII_OSI_COTS: +-#if _POSIX_PII_OSI_COTS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_OSI_COTS) + return 1; + #else + return -1; + #endif + + case _SC_PII_OSI_CLTS: +-#if _POSIX_PII_OSI_CLTS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_OSI_CLTS) + return 1; + #else + return -1; + #endif + + case _SC_PII_OSI_M: +-#if _POSIX_PII_OSI_M > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PII_OSI_M) + return 1; + #else + return -1; +@@ -519,14 +521,14 @@ __sysconf (name) + + /* POSIX 1003.1c (POSIX Threads). */ + case _SC_THREADS: +-#if _POSIX_THREADS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREADS) + return _POSIX_THREADS; + #else + return -1; + #endif + + case _SC_THREAD_SAFE_FUNCTIONS: +-#if _POSIX_THREAD_SAFE_FUNCTIONS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_SAFE_FUNCTIONS) + return _POSIX_THREAD_SAFE_FUNCTIONS; + #else + return -1; +@@ -553,7 +555,7 @@ __sysconf (name) + #endif + + case _SC_THREAD_DESTRUCTOR_ITERATIONS: +-#if _POSIX_THREAD_DESTRUCTOR_ITERATIONS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_DESTRUCTOR_ITERATIONS) + return _POSIX_THREAD_DESTRUCTOR_ITERATIONS; + #else + return -1; +@@ -581,42 +583,42 @@ __sysconf (name) + #endif + + case _SC_THREAD_ATTR_STACKADDR: +-#if _POSIX_THREAD_ATTR_STACKADDR > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_ATTR_STACKADDR) + return _POSIX_THREAD_ATTR_STACKADDR; + #else + return -1; + #endif + + case _SC_THREAD_ATTR_STACKSIZE: +-#if _POSIX_THREAD_ATTR_STACKSIZE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_ATTR_STACKSIZE) + return _POSIX_THREAD_ATTR_STACKSIZE; + #else + return -1; + #endif + + case _SC_THREAD_PRIORITY_SCHEDULING: +-#if _POSIX_THREAD_PRIORITY_SCHEDULING > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_PRIORITY_SCHEDULING) + return _POSIX_THREAD_PRIORITY_SCHEDULING; + #else + return -1; + #endif + + case _SC_THREAD_PRIO_INHERIT: +-#if _POSIX_THREAD_PRIO_INHERIT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_PRIO_INHERIT) + return _POSIX_THREAD_PRIO_INHERIT; + #else + return -1; + #endif + + case _SC_THREAD_PRIO_PROTECT: +-#if _POSIX_THREAD_PRIO_PROTECT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_PRIO_PROTECT) + return _POSIX_THREAD_PRIO_PROTECT; + #else + return -1; + #endif + + case _SC_THREAD_PROCESS_SHARED: +-#if _POSIX_THREAD_PROCESS_SHARED > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_PROCESS_SHARED) + return _POSIX_THREAD_PROCESS_SHARED; + #else + return -1; +@@ -833,152 +835,152 @@ __sysconf (name) + #endif + + case _SC_ADVISORY_INFO: +-#if _POSIX_ADVISORY_INFO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_ADVISORY_INFO) + return _POSIX_ADVISORY_INFO; + #else + return -1; + #endif + + case _SC_BARRIERS: +-#if _POSIX_BARRIERS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_BARRIERS) + return _POSIX_BARRIERS; + #else + return -1; + #endif + + case _SC_BASE: +-#if _POSIX_BASE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_BASE) + return _POSIX_BASE; + #else + return -1; + #endif + case _SC_C_LANG_SUPPORT: +-#if _POSIX_C_LANG_SUPPORT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_C_LANG_SUPPORT) + return _POSIX_C_LANG_SUPPORT; + #else + return -1; + #endif + case _SC_C_LANG_SUPPORT_R: +-#if _POSIX_C_LANG_SUPPORT_R > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_C_LANG_SUPPORT_R) + return _POSIX_C_LANG_SUPPORT_R; + #else + return -1; + #endif + + case _SC_CLOCK_SELECTION: +-#if _POSIX_CLOCK_SELECTION > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_CLOCK_SELECTION) + return _POSIX_CLOCK_SELECTION; + #else + return -1; + #endif + + case _SC_CPUTIME: +-#if _POSIX_CPUTIME > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_CPUTIME) + return _POSIX_CPUTIME; + #else + return -1; + #endif + + case _SC_DEVICE_IO: +-#if _POSIX_DEVICE_IO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_DEVICE_IO) + return _POSIX_DEVICE_IO; + #else + return -1; + #endif + case _SC_DEVICE_SPECIFIC: +-#if _POSIX_DEVICE_SPECIFIC > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_DEVICE_SPECIFIC) + return _POSIX_DEVICE_SPECIFIC; + #else + return -1; + #endif + case _SC_DEVICE_SPECIFIC_R: +-#if _POSIX_DEVICE_SPECIFIC_R > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_DEVICE_SPECIFIC_R) + return _POSIX_DEVICE_SPECIFIC_R; + #else + return -1; + #endif + + case _SC_FD_MGMT: +-#if _POSIX_FD_MGMT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FD_MGMT) + return _POSIX_FD_MGMT; + #else + return -1; + #endif + + case _SC_FIFO: +-#if _POSIX_FIFO > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FIFO) + return _POSIX_FIFO; + #else + return -1; + #endif + case _SC_PIPE: +-#if _POSIX_PIPE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_PIPE) + return _POSIX_PIPE; + #else + return -1; + #endif + + case _SC_FILE_ATTRIBUTES: +-#if _POSIX_FILE_ATTRIBUTES > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FILE_ATTRIBUTES) + return _POSIX_FILE_ATTRIBUTES; + #else + return -1; + #endif + case _SC_FILE_LOCKING: +-#if _POSIX_FILE_LOCKING > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FILE_LOCKING) + return _POSIX_FILE_LOCKING; + #else + return -1; + #endif + case _SC_FILE_SYSTEM: +-#if _POSIX_FILE_SYSTEM > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_FILE_SYSTEM) + return _POSIX_FILE_SYSTEM; + #else + return -1; + #endif + + case _SC_MONOTONIC_CLOCK: +-#if _POSIX_MONOTONIC_CLOCK ++#if CONF_IS_DEFINED_SET (_POSIX_MONOTONIC_CLOCK) + return _POSIX_MONOTONIC_CLOCK; + #else + return -1; + #endif + + case _SC_MULTI_PROCESS: +-#if _POSIX_MULTI_PROCESS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_MULTI_PROCESS) + return _POSIX_MULTI_PROCESS; + #else + return -1; + #endif + case _SC_SINGLE_PROCESS: +-#if _POSIX_SINGLE_PROCESS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SINGLE_PROCESS) + return _POSIX_SINGLE_PROCESS; + #else + return -1; + #endif + + case _SC_NETWORKING: +-#if _POSIX_NETWORKING > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_NETWORKING) + return _POSIX_NETWORKING; + #else + return -1; + #endif + + case _SC_READER_WRITER_LOCKS: +-#if _POSIX_READER_WRITER_LOCKS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_READER_WRITER_LOCKS) + return _POSIX_READER_WRITER_LOCKS; + #else + return -1; + #endif + case _SC_SPIN_LOCKS: +-#if _POSIX_SPIN_LOCKS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SPIN_LOCKS) + return _POSIX_SPIN_LOCKS; + #else + return -1; + #endif + + case _SC_REGEXP: +-#if _POSIX_REGEXP > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_REGEXP) + return _POSIX_REGEXP; + #else + return -1; +@@ -989,81 +991,81 @@ __sysconf (name) + return -1; + + case _SC_SHELL: +-#if _POSIX_SHELL > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SHELL) + return _POSIX_SHELL; + #else + return -1; + #endif + + case _SC_SIGNALS: +-#ifdef _POSIX_SIGNALS ++#if CONF_IS_DEFINED (_POSIX_SIGNALS) + return _POSIX_SIGNALS; + #else + return -1; + #endif + + case _SC_SPAWN: +-#if _POSIX_SPAWN > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SPAWN) + return _POSIX_SPAWN; + #else + return -1; + #endif + + case _SC_SPORADIC_SERVER: +-#if _POSIX_SPORADIC_SERVER > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SPORADIC_SERVER) + return _POSIX_SPORADIC_SERVER; + #else + return -1; + #endif + case _SC_THREAD_SPORADIC_SERVER: +-#if _POSIX_THREAD_SPORADIC_SERVER > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_SPORADIC_SERVER) + return _POSIX_THREAD_SPORADIC_SERVER; + #else + return -1; + #endif + + case _SC_SYSTEM_DATABASE: +-#if _POSIX_SYSTEM_DATABASE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SYSTEM_DATABASE) + return _POSIX_SYSTEM_DATABASE; + #else + return -1; + #endif + case _SC_SYSTEM_DATABASE_R: +-#if _POSIX_SYSTEM_DATABASE_R > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_SYSTEM_DATABASE_R) + return _POSIX_SYSTEM_DATABASE_R; + #else + return -1; + #endif + + case _SC_THREAD_CPUTIME: +-#if _POSIX_THREAD_CPUTIME > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_THREAD_CPUTIME) + return _POSIX_THREAD_CPUTIME; + #else + return -1; + #endif + + case _SC_TIMEOUTS: +-#if _POSIX_TIMEOUTS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TIMEOUTS) + return _POSIX_TIMEOUTS; + #else + return -1; + #endif + + case _SC_TYPED_MEMORY_OBJECTS: +-#if _POSIX_TYPED_MEMORY_OBJECTS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TYPED_MEMORY_OBJECTS) + return _POSIX_TYPED_MEMORY_OBJECTS; + #else + return -1; + #endif + + case _SC_USER_GROUPS: +-#if _POSIX_USER_GROUPS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_USER_GROUPS) + return _POSIX_USER_GROUPS; + #else + return -1; + #endif + case _SC_USER_GROUPS_R: +-#if _POSIX_USER_GROUPS_R > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_USER_GROUPS_R) + return _POSIX_USER_GROUPS_R; + #else + return -1; +@@ -1128,25 +1130,25 @@ __sysconf (name) + #endif + + case _SC_TRACE: +-#if _POSIX_TRACE > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TRACE) + return _POSIX_TRACE; + #else + return -1; + #endif + case _SC_TRACE_EVENT_FILTER: +-#if _POSIX_TRACE_EVENT_FILTER > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TRACE_EVENT_FILTER) + return _POSIX_TRACE_EVENT_FILTER; + #else + return -1; + #endif + case _SC_TRACE_INHERIT: +-#if _POSIX_TRACE_INHERIT > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TRACE_INHERIT) + return _POSIX_TRACE_INHERIT; + #else + return -1; + #endif + case _SC_TRACE_LOG: +-#if _POSIX_TRACE_LOG > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_TRACE_LOG) + return _POSIX_TRACE_LOG; + #else + return -1; +@@ -1183,14 +1185,14 @@ __sysconf (name) + return 0; + + case _SC_IPV6: +-#if _POSIX_IPV6 > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_IPV6) + return _POSIX_IPV6; + #else + return -1; + #endif + + case _SC_RAW_SOCKETS: +-#if _POSIX_RAW_SOCKETS > 0 ++#if CONF_IS_DEFINED_SET (_POSIX_RAW_SOCKETS) + return _POSIX_RAW_SOCKETS; + #else + return -1; diff --git a/SOURCES/glibc-rh1505492-undef-51.patch b/SOURCES/glibc-rh1505492-undef-51.patch new file mode 100644 index 0000000..99c7667 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-51.patch @@ -0,0 +1,184 @@ +commit 50cbbaa935e92dc570fc899a17669cd6782b09cd +Author: Siddhesh Poyarekar +Date: Mon Dec 29 17:40:47 2014 +0530 + + Use posix-conf-vars.list to generate spec array + + This patch adds support to generate the spec array in getconf from the + conf.list. The generated code is mostly unchanged. the only changes + are due to the change in layout of the spec and val arrays in the ELF. + + The val array can also be auto-generated from posix-conf-vars.list + once the remaining macros are added to it. + + * posix/posix-conf-vars.list (SPEC:XBS5): Add sysconf prefix. + * posix/confstr.c: Define NEED_SPEC_ARRAY to 0. + * posix/posix-envs.def: Likewise. + * sysdeps/posix/sysconf.c: Likewise. + * posix/getconf.c: Define NEED_SPEC_ARRAY to 1. + (specs): Remove array. + * scripts/gen-posix-conf-vars.awk: Support generation of specs + array. + +diff --git a/posix/confstr.c b/posix/confstr.c +index 5b03986a3678e007..0233ea94707ee627 100644 +--- a/posix/confstr.c ++++ b/posix/confstr.c +@@ -21,6 +21,8 @@ + #include + #include + #include "../version.h" ++ ++#define NEED_SPEC_ARRAY 0 + #include + + /* If BUF is not NULL and LEN > 0, fill in at most LEN - 1 bytes +diff --git a/posix/getconf.c b/posix/getconf.c +index 9cb8f29be28466ff..bd844dead16e9400 100644 +--- a/posix/getconf.c ++++ b/posix/getconf.c +@@ -26,6 +26,9 @@ + #include "../version.h" + #define PACKAGE _libc_intl_domainname + ++#define NEED_SPEC_ARRAY 1 ++#include ++ + struct conf + { + const char *name; +@@ -1008,23 +1011,6 @@ static const struct conf vars[] = + }; + + +-static const struct { const char *name; int num; } specs[] = +- { +- { "XBS5_ILP32_OFF32", _SC_XBS5_ILP32_OFF32 }, +- { "XBS5_ILP32_OFFBIG", _SC_XBS5_ILP32_OFFBIG }, +- { "XBS5_LP64_OFF64", _SC_XBS5_LP64_OFF64 }, +- { "XBS5_LPBIG_OFFBIG", _SC_XBS5_LPBIG_OFFBIG }, +- { "POSIX_V6_ILP32_OFF32", _SC_V6_ILP32_OFF32 }, +- { "POSIX_V6_ILP32_OFFBIG", _SC_V6_ILP32_OFFBIG }, +- { "POSIX_V6_LP64_OFF64", _SC_V6_LP64_OFF64 }, +- { "POSIX_V6_LPBIG_OFFBIG", _SC_V6_LPBIG_OFFBIG }, +- { "POSIX_V7_ILP32_OFF32", _SC_V7_ILP32_OFF32 }, +- { "POSIX_V7_ILP32_OFFBIG", _SC_V7_ILP32_OFFBIG }, +- { "POSIX_V7_LP64_OFF64", _SC_V7_LP64_OFF64 }, +- { "POSIX_V7_LPBIG_OFFBIG", _SC_V7_LPBIG_OFFBIG }, +- }; +-static const int nspecs = sizeof (specs) / sizeof (specs[0]); +- + extern const char *__progname; + + +diff --git a/posix/posix-conf-vars.list b/posix/posix-conf-vars.list +index 3e7e7cdaa9c46c85..601bc2fd33f72f27 100644 +--- a/posix/posix-conf-vars.list ++++ b/posix/posix-conf-vars.list +@@ -1,7 +1,8 @@ + # Configuration variables identified by getconf. The heading of each section +-# is of the format TYPE PREFIX with the opening curly brace on the same line. +-# TYPE can either be SYSCONF, PATHCONF, CONFSTR or SPEC. Variable names are +-# put one on each line with a curly brace on its own line ending the section. ++# is of the format TYPE PREFIX SC_PREFIX with the opening curly brace on the ++# same line. TYPE can either be SYSCONF, PATHCONF, CONFSTR or SPEC. In the ++# absence of SC_PREFIX, _SC is used as the SC_PREFIX. Variable names are put ++# one on each line with a curly brace on its own line ending the section. + + SPEC POSIX { + V6_ILP32_OFF32 +@@ -104,7 +105,7 @@ SYSCONF POSIX { + RAW_SOCKETS + } + +-SPEC XBS5 { ++SPEC XBS5 _SC_XBS5 { + ILP32_OFF32 + ILP32_OFFBIG + LP64_OFF64 +diff --git a/posix/posix-envs.def b/posix/posix-envs.def +index e820e6dbe3fa3b61..428dbc23ceb7f64c 100644 +--- a/posix/posix-envs.def ++++ b/posix/posix-envs.def +@@ -42,6 +42,7 @@ + defined. These are called with arguments V5, V6, V7 before and + after the relevant groups of environments. */ + ++#define NEED_SPEC_ARRAY 0 + #include + + START_ENV_GROUP (V7) +diff --git a/scripts/gen-posix-conf-vars.awk b/scripts/gen-posix-conf-vars.awk +index 16e20fc1007bd2f5..0eca55d536bd7f70 100644 +--- a/scripts/gen-posix-conf-vars.awk ++++ b/scripts/gen-posix-conf-vars.awk +@@ -15,12 +15,19 @@ $1 ~ /^#/ || $0 ~ /^\s*$/ { + $NF == "{" { + type = $1 + prefix = $2 ++ ++ if (NF == 4) ++ sc_prefix = $3 ++ else ++ sc_prefix = "_SC" ++ + next + } + + $1 == "}" { + prefix = "" + type = "" ++ sc_prefix = "" + next + } + +@@ -35,6 +42,7 @@ $1 == "}" { + # CONFSTR: A configuration string + # SYSCONF: A numeric value + # SPEC: A specification ++ sc_prefixes[prefix][$1] = sc_prefix + conf[prefix][$1] = type + } + +@@ -56,6 +64,26 @@ END { + printf "# endif\n" + } + printf "#endif\n\n" ++ ++ # Build a name -> sysconf number associative array to print a C array at ++ # the end. ++ if (conf[p][c] == "SPEC") { ++ name = sprintf ("%s_%s", p, c) ++ num = sprintf ("%s_%s", sc_prefixes[p][c], c) ++ spec[name] = num ++ } + } + } ++ ++ # Print the specification array. Define the macro NEED_SPEC_ARRAY before ++ # including posix-conf-vars.h to make it available in the compilation unit. ++ print "#if NEED_SPEC_ARRAY" ++ print "static const struct { const char *name; int num; } specs[] =" ++ print " {" ++ for (s in spec) { ++ printf " { \"%s\", %s },\n", s, spec[s] ++ } ++ print " };" ++ print "static const int nspecs = sizeof (specs) / sizeof (specs[0]);" ++ print "#endif" + } +diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c +index 1e9d4e099e94981c..88aa151422dc56f9 100644 +--- a/sysdeps/posix/sysconf.c ++++ b/sysdeps/posix/sysconf.c +@@ -31,9 +31,9 @@ + #include + #include + ++#define NEED_SPEC_ARRAY 0 + #include + +- + #define NEED_CHECK_SPEC \ + (!defined _XBS5_ILP32_OFF32 || !defined _XBS5_ILP32_OFFBIG \ + || !defined _XBS5_LP64_OFF64 || !defined _XBS5_LPBIG_OFFBIG \ diff --git a/SOURCES/glibc-rh1505492-undef-52.patch b/SOURCES/glibc-rh1505492-undef-52.patch new file mode 100644 index 0000000..f9d30cb --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-52.patch @@ -0,0 +1,24 @@ +commit 6d6d7fde04c8ef830205a9900bf101597a2f4b18 +Author: Chris Metcalf +Date: Mon Dec 29 23:14:38 2014 -0500 + + Fix a couple of -Wundef warnings. + +Conflicts: + sysdeps/unix/sysv/linux/tst-setgetname.c + +File removed manually; this test does not exist in our tree. + +diff --git a/stdlib/tst-limits.c b/stdlib/tst-limits.c +index 6e51dcadb5baaabb..9aabc360f6b8c3f7 100644 +--- a/stdlib/tst-limits.c ++++ b/stdlib/tst-limits.c +@@ -58,7 +58,7 @@ do_test (void) + /* Values from POSIX and Unix. */ + #ifdef PAGESIZE + TEST (PAGESIZE, "d", getpagesize ()); +-#elif PAGE_SIZE ++#elif defined (PAGE_SIZE) + TEST (PAGE_SIZE, "d", getpagesize ()); + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-53.patch b/SOURCES/glibc-rh1505492-undef-53.patch new file mode 100644 index 0000000..3e84a83 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-53.patch @@ -0,0 +1,29 @@ +commit 182d6096fe76b3d63b1151090cd07e60eca39302 +Author: Mike Frysinger +Date: Wed Jul 29 11:35:37 2015 -0400 + + mmap64: fix undef warnings + + The only target that defines this is m68k, so move the existing fallback + define up to avoid warnings on other systems. + +diff --git a/sysdeps/unix/sysv/linux/mmap64.c b/sysdeps/unix/sysv/linux/mmap64.c +index 2c8304d860f19d58..fcaa6be1f41b3ffd 100644 +--- a/sysdeps/unix/sysv/linux/mmap64.c ++++ b/sysdeps/unix/sysv/linux/mmap64.c +@@ -26,12 +26,12 @@ + #include + + /* This is always 12, even on architectures where PAGE_SHIFT != 12. */ ++#ifndef MMAP2_PAGE_SHIFT ++# define MMAP2_PAGE_SHIFT 12 ++#endif + #if MMAP2_PAGE_SHIFT == -1 + static int page_shift; + #else +-# ifndef MMAP2_PAGE_SHIFT +-# define MMAP2_PAGE_SHIFT 12 +-# endif + #define page_shift MMAP2_PAGE_SHIFT + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-54.patch b/SOURCES/glibc-rh1505492-undef-54.patch new file mode 100644 index 0000000..0c95056 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-54.patch @@ -0,0 +1,77 @@ +commit ccb729df47188874401c655dda8d47b55cddd3b7 +Author: Joseph Myers +Date: Wed Aug 19 00:50:17 2015 +0000 + + Fix -Wundef warnings in login/tst-utmp.c. + + To remove -Wno-error=undef, we need to fix the remaining cases where + there are -Wundef warnings in the testsuite. One of those places is + in login/tst-utmp.c. + + When included from tst-utmpx.c, is included instead of + , meaning the _HAVE_UT_* macros are not defined. The test is + prepared for them not being defined, in that all the relevant + conditionals also include "defined UTMPX". However, they test the + _HAVE_UT_* macros first, so resulting in -Wundef warnings. + + This patch does the minimal fix of swapping the || operands. This is + logically correct - avoiding checking a macro we know will not be + defined in the case where it is not defined. It won't fix such + warnings for the case where the toplevel bits/utmp.h is used and most + _HAVE_UT_* aren't defined at all even when is included, but + that case doesn't apply to any current glibc configuration. Fixing it + would also be tricky in that, while glibc itself consistently uses + _HAVE_UT_* in ways that would work with 0 instead of undefined, + external packages that use the macros expect defined / undefined + instead of 1 / 0 (codesearch.debian.net shows uses by util-linux, + python-utmp, libsys-utmp-perl). + + Tested for x86_64. + + * login/tst-utmp.c [_HAVE_UT_TYPE || defined UTMPX]: Change + conditional to [defined UTMPX || _HAVE_UT_TYPE]. + [_HAVE_UT_TV || defined UTMPX]: Change conditional to [defined + UTMPX || _HAVE_UT_TV]. + [_HAVE_UT_TV - 0 || defined UTMPX]: Change conditional to [defined + UTMPX || _HAVE_UT_TV - 0]. + +diff --git a/login/tst-utmp.c b/login/tst-utmp.c +index 7cc39cb2b7ff2dba..84945934e249ca25 100644 +--- a/login/tst-utmp.c ++++ b/login/tst-utmp.c +@@ -39,7 +39,7 @@ + #endif + + +-#if _HAVE_UT_TYPE || defined UTMPX ++#if defined UTMPX || _HAVE_UT_TYPE + + /* Prototype for our test function. */ + static int do_test (int argc, char *argv[]); +@@ -75,7 +75,7 @@ do_prepare (int argc, char *argv[]) + + struct utmp entry[] = + { +-#if _HAVE_UT_TV || defined UTMPX ++#if defined UTMPX || _HAVE_UT_TV + #define UT(a) .ut_tv = { .tv_sec = (a)} + #else + #define UT(a) .ut_time = (a) +@@ -167,7 +167,7 @@ simulate_login (const char *line, const char *user) + entry[n].ut_pid = (entry_pid += 27); + entry[n].ut_type = USER_PROCESS; + strncpy (entry[n].ut_user, user, sizeof (entry[n].ut_user)); +-#if _HAVE_UT_TV - 0 || defined UTMPX ++#if defined UTMPX || _HAVE_UT_TV - 0 + entry[n].ut_tv.tv_sec = (entry_time += 1000); + #else + entry[n].ut_time = (entry_time += 1000); +@@ -201,7 +201,7 @@ simulate_logout (const char *line) + { + entry[n].ut_type = DEAD_PROCESS; + strncpy (entry[n].ut_user, "", sizeof (entry[n].ut_user)); +-#if _HAVE_UT_TV - 0 || defined UTMPX ++#if defined UTMPX || _HAVE_UT_TV - 0 + entry[n].ut_tv.tv_sec = (entry_time += 1000); + #else + entry[n].ut_time = (entry_time += 1000); diff --git a/SOURCES/glibc-rh1505492-undef-55.patch b/SOURCES/glibc-rh1505492-undef-55.patch new file mode 100644 index 0000000..c06614e --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-55.patch @@ -0,0 +1,38 @@ +commit 9536661c6e8045f810cd227a7d676eaff19bf1b8 +Author: Joseph Myers +Date: Wed Aug 19 00:51:07 2015 +0000 + + Fix -Wundef warnings in elf/tst-execstack.c. + + To remove -Wno-error=undef, we need to fix the remaining cases where + there are -Wundef warnings in the testsuite. One of those places is + in elf/tst-execstack.c. + + tst-execstack.c tests USE_PTHREADS with #if. nptl/tst-execstack.c + defines USE_PTHREADS to 1 before including ../elf/tst-execstack.c, + while elf/tst-execstack.c, when compiled directly, leaves it + undefined. + + This patch adds a setting of CPPFLAGS-tst-execstack.c to + elf/Makefile. An alternative approach would be to rename + tst-execstack.c to tst-execstack-main.c and have two different + tst-execstack.c files include it, each with an appropriate + USE_PTHREADS #define. + + Tested for x86_64. + + * elf/Makefile [$(have-z-execstack) = yes] + (CPPFLAGS-tst-execstack.c): New variable. + +diff --git a/elf/Makefile b/elf/Makefile +index 862e04eb484fa3f5..dea66ca1c12e5c29 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -866,6 +866,7 @@ endif + ifeq ($(have-z-execstack),yes) + $(objpfx)tst-execstack: $(libdl) + $(objpfx)tst-execstack.out: $(objpfx)tst-execstack-mod.so ++CPPFLAGS-tst-execstack.c = -DUSE_PTHREADS=0 + LDFLAGS-tst-execstack = -Wl,-z,noexecstack + LDFLAGS-tst-execstack-mod = -Wl,-z,execstack + diff --git a/SOURCES/glibc-rh1505492-undef-56.patch b/SOURCES/glibc-rh1505492-undef-56.patch new file mode 100644 index 0000000..d265c34 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-56.patch @@ -0,0 +1,123 @@ +commit 37f8abad1c7b274e66eaf2d04684bd8a7ba0bcef +Author: Adhemerval Zanella +Date: Mon Jan 30 18:07:32 2017 -0200 + + nptl: Remove COLORING_INCREMENT + + This patch removes the COLORING_INCREMENT define and usage on allocatestack.c. + It has not been used since 564cd8b67ec487f (glibc-2.3.3) by any architecture. + The idea is to simplify the code by removing obsolete code. + + * nptl/allocatestack.c [COLORING_INCREMENT] (nptl_ncreated): Remove. + (allocate_stack): Remove COLORING_INCREMENT usage. + * nptl/stack-aliasing.h (COLORING_INCREMENT). Likewise. + * sysdeps/i386/i686/stack-aliasing.h (COLORING_INCREMENT): Likewise. + +Conflicts: + nptl/allocatestack.c + +Textual conflict due to missing backport of commit +a1ffb40e32741f992c743e7b16c061fefa3747ac (Use glibc_likely instead +__builtin_expect.). + +diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c +index 0fba6ce3474e8b35..00f9dcffe721a6b3 100644 +--- a/nptl/allocatestack.c ++++ b/nptl/allocatestack.c +@@ -124,11 +124,6 @@ static uintptr_t in_flight_stack; + list_t __stack_user __attribute__ ((nocommon)); + hidden_data_def (__stack_user) + +-#if COLORING_INCREMENT != 0 +-/* Number of threads created. */ +-static unsigned int nptl_ncreated; +-#endif +- + + /* Check whether the stack is still used or not. */ + #define FREE_P(descr) ((descr)->tid <= 0) +@@ -456,14 +451,6 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, + const int prot = (PROT_READ | PROT_WRITE + | ((GL(dl_stack_flags) & PF_X) ? PROT_EXEC : 0)); + +-#if COLORING_INCREMENT != 0 +- /* Add one more page for stack coloring. Don't do it for stacks +- with 16 times pagesize or larger. This might just cause +- unnecessary misalignment. */ +- if (size <= 16 * pagesize_m1) +- size += pagesize_m1 + 1; +-#endif +- + /* Adjust the stack size for alignment. */ + size &= ~__static_tls_align_m1; + assert (size != 0); +@@ -506,34 +493,11 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, + So we can never get a null pointer back from mmap. */ + assert (mem != NULL); + +-#if COLORING_INCREMENT != 0 +- /* Atomically increment NCREATED. */ +- unsigned int ncreated = atomic_increment_val (&nptl_ncreated); +- +- /* We chose the offset for coloring by incrementing it for +- every new thread by a fixed amount. The offset used +- module the page size. Even if coloring would be better +- relative to higher alignment values it makes no sense to +- do it since the mmap() interface does not allow us to +- specify any alignment for the returned memory block. */ +- size_t coloring = (ncreated * COLORING_INCREMENT) & pagesize_m1; +- +- /* Make sure the coloring offsets does not disturb the alignment +- of the TCB and static TLS block. */ +- if (__builtin_expect ((coloring & __static_tls_align_m1) != 0, 0)) +- coloring = (((coloring + __static_tls_align_m1) +- & ~(__static_tls_align_m1)) +- & ~pagesize_m1); +-#else +- /* Unless specified we do not make any adjustments. */ +-# define coloring 0 +-#endif +- + /* Place the thread descriptor at the end of the stack. */ + #if TLS_TCB_AT_TP +- pd = (struct pthread *) ((char *) mem + size - coloring) - 1; ++ pd = (struct pthread *) ((char *) mem + size) - 1; + #elif TLS_DTV_AT_TP +- pd = (struct pthread *) ((((uintptr_t) mem + size - coloring ++ pd = (struct pthread *) ((((uintptr_t) mem + size + - __static_tls_size) + & ~__static_tls_align_m1) + - TLS_PRE_TCB_SIZE); +diff --git a/nptl/stack-aliasing.h b/nptl/stack-aliasing.h +index 526b54e18f7e0a27..62fdc9265e0038e6 100644 +--- a/nptl/stack-aliasing.h ++++ b/nptl/stack-aliasing.h +@@ -16,12 +16,6 @@ + License along with the GNU C Library; if not, see + . */ + +-/* This is a number of bytes (less than a page) by which to "color" the +- starting stack address of new threads. This number is multiplied by the +- number of threads created so far and then truncated modulo page size, +- to get a roughly even distribution of values for different threads. */ +-#define COLORING_INCREMENT 0 +- + /* This is a number of bytes that is an alignment that should be avoided + when choosing the exact size of a new thread's stack. If the size + chosen is aligned to this, an extra page will be added to render the +diff --git a/sysdeps/i386/i686/stack-aliasing.h b/sysdeps/i386/i686/stack-aliasing.h +index 1e35ceb2061d60f9..d73e45461f928a6a 100644 +--- a/sysdeps/i386/i686/stack-aliasing.h ++++ b/sysdeps/i386/i686/stack-aliasing.h +@@ -16,11 +16,6 @@ + License along with the GNU C Library; if not, see + . */ + +-/* It turns out that stack coloring is in general not good on P4s. Some +- applications will benefit. We will probably have a configuration option +- at some point. To enable coloring, set this to 128. */ +-#define COLORING_INCREMENT 0 +- + /* What is useful is to avoid the 64k aliasing problem which reliably + happens if all stacks use sizes which are a multiple of 64k. Tell + the stack allocator to disturb this by allocation one more page if diff --git a/SOURCES/glibc-rh1505492-undef-6.patch b/SOURCES/glibc-rh1505492-undef-6.patch new file mode 100644 index 0000000..8a93815 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-6.patch @@ -0,0 +1,20 @@ +commit 9a80491d4931c9bc0f65887b7f67346f866cf1b9 +Author: Andreas Schwab +Date: Fri Feb 21 11:32:19 2014 +0100 + + Add GLIBC_2.17 to librt in Version.def + + This is needed because the version is used in SHLIB_COMPAT. + +diff --git a/Versions.def b/Versions.def +index 725f5d827ba3ec94..05a94373c6ecfe61 100644 +--- a/Versions.def ++++ b/Versions.def +@@ -121,6 +121,7 @@ librt { + GLIBC_2.3.4 + GLIBC_2.4 + GLIBC_2.7 ++ GLIBC_2.17 + } + libutil { + GLIBC_2.0 diff --git a/SOURCES/glibc-rh1505492-undef-7.patch b/SOURCES/glibc-rh1505492-undef-7.patch new file mode 100644 index 0000000..17b1899 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-7.patch @@ -0,0 +1,32 @@ +commit d7329d4b4d297b5638aef7fc4d5eaf9ad7845d7a +Author: Roland McGrath +Date: Fri Mar 14 10:46:38 2014 -0700 + + Fix two stray cases using #ifdef vs #if for TLS_TCB_AT_TP. + +diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c +index 9f2016c19f0c8248..1083d6faacca5ab6 100644 +--- a/nptl/pthread_create.c ++++ b/nptl/pthread_create.c +@@ -460,7 +460,7 @@ __pthread_create_2_1 (newthread, attr, start_routine, arg) + performed in 'get_cached_stack'. This way we avoid doing this if + the stack freshly allocated with 'mmap'. */ + +-#ifdef TLS_TCB_AT_TP ++#if TLS_TCB_AT_TP + /* Reference to the TCB itself. */ + pd->header.self = pd; + +diff --git a/nptl/sysdeps/pthread/createthread.c b/nptl/sysdeps/pthread/createthread.c +index e8e10dcf73ed382d..baa12eb26c80e465 100644 +--- a/nptl/sysdeps/pthread/createthread.c ++++ b/nptl/sysdeps/pthread/createthread.c +@@ -146,7 +146,7 @@ static int + create_thread (struct pthread *pd, const struct pthread_attr *attr, + STACK_VARIABLES_PARMS) + { +-#ifdef TLS_TCB_AT_TP ++#if TLS_TCB_AT_TP + assert (pd->header.tcb != NULL); + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-8.patch b/SOURCES/glibc-rh1505492-undef-8.patch new file mode 100644 index 0000000..93dabb6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-8.patch @@ -0,0 +1,329 @@ +commit 498a22333b835a598ccaed4656e97a0ec3573665 +Author: Roland McGrath +Date: Fri Mar 14 10:44:34 2014 -0700 + + Compile with -Wundef. + +Conflicts: + Makeconfig + (Textual conflict due to glibc-rh1418978-2-6.patch.) + sysdeps/microblaze/nptl/tls.h + (Our tree does not have a microblaze port, removed manually.) + +diff --git a/Makeconfig b/Makeconfig +index f23fd93febdf4a86..02f1cc1255c5ac07 100644 +--- a/Makeconfig ++++ b/Makeconfig +@@ -643,6 +643,7 @@ ifeq ($(all-warnings),yes) + else + +gccwarn := -Wall -Wwrite-strings -Winline + endif +++gccwarn += -Wundef + +gccwarn-c = -Wstrict-prototypes -Werror=implicit-function-declaration + + # We do not depend on the address of constants in different files to be +diff --git a/include/errno.h b/include/errno.h +index d26a9ee3ff320e3a..7df41dfc3166ef90 100644 +--- a/include/errno.h ++++ b/include/errno.h +@@ -6,6 +6,11 @@ + + # if IS_IN (rtld) + # include ++# ifndef RTLD_PRIVATE_ERRNO ++# error "dl-sysdep.h must define RTLD_PRIVATE_ERRNO!" ++# endif ++# else ++# define RTLD_PRIVATE_ERRNO 0 + # endif + + # if RTLD_PRIVATE_ERRNO +diff --git a/include/stackinfo.h b/include/stackinfo.h +new file mode 100644 +index 0000000000000000..b9b227848753ceb8 +--- /dev/null ++++ b/include/stackinfo.h +@@ -0,0 +1,42 @@ ++/* Details about the machine's stack: wrapper header. ++ Copyright (C) 2014 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#ifndef _INCLUDE_STACKINFO_H ++#define _INCLUDE_STACKINFO_H 1 ++ ++/* A sysdeps/.../stackinfo.h file defines details for the CPU. ++ It is obliged to define either _STACK_GROWS_DOWN or _STACK_GROWS_UP. */ ++#include_next ++ ++#if defined _STACK_GROWS_DOWN && _STACK_GROWS_DOWN ++# ifdef _STACK_GROWS_UP ++# error "stackinfo.h should not define both!" ++# else ++# define _STACK_GROWS_UP 0 ++# endif ++#elif defined _STACK_GROWS_UP && _STACK_GROWS_UP ++# ifdef _STACK_GROWS_DOWN ++# error "stackinfo.h should not define both!" ++# else ++# define _STACK_GROWS_DOWN 0 ++# endif ++#else ++# error "stackinfo.h must define _STACK_GROWS_UP or _STACK_GROWS_DOWN!" ++#endif ++ ++#endif /* include/stackinfo.h */ +diff --git a/nptl/sysdeps/i386/tls.h b/nptl/sysdeps/i386/tls.h +index 90c7a534bfd0ed16..55877d71d2051d4c 100644 +--- a/nptl/sysdeps/i386/tls.h ++++ b/nptl/sysdeps/i386/tls.h +@@ -102,9 +102,6 @@ union user_desc_init + }; + + +-/* Get the thread descriptor definition. */ +-# include +- + /* This is the size of the initial TCB. Can't be just sizeof (tcbhead_t), + because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole + struct pthread even when not linked with -lpthread. */ +@@ -122,6 +119,10 @@ union user_desc_init + /* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ + # define TLS_TCB_AT_TP 1 ++# define TLS_DTV_AT_TP 0 ++ ++/* Get the thread descriptor definition. */ ++# include + + + /* Install the dtv pointer. The pointer passed is to the element with +diff --git a/nptl/sysdeps/powerpc/tls.h b/nptl/sysdeps/powerpc/tls.h +index 33efc7aea638f138..a04dfa89aa1ec73c 100644 +--- a/nptl/sysdeps/powerpc/tls.h ++++ b/nptl/sysdeps/powerpc/tls.h +@@ -49,6 +49,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* We use the multiple_threads field in the pthread struct */ + #define TLS_MULTIPLE_THREADS_IN_TCB 1 +@@ -56,6 +57,7 @@ typedef union dtv + /* Get the thread descriptor definition. */ + # include + ++ + /* The stack_guard is accessed directly by GCC -fstack-protector code, + so it is a part of public ABI. The dtv and pointer_guard fields + are private. */ +diff --git a/nptl/sysdeps/s390/tls.h b/nptl/sysdeps/s390/tls.h +index 4b1ce051c4a87652..580196b7bfee3046 100644 +--- a/nptl/sysdeps/s390/tls.h ++++ b/nptl/sysdeps/s390/tls.h +@@ -73,9 +73,6 @@ typedef struct + /* Get system call information. */ + # include + +-/* Get the thread descriptor definition. */ +-# include +- + /* This is the size of the initial TCB. Can't be just sizeof (tcbhead_t), + because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole + struct pthread even when not linked with -lpthread. */ +@@ -93,6 +90,10 @@ typedef struct + /* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ + # define TLS_TCB_AT_TP 1 ++# define TLS_DTV_AT_TP 0 ++ ++/* Get the thread descriptor definition. */ ++# include + + + /* Install the dtv pointer. The pointer passed is to the element with +diff --git a/nptl/sysdeps/sh/tls.h b/nptl/sysdeps/sh/tls.h +index a7f53dfecf0ca6d6..4659af51c0be7595 100644 +--- a/nptl/sysdeps/sh/tls.h ++++ b/nptl/sysdeps/sh/tls.h +@@ -76,6 +76,7 @@ typedef struct + + /* The TLS blocks start right after the TCB. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/nptl/sysdeps/sparc/tls.h b/nptl/sysdeps/sparc/tls.h +index cfc9d96c67027caf..2ef0d4e1012259ad 100644 +--- a/nptl/sysdeps/sparc/tls.h ++++ b/nptl/sysdeps/sparc/tls.h +@@ -69,9 +69,6 @@ typedef struct + /* Get system call information. */ + # include + +-/* Get the thread descriptor definition. */ +-# include +- + register struct pthread *__thread_self __asm__("%g7"); + + /* This is the size of the initial TCB. Can't be just sizeof (tcbhead_t), +@@ -91,6 +88,10 @@ register struct pthread *__thread_self __asm__("%g7"); + /* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ + # define TLS_TCB_AT_TP 1 ++# define TLS_DTV_AT_TP 0 ++ ++/* Get the thread descriptor definition. */ ++# include + + /* Install the dtv pointer. The pointer passed is to the element with + index -1 which contain the length. */ +diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h +index cfba4e142ac5dae8..37e9af71b80d18b0 100644 +--- a/nptl/sysdeps/x86_64/tls.h ++++ b/nptl/sysdeps/x86_64/tls.h +@@ -91,10 +91,6 @@ typedef struct + /* Get system call information. */ + # include + +- +-/* Get the thread descriptor definition. */ +-# include +- + #ifndef LOCK_PREFIX + # ifdef UP + # define LOCK_PREFIX /* nothing */ +@@ -120,6 +116,10 @@ typedef struct + /* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ + # define TLS_TCB_AT_TP 1 ++# define TLS_DTV_AT_TP 0 ++ ++/* Get the thread descriptor definition. */ ++# include + + + /* Install the dtv pointer. The pointer passed is to the element with +diff --git a/ports/sysdeps/hppa/nptl/tls.h b/ports/sysdeps/hppa/nptl/tls.h +index 5eb55a53603bb31e..be14fe6599c9f41b 100644 +--- a/ports/sysdeps/hppa/nptl/tls.h ++++ b/ports/sysdeps/hppa/nptl/tls.h +@@ -51,6 +51,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/aarch64/nptl/tls.h b/sysdeps/aarch64/nptl/tls.h +index 05135db57ab69ef6..e08ff732efcc4fa2 100644 +--- a/sysdeps/aarch64/nptl/tls.h ++++ b/sysdeps/aarch64/nptl/tls.h +@@ -48,6 +48,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/alpha/nptl/tls.h b/sysdeps/alpha/nptl/tls.h +index 18c29c80fa369e35..f593ba7162954e99 100644 +--- a/sysdeps/alpha/nptl/tls.h ++++ b/sysdeps/alpha/nptl/tls.h +@@ -42,6 +42,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/arm/nptl/tls.h b/sysdeps/arm/nptl/tls.h +index 52f695e58b22b406..00b1e53c33064a2e 100644 +--- a/sysdeps/arm/nptl/tls.h ++++ b/sysdeps/arm/nptl/tls.h +@@ -49,6 +49,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/ia64/nptl/tls.h b/sysdeps/ia64/nptl/tls.h +index 77574e55db890043..f270f958bcfc53de 100644 +--- a/sysdeps/ia64/nptl/tls.h ++++ b/sysdeps/ia64/nptl/tls.h +@@ -87,6 +87,7 @@ register struct pthread *__thread_self __asm__("r13"); + + /* The DTV is allocated at the TP; the TCB is placed elsewhere. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/m68k/nptl/tls.h b/sysdeps/m68k/nptl/tls.h +index 8b0909237b303695..7f4bbfb9162dd610 100644 +--- a/sysdeps/m68k/nptl/tls.h ++++ b/sysdeps/m68k/nptl/tls.h +@@ -49,6 +49,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h +index d0a72f0e5c032820..8619820d3b0502b5 100644 +--- a/sysdeps/mach/hurd/i386/tls.h ++++ b/sysdeps/mach/hurd/i386/tls.h +@@ -26,6 +26,7 @@ + /* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ + #define TLS_TCB_AT_TP 1 ++#define TLS_DTV_AT_TP 0 + + #ifndef __ASSEMBLER__ + +diff --git a/sysdeps/mips/nptl/tls.h b/sysdeps/mips/nptl/tls.h +index 8a97437bad4752c4..669a79c0c64cb566 100644 +--- a/sysdeps/mips/nptl/tls.h ++++ b/sysdeps/mips/nptl/tls.h +@@ -62,6 +62,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* Get the thread descriptor definition. */ + # include +diff --git a/sysdeps/tile/nptl/tls.h b/sysdeps/tile/nptl/tls.h +index 303a95e000fee30f..132de9021e5651f0 100644 +--- a/sysdeps/tile/nptl/tls.h ++++ b/sysdeps/tile/nptl/tls.h +@@ -49,6 +49,7 @@ typedef union dtv + + /* The TP points to the start of the thread blocks. */ + # define TLS_DTV_AT_TP 1 ++# define TLS_TCB_AT_TP 0 + + /* We use the multiple_threads field in the pthread struct */ + #define TLS_MULTIPLE_THREADS_IN_TCB 1 diff --git a/SOURCES/glibc-rh1505492-undef-9.patch b/SOURCES/glibc-rh1505492-undef-9.patch new file mode 100644 index 0000000..78f8a48 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-9.patch @@ -0,0 +1,32 @@ +commit fcd89ebe4f5ea948ff4c796771b918cde8960721 +Author: Siddhesh Poyarekar +Date: Mon Mar 17 19:31:46 2014 +0530 + + Get rid of __LT_SPINLOCK_INIT + + We got rid of LinuxThreads in 2005, but we didn't remove + __LT_SPINLOCK_INIT back then. Do it now. + + * nptl/sysdeps/pthread/bits/libc-lockP.h [defined NOT_IN_libc + && !defined IS_IN_libpthread && __LT_SPINNOCK_INIT != 0]: + Remove. + +diff --git a/nptl/sysdeps/pthread/bits/libc-lockP.h b/nptl/sysdeps/pthread/bits/libc-lockP.h +index 962a292308f92267..07e0ef62909b9e9e 100644 +--- a/nptl/sysdeps/pthread/bits/libc-lockP.h ++++ b/nptl/sysdeps/pthread/bits/libc-lockP.h +@@ -78,13 +78,8 @@ typedef pthread_key_t __libc_key_t; + CLASS __libc_lock_t NAME = LLL_LOCK_INITIALIZER; + # endif + #else +-# if __LT_SPINLOCK_INIT == 0 +-# define __libc_lock_define_initialized(CLASS,NAME) \ ++# define __libc_lock_define_initialized(CLASS,NAME) \ + CLASS __libc_lock_t NAME; +-# else +-# define __libc_lock_define_initialized(CLASS,NAME) \ +- CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER; +-# endif + #endif + + #define __libc_rwlock_define_initialized(CLASS,NAME) \ diff --git a/SOURCES/glibc-rh1505492-undef-abi.patch b/SOURCES/glibc-rh1505492-undef-abi.patch new file mode 100644 index 0000000..d5f1a7b --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-abi.patch @@ -0,0 +1,17 @@ +Add missing ABI versions which are referenced in +glibc-rh677316-resolv.patch, to suppress -Wundef warnings. +(Not needed upstream because it does not use future ABI versions.) + +diff --git a/Versions.def b/Versions.def +index 41a0d84bcf29a780..725f5d827ba3ec94 100644 +--- a/Versions.def ++++ b/Versions.def +@@ -109,6 +109,8 @@ libresolv { + GLIBC_2.2 + GLIBC_2.3.2 + GLIBC_2.9 ++ GLIBC_2.25 ++ GLIBC_2.26 + GLIBC_PRIVATE + } + librt { diff --git a/SOURCES/glibc-rh1505492-undef-activate.patch b/SOURCES/glibc-rh1505492-undef-activate.patch new file mode 100644 index 0000000..a7bafaa --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-activate.patch @@ -0,0 +1,27 @@ +commit 48bb14bdbbeb09cb3cd950d7346688958f1bce1a +Author: Joseph Myers +Date: Thu Aug 20 20:50:05 2015 +0000 + + Don't use -Wno-error=undef. + + This patch removes the use of -Wno-error=undef, so that -Wundef + warnings become errors. + + Tested for x86_64, x86, mips64 (all three ABIs) and arm. + + * Makeconfig [$(enable-werror) = yes] (+gccwarn): Do not add + -Wno-error=undef. + +diff --git a/Makeconfig b/Makeconfig +index b1bf7f24b6154e3d..3c0d4abc5f5f30df 100644 +--- a/Makeconfig ++++ b/Makeconfig +@@ -645,7 +645,7 @@ else + endif + +gccwarn += -Wundef + ifeq ($(enable-werror),yes) +-+gccwarn += -Werror -Wno-error=undef +++gccwarn += -Werror + endif + +gccwarn-c = -Wstrict-prototypes + diff --git a/SOURCES/glibc-rh1505492-undef-elf-dtv-resize.patch b/SOURCES/glibc-rh1505492-undef-elf-dtv-resize.patch new file mode 100644 index 0000000..4ed2d3f --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-elf-dtv-resize.patch @@ -0,0 +1,16 @@ +Suppress -Wundef warnings in glibc-rh1189278.patch. Specific to the +backport, so no upstream patch. + +diff --git a/elf/dl-tls.c b/elf/dl-tls.c +index b9f58a9cd2745b95..02857f5d61fcfc81 100644 +--- a/elf/dl-tls.c ++++ b/elf/dl-tls.c +@@ -404,7 +404,7 @@ _dl_resize_dtv (dtv_t *dtv) + size_t newsize = GL(dl_tls_max_dtv_idx) + DTV_SURPLUS; + size_t oldsize = dtv[-1].counter; + +-#if SHARED ++#ifdef SHARED + if (dtv == GL(dl_initial_dtv)) + { + /* This is the initial dtv that was either statically allocated in diff --git a/SOURCES/glibc-rh1505492-undef-elision.patch b/SOURCES/glibc-rh1505492-undef-elision.patch new file mode 100644 index 0000000..77e9702 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-elision.patch @@ -0,0 +1,16 @@ +Suppress -Wundef warning in glibc-rh841653-16.patch. Specific to +the previous backport, so no upstream patch. + +diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c +index b7c735891d66bac0..f86a6853d2f9b2e3 100644 +--- a/elf/dl-tunables.c ++++ b/elf/dl-tunables.c +@@ -27,7 +27,7 @@ void + internal_function + _dl_process_tunable_env_entries (void) + { +-#if HAVE_ELISION ++#ifdef HAVE_ELISION + char **ep; + const char *envname = { "RHEL_GLIBC_TUNABLES" }; + # define TUNABLE_ELISION 0 diff --git a/SOURCES/glibc-rh1505492-undef-error.patch b/SOURCES/glibc-rh1505492-undef-error.patch new file mode 100644 index 0000000..5e01c1d --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-error.patch @@ -0,0 +1,21 @@ +Fix -Wundef warning. Addressed upstream as part of this commit: + +commit 888c679ba406e89d86bdfbde033e307f5af5198f +Author: Siddhesh Poyarekar +Date: Thu Jul 10 14:24:30 2014 +0530 + + Sync up error.c with gnulib + +diff --git a/misc/error.c b/misc/error.c +index 6fb192da4b38a4f9..3d0156e406fa1539 100644 +--- a/misc/error.c ++++ b/misc/error.c +@@ -100,7 +100,7 @@ print_errno_message (int errnum) + + #if defined HAVE_STRERROR_R || _LIBC + char errbuf[1024]; +-# if STRERROR_R_CHAR_P || _LIBC ++# if _LIBC || STRERROR_R_CHAR_P + s = __strerror_r (errnum, errbuf, sizeof errbuf); + # else + if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0) diff --git a/SOURCES/glibc-rh1505492-undef-intl.patch b/SOURCES/glibc-rh1505492-undef-intl.patch new file mode 100644 index 0000000..7ac3a98 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-intl.patch @@ -0,0 +1,20 @@ +Fix -Wundef warning. It was fixed upstream as part of this commit: + +commit 3247f28556d1de7f9837f6e9ee8c63fa56b93c13 +Author: Siddhesh Poyarekar +Date: Thu Jul 3 01:36:10 2014 +0530 + + Sync up loadmsgcat.c with gettext + +diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c +index c70152010ecd2624..243783a9ac4d0929 100644 +--- a/intl/loadmsgcat.c ++++ b/intl/loadmsgcat.c +@@ -89,6 +89,7 @@ char *alloca (); + # include "../locale/localeinfo.h" + # include + # include ++# define PRI_MACROS_BROKEN 0 + #endif + + /* Provide fallback values for macros that ought to be defined in . diff --git a/SOURCES/glibc-rh1505492-undef-ipc64.patch b/SOURCES/glibc-rh1505492-undef-ipc64.patch new file mode 100644 index 0000000..6a3cea6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-ipc64.patch @@ -0,0 +1,48 @@ +Fix -Wundef warnings related to __ASSUME_IPC64. This was addressed +differently upstream: + +be481652f272acc117907ac30157cdac46aa1973 +Author: Andreas Schwab +Date: Tue Aug 18 10:29:30 2015 +0200 + + Remove __ASSUME_IPC64 + +diff --git a/sysdeps/unix/sysv/linux/msgctl.c b/sysdeps/unix/sysv/linux/msgctl.c +index 09d4dc11f779a63f..25f47ce6fdeb19c9 100644 +--- a/sysdeps/unix/sysv/linux/msgctl.c ++++ b/sysdeps/unix/sysv/linux/msgctl.c +@@ -65,7 +65,7 @@ compat_symbol (libc, __old_msgctl, msgctl, GLIBC_2_0); + int + __new_msgctl (int msqid, int cmd, struct msqid_ds *buf) + { +-#if __ASSUME_IPC64 > 0 ++#ifdef __ASSUME_IPC64 + return INLINE_SYSCALL (ipc, 5, IPCOP_msgctl, + msqid, cmd | __IPC_64, 0, buf); + #else +diff --git a/sysdeps/unix/sysv/linux/semctl.c b/sysdeps/unix/sysv/linux/semctl.c +index 3a2f1b39cea657e5..f932fb70525a6876 100644 +--- a/sysdeps/unix/sysv/linux/semctl.c ++++ b/sysdeps/unix/sysv/linux/semctl.c +@@ -122,7 +122,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) + + va_end (ap); + +-#if __ASSUME_IPC64 > 0 ++#ifdef __ASSUME_IPC64 + return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64, + &arg); + #else +diff --git a/sysdeps/unix/sysv/linux/shmctl.c b/sysdeps/unix/sysv/linux/shmctl.c +index f99ee77f92878b1b..378fda21ea699c73 100644 +--- a/sysdeps/unix/sysv/linux/shmctl.c ++++ b/sysdeps/unix/sysv/linux/shmctl.c +@@ -72,7 +72,7 @@ compat_symbol (libc, __old_shmctl, shmctl, GLIBC_2_0); + int + __new_shmctl (int shmid, int cmd, struct shmid_ds *buf) + { +-#if __ASSUME_IPC64 > 0 ++#ifdef __ASSUME_IPC64 + return INLINE_SYSCALL (ipc, 5, IPCOP_shmctl, shmid, cmd | __IPC_64, 0, + buf); + #else diff --git a/SOURCES/glibc-rh1505492-undef-malloc.patch b/SOURCES/glibc-rh1505492-undef-malloc.patch new file mode 100644 index 0000000..729fe06 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-malloc.patch @@ -0,0 +1,18 @@ +glibc-rh1293976-2.patch introduced a -Wundef warning related to the +POWER architecture preprocessor macros. No upstream patch because +upstream has fixed the underlying malloc alignment issue on 32-bit POWER +this portion of the code attempts to work around. + +diff --git a/malloc/tst-malloc-thread-fail.c b/malloc/tst-malloc-thread-fail.c +index 7edcd7122fb084b7..5dfb24f5a3154fd7 100644 +--- a/malloc/tst-malloc-thread-fail.c ++++ b/malloc/tst-malloc-thread-fail.c +@@ -156,7 +156,7 @@ static void * + allocate (void) + { + struct allocate_result r = allocate_1 (); +-#if __powerpc__ == 1 && __powerpc64__ == 0 ++#if defined (__powerpc__) == 1 && !defined (__powerpc64__) + /* Sourceware bug 6527 on 32-bit POWER. + Ignore 16-byte alignment requirement when using malloc, realloc, or + calloc, since these functions are known not to provide enough diff --git a/SOURCES/glibc-rh1505492-undef-max_align_t.patch b/SOURCES/glibc-rh1505492-undef-max_align_t.patch new file mode 100644 index 0000000..0c8276f --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-max_align_t.patch @@ -0,0 +1,18 @@ +Fix -Wundef warning around the definition of max_align_t. Updates +glibc-rh1418978-max_align_t.patch. Upstream assumes C11 support and +therefore does not need this definition. + +diff --git a/include/sys/cdefs.h b/include/sys/cdefs.h +index 29da941991f9a206..25ff204e4c632865 100644 +--- a/include/sys/cdefs.h ++++ b/include/sys/cdefs.h +@@ -20,7 +20,8 @@ rtld_hidden_proto (__chk_fail) + is also available in C99 mode. The aligned attributes are required + because some ABIs have reduced alignment requirements for struct and + union members. */ +-#if __STDC_VERSION__ < 201112L && __cplusplus < 201103L ++#if (!defined (__STDC_VERSION__) || __STDC_VERSION__ < 201112L) \ ++ && (!defined (__cplusplus) || __cplusplus < 201103L) + typedef struct { + long long ll __attribute__ ((__aligned__ (__alignof__ (long long)))); + long double ld __attribute__ ((__aligned__ (__alignof__ (long double)))); diff --git a/SOURCES/glibc-rh1505492-undef-mktime.patch b/SOURCES/glibc-rh1505492-undef-mktime.patch new file mode 100644 index 0000000..1fc2261 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-mktime.patch @@ -0,0 +1,30 @@ +Fix -Wundef warnings. Part of this upstream commit: + +commit dd0ba018122e88937a5f14b6594b9a40693b2e58 +Author: Paul Eggert +Date: Sat Jun 28 06:15:54 2014 +0530 + + Sync up mktime with gnulib + +diff --git a/time/mktime.c b/time/mktime.c +index e1fbf9ea197d3c8b..bc914d80593b91f2 100644 +--- a/time/mktime.c ++++ b/time/mktime.c +@@ -38,7 +38,7 @@ + + #include /* For the real memcpy prototype. */ + +-#if DEBUG ++#if defined DEBUG && DEBUG + # include + # include + /* Make it work even if the system's libc has its own mktime routine. */ +@@ -600,7 +600,7 @@ libc_hidden_def (mktime) + libc_hidden_weak (timelocal) + #endif + +-#if DEBUG ++#if defined DEBUG && DEBUG + + static int + not_equal_tm (const struct tm *a, const struct tm *b) diff --git a/SOURCES/glibc-rh1505492-undef-obstack.patch b/SOURCES/glibc-rh1505492-undef-obstack.patch new file mode 100644 index 0000000..fa39993 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-obstack.patch @@ -0,0 +1,43 @@ +Fix -Wundef warnings. Upstream addressed this as part of this commit: + +commit b100f9aa77027e4371154820ea8a0353bfd13223 +Author: Will Newton +Date: Mon Jun 23 16:53:30 2014 +0100 + + malloc/obstack: Merge from gnulib + +diff --git a/malloc/obstack.c b/malloc/obstack.c +index e3ce53f987727eca..2b103727e010b417 100644 +--- a/malloc/obstack.c ++++ b/malloc/obstack.c +@@ -56,10 +56,10 @@ + #ifndef ELIDE_CODE + + +-# if HAVE_INTTYPES_H ++# if _LIBC || HAVE_INTTYPES_H + # include + # endif +-# if HAVE_STDINT_H || defined _LIBC ++# if _LIBC || HAVE_STDINT_H + # include + # endif + +diff --git a/malloc/obstack.h b/malloc/obstack.h +index a791823cf3f18348..69e92d1146b02eb1 100644 +--- a/malloc/obstack.h ++++ b/malloc/obstack.h +@@ -250,13 +250,6 @@ extern int obstack_exit_failure; + #define obstack_memory_used(h) _obstack_memory_used (h) + + #if defined __GNUC__ +-/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and +- does not implement __extension__. But that compiler doesn't define +- __GNUC_MINOR__. */ +-# if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__) +-# define __extension__ +-# endif +- + /* For GNU C, if not -traditional, + we can define these macros to compute all args only once + without using a global variable. diff --git a/SOURCES/glibc-rh1505492-undef-string.patch b/SOURCES/glibc-rh1505492-undef-string.patch new file mode 100644 index 0000000..0c9f6c2 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-string.patch @@ -0,0 +1,26 @@ +Fix -Wundef warnings. Fixed upstream as part of this commit: + +commit 1570a72bb8359c9a3a64c4e22d9ea47ce6fcff31 +Author: Will Newton +Date: Thu Jun 26 16:00:44 2014 +0100 + + string/memchr.c: Merge from gnulib + +diff --git a/string/memchr.c b/string/memchr.c +index 1684bfa56885e883..d1880cfbaed951a6 100644 +--- a/string/memchr.c ++++ b/string/memchr.c +@@ -32,11 +32,11 @@ + # include + #endif + +-#if HAVE_STDLIB_H || defined _LIBC ++#if defined _LIBC || HAVE_STDLIB_H + # include + #endif + +-#if HAVE_LIMITS_H || defined _LIBC ++#if defined _LIBC || HAVE_LIMITS_H + # include + #endif + diff --git a/SOURCES/glibc-rh1505492-undef-sysconf.patch b/SOURCES/glibc-rh1505492-undef-sysconf.patch new file mode 100644 index 0000000..f512353 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-sysconf.patch @@ -0,0 +1,29 @@ +Fix -Wundef warning. Upstream removed the __ASSUME_ARG_MAX_STACK_BASE +preprocessor conditional as part of this commit: + +commit 637461d96563f3b7405df5b124ccfe843e537374 +Author: Joseph Myers +Date: Mon May 12 22:48:25 2014 +0000 + + Clean up kernel version conditionals for pre-2.6.32 kernels. + + This patch does some initial cleanup, following the move to 2.6.32 + minimum kernel version, by removing __LINUX_KERNEL_VERSION + conditionals that are now always-true or always-false. In the case of + __ASSUME_ARG_MAX_STACK_BASED, where the conditional used a kernel + version that was itself in a macro, the associated sysconf.c code is + also cleaned up and __ASSUME_ARG_MAX_STACK_BASED removed completely. + +diff --git a/sysdeps/unix/sysv/linux/sysconf.c b/sysdeps/unix/sysv/linux/sysconf.c +index 47ce5ef07cce7888..05cbb0879e9748d5 100644 +--- a/sysdeps/unix/sysv/linux/sysconf.c ++++ b/sysdeps/unix/sysv/linux/sysconf.c +@@ -88,7 +88,7 @@ __sysconf (int name) + return HAS_CPUCLOCK (name); + + case _SC_ARG_MAX: +-#if !__ASSUME_ARG_MAX_STACK_BASED ++#ifndef __ASSUME_ARG_MAX_STACK_BASED + /* Determine whether this is a kernel with an argument limit + determined by the stack size. */ + if (GLRO(dl_discover_osversion) () diff --git a/SOURCES/glibc-rh1505492-undef-tempname.patch b/SOURCES/glibc-rh1505492-undef-tempname.patch new file mode 100644 index 0000000..f6e5005 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-tempname.patch @@ -0,0 +1,68 @@ +Fix -Wundef warnings. This was addressed upstream as part of this +commit: + +commit c7aec4beb13f125948884d80158f11c34239c61f +Author: Will Newton +Date: Tue Jun 24 14:19:36 2014 +0100 + + sysdeps/posix/tempname.c: Merge from gnulib + +diff --git a/sysdeps/posix/tempname.c b/sysdeps/posix/tempname.c +index 2f0bfef34fa31c28..05c88bc95e72756e 100644 +--- a/sysdeps/posix/tempname.c ++++ b/sysdeps/posix/tempname.c +@@ -40,30 +40,30 @@ + # define __GT_NOCREATE 2 + #endif + +-#if STDC_HEADERS || _LIBC ++#if _LIBC || STDC_HEADERS + # include + # include + # include + #endif + +-#if HAVE_FCNTL_H || _LIBC ++#if _LIBC || HAVE_FCNTL_H + # include + #endif + +-#if HAVE_SYS_TIME_H || _LIBC ++#if _LIBC || HAVE_SYS_TIME_H + # include + #endif + +-#if HAVE_STDINT_H || _LIBC ++#if _LIBC || HAVE_STDINT_H + # include + #endif + +-#if HAVE_UNISTD_H || _LIBC ++#if _LIBC || HAVE_UNISTD_H + # include + #endif + + #include +-#if STAT_MACROS_BROKEN ++#if !_LIBC && STAT_MACROS_BROKEN + # undef S_ISDIR + #endif + #if !defined S_ISDIR && defined S_IFDIR +@@ -101,7 +101,7 @@ + # define __xstat64(version, path, buf) stat (path, buf) + #endif + +-#if ! (HAVE_SECURE_GETENV || _LIBC) ++#if ! (_LIBC || HAVE_SECURE_GETENV) + # ifdef HAVE___SECURE_GETENV + # define __libc_secure_getenv __secure_getenv + # else +@@ -267,7 +267,7 @@ __gen_tempname (char *tmpl, int suffixlen, int flags, int kind) + #ifdef RANDOM_BITS + RANDOM_BITS (random_time_bits); + #else +-# if HAVE_GETTIMEOFDAY || _LIBC ++# if _LIBC || HAVE_GETTIMEOFDAY + { + struct timeval tv; + __gettimeofday (&tv, NULL); diff --git a/SOURCES/glibc-rh1505492-undef-xfs-chown.patch b/SOURCES/glibc-rh1505492-undef-xfs-chown.patch new file mode 100644 index 0000000..4f4e140 --- /dev/null +++ b/SOURCES/glibc-rh1505492-undef-xfs-chown.patch @@ -0,0 +1,21 @@ +Fix -Wundef warning. Upstream addressed this differently via: + +commit a4ccbc9b243926a9904624b387fb18583c3d4d4d +Author: Joseph Myers +Date: Wed Jun 25 16:39:33 2014 +0000 + + Remove __ASSUME_XFS_RESTRICTED_CHOWN. + +diff --git a/sysdeps/unix/sysv/linux/pathconf.c b/sysdeps/unix/sysv/linux/pathconf.c +index febdc3731119bfce..0ed2abb9cb1d618d 100644 +--- a/sysdeps/unix/sysv/linux/pathconf.c ++++ b/sysdeps/unix/sysv/linux/pathconf.c +@@ -284,7 +284,7 @@ __statfs_chown_restricted (int result, const struct statfs *fsbuf) + return -1; + } + +-#if __ASSUME_XFS_RESTRICTED_CHOWN ++#ifdef __ASSUME_XFS_RESTRICTED_CHOWN + return 1; + #else + int fd; diff --git a/SOURCES/glibc-rh1505492-uninit-1.patch b/SOURCES/glibc-rh1505492-uninit-1.patch new file mode 100644 index 0000000..3088f41 --- /dev/null +++ b/SOURCES/glibc-rh1505492-uninit-1.patch @@ -0,0 +1,27 @@ +commit 6ee3eab42979fdd5bb971a40fec32e04bb9dd2ad +Author: Siddhesh Poyarekar +Date: Wed Jul 9 10:36:50 2014 +0530 + + Fix -Wmaybe-uninitialized warning in xdr.c + + While we're at fixing build warnings, here's one unnecessary warning + that can be fixed fairly easily. The SIZE variable is never actually + use uninitialized, but the compiler cannot make that out and thinks + (correctly) that there is a potential for accessing SIZE without + initializing it. Make this safe by initializing SIZE to 0. + + Tested on x86_64. + +diff --git a/sunrpc/xdr.c b/sunrpc/xdr.c +index 7eac2d40f036aa70..b3e713cbc9c3e012 100644 +--- a/sunrpc/xdr.c ++++ b/sunrpc/xdr.c +@@ -738,7 +738,7 @@ xdr_string (xdrs, cpp, maxsize) + u_int maxsize; + { + char *sp = *cpp; /* sp is the actual string pointer */ +- u_int size; ++ u_int size = 0; + u_int nodesize; + + /* diff --git a/SOURCES/glibc-rh1505492-uninit-2.patch b/SOURCES/glibc-rh1505492-uninit-2.patch new file mode 100644 index 0000000..3b5faf0 --- /dev/null +++ b/SOURCES/glibc-rh1505492-uninit-2.patch @@ -0,0 +1,19 @@ +commit d69b7f5ac02989ce3d8577eed86da3e0c8af6c1c +Author: Siddhesh Poyarekar +Date: Thu Jul 10 10:32:29 2014 +0530 + + Add comment about SIZE initialization in xdr.c + +diff --git a/sunrpc/xdr.c b/sunrpc/xdr.c +index b3e713cbc9c3e012..d0afd34466f73def 100644 +--- a/sunrpc/xdr.c ++++ b/sunrpc/xdr.c +@@ -738,6 +738,8 @@ xdr_string (xdrs, cpp, maxsize) + u_int maxsize; + { + char *sp = *cpp; /* sp is the actual string pointer */ ++ /* Initialize to silence the compiler. It is not really needed because SIZE ++ never actually gets used without being initialized. */ + u_int size = 0; + u_int nodesize; + diff --git a/SOURCES/glibc-rh1505492-uninit-3.patch b/SOURCES/glibc-rh1505492-uninit-3.patch new file mode 100644 index 0000000..9a75902 --- /dev/null +++ b/SOURCES/glibc-rh1505492-uninit-3.patch @@ -0,0 +1,57 @@ +commit b1eda10e17bf2056ca79a534d92fe0b0b06bd410 +Author: Paul Eggert +Date: Tue Nov 25 14:12:48 2014 -0800 + + fnmatch: work around GCC compiler warning bug with uninit var + + * posix/fnmatch_loop.c (FCT): Use a scalar not a one-item array. + This works around a bug with x86-64 GCC 4.9.2 and earlier + where 'gcc -O2 -Wmaybe-uninitialized' incorrectly complains + "../locale/weightwc.h:93:7: warning: '*((void *)&str+4)' may be + used uninitialized in this function [-Wmaybe-uninitialized]". + +diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c +index e289f451cc23c1ee..2bd788f3942c6e7d 100644 +--- a/posix/fnmatch_loop.c ++++ b/posix/fnmatch_loop.c +@@ -342,7 +342,12 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + #ifdef _LIBC + else if (c == L('[') && *p == L('=')) + { +- UCHAR str[1]; ++ /* It's important that STR be a scalar variable rather ++ than a one-element array, because GCC (at least 4.9.2 ++ -O2 on x86-64) can be confused by the array and ++ diagnose a "used initialized" in a dead branch in the ++ findidx function. */ ++ UCHAR str; + uint32_t nrules = + _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); + const CHAR *startp = p; +@@ -354,7 +359,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + c = L('['); + goto normal_bracket; + } +- str[0] = c; ++ str = c; + + c = *++p; + if (c != L('=') || p[1] != L(']')) +@@ -367,7 +372,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + + if (nrules == 0) + { +- if ((UCHAR) *n == str[0]) ++ if ((UCHAR) *n == str) + goto matched; + } + else +@@ -382,7 +387,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + # endif + const int32_t *indirect; + int32_t idx; +- const UCHAR *cp = (const UCHAR *) str; ++ const UCHAR *cp = (const UCHAR *) &str; + + /* This #include defines a local function! */ + # if WIDE_CHAR_VERSION diff --git a/SOURCES/glibc-rh1505492-uninit-intl-plural.patch b/SOURCES/glibc-rh1505492-uninit-intl-plural.patch new file mode 100644 index 0000000..cf96163 --- /dev/null +++ b/SOURCES/glibc-rh1505492-uninit-intl-plural.patch @@ -0,0 +1,26 @@ +Do not treat uninitialized variable warnings as errors in the +auto-generated bison parser code in intl/plural.c. + +This was fixed upstream with a regenerated parser as part of this +commit: + +commit 568035b7874a099087b77f7bba3e36a1173787b0 +Author: Joseph Myers +Date: Wed Jan 2 19:01:50 2013 +0000 + + Update copyright notices with scripts/update-copyrights. + +diff --git a/intl/Makefile b/intl/Makefile +index 39ecb680572bd7ab..f0a7d0d9047ce571 100644 +--- a/intl/Makefile ++++ b/intl/Makefile +@@ -45,6 +45,9 @@ plural.c: plural.y + $(BISON) $(BISONFLAGS) $@ $^ + endif + $(objpfx)plural.o: plural.c ++# The generated plural.c file generates unitialized variable warnings ++# with GCC 4.8 on 32-bit architectures. ++CFLAGS-plural.c = -Wno-error=maybe-uninitialized + + include ../Rules + diff --git a/SOURCES/glibc-rh1505492-unused-1.patch b/SOURCES/glibc-rh1505492-unused-1.patch new file mode 100644 index 0000000..d1e4f34 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-1.patch @@ -0,0 +1,27 @@ +commit 7f3e75f87a93265e5a9feb1ba320f4b19f29cd67 +Author: Roland McGrath +Date: Fri Feb 8 10:46:32 2013 -0800 + + Remove dead variable in generic strcpy. + +diff --git a/string/strcpy.c b/string/strcpy.c +index 812de20a3732cce5..bf624947cc780328 100644 +--- a/string/strcpy.c ++++ b/string/strcpy.c +@@ -30,7 +30,6 @@ strcpy (dest, src) + char c; + char *__unbounded s = (char *__unbounded) src; + const ptrdiff_t off = dest - s - 1; +- size_t n; + + do + { +@@ -39,8 +38,6 @@ strcpy (dest, src) + } + while (c != '\0'); + +- n = s - src; +- + return dest; + } + libc_hidden_builtin_def (strcpy) diff --git a/SOURCES/glibc-rh1505492-unused-10.patch b/SOURCES/glibc-rh1505492-unused-10.patch new file mode 100644 index 0000000..2bf2781 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-10.patch @@ -0,0 +1,67 @@ +commit 8915eacef88eb25ac94e6bb37b473adb326e9d1b +Author: Joseph Myers +Date: Wed Nov 26 20:54:16 2014 +0000 + + Avoid warnings for unused results in nscd/connections.c. + + This patch avoids warnings for unused results of setuid and setgid in + nscd/connections.c using an ignore_value macro along the lines + suggested by Paul in + . + + Tested for x86_64. + + * include/libc-internal.h (ignore_value): New macro. + * nscd/connections.c (restart): Wrap calls to setuid and setgid + with ignore_value. + +diff --git a/include/libc-internal.h b/include/libc-internal.h +index 78f82da58a2c334b..2ced1c17d3dff93d 100644 +--- a/include/libc-internal.h ++++ b/include/libc-internal.h +@@ -70,4 +70,10 @@ extern void __init_misc (int, char **, char **); + #define PTR_ALIGN_UP(base, size) \ + ((__typeof__ (base)) ALIGN_UP ((uintptr_t) (base), (size))) + ++/* Ignore the value of an expression when a cast to void does not ++ suffice (in particular, for a call to a function declared with ++ attribute warn_unused_result). */ ++#define ignore_value(x) \ ++ ({ __typeof__ (x) __ignored_value = (x); (void) __ignored_value; }) ++ + #endif /* _LIBC_INTERNAL */ +diff --git a/nscd/connections.c b/nscd/connections.c +index 53813cf58876eae7..54b70e88d894523a 100644 +--- a/nscd/connections.c ++++ b/nscd/connections.c +@@ -1486,7 +1486,7 @@ cannot change to old UID: %s; disabling paranoia mode"), + cannot change to old GID: %s; disabling paranoia mode"), + strerror (errno)); + +- setuid (server_uid); ++ ignore_value (setuid (server_uid)); + paranoia = 0; + return; + } +@@ -1501,8 +1501,8 @@ cannot change to old working directory: %s; disabling paranoia mode"), + + if (server_user != NULL) + { +- setuid (server_uid); +- setgid (server_gid); ++ ignore_value (setuid (server_uid)); ++ ignore_value (setgid (server_gid)); + } + paranoia = 0; + return; +@@ -1546,8 +1546,8 @@ cannot change to old working directory: %s; disabling paranoia mode"), + + if (server_user != NULL) + { +- setuid (server_uid); +- setgid (server_gid); ++ ignore_value (setuid (server_uid)); ++ ignore_value (setgid (server_gid)); + } + if (chdir ("/") != 0) + dbg_log (_("cannot change current working directory to \"/\": %s"), diff --git a/SOURCES/glibc-rh1505492-unused-11.patch b/SOURCES/glibc-rh1505492-unused-11.patch new file mode 100644 index 0000000..b438a49 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-11.patch @@ -0,0 +1,18 @@ +commit e7300fef49147a73d5dc7e0a462cc60aabb58400 +Author: Stefan Liebler +Date: Thu Nov 27 11:07:16 2014 +0100 + + Add missing include of libc-internal.h. + +diff --git a/nscd/connections.c b/nscd/connections.c +index 54b70e88d894523a..391381bbdde8fcc9 100644 +--- a/nscd/connections.c ++++ b/nscd/connections.c +@@ -58,6 +58,7 @@ + #include + + #include ++#include + + + /* Support to run nscd as an unprivileged user */ diff --git a/SOURCES/glibc-rh1505492-unused-12.patch b/SOURCES/glibc-rh1505492-unused-12.patch new file mode 100644 index 0000000..7a9cd16 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-12.patch @@ -0,0 +1,40 @@ +commit 9114625bad23441c89eac5a7dcf319a9714ca31f +Author: Joseph Myers +Date: Thu Nov 27 16:00:08 2014 +0000 + + Fix dlfcn/failtestmod.c warning. + + This patch fixes a "set but not used" warning from + dlfcn/failtestmod.c. A variable is used only to store the return + value from dlsym. As I understand this test, the point is simply to + do a sequence of load / unload operations in a loop, and all that + matters here is that dlsym gets called and returns without crashing, + not what its return value is. So this patch removes the assignment to + a variable. + + Tested for x86_64. + + * dlfcn/failtestmod.c (constr): Do not store result of dlsym in a + variable. + +diff --git a/dlfcn/failtestmod.c b/dlfcn/failtestmod.c +index a03f90b734132d8d..64dadd53ff8ef109 100644 +--- a/dlfcn/failtestmod.c ++++ b/dlfcn/failtestmod.c +@@ -8,7 +8,6 @@ __attribute__ ((__constructor__)) + constr (void) + { + void *handle; +- void *m; + + /* Open the library. */ + handle = dlopen (NULL, RTLD_NOW); +@@ -19,7 +18,7 @@ constr (void) + } + + /* Get a symbol. */ +- m = dlsym (handle, "main"); ++ dlsym (handle, "main"); + puts ("called dlsym() to get main"); + + dlclose (handle); diff --git a/SOURCES/glibc-rh1505492-unused-13.patch b/SOURCES/glibc-rh1505492-unused-13.patch new file mode 100644 index 0000000..bb216f9 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-13.patch @@ -0,0 +1,59 @@ +commit 49051f8ea4551229fa656eba04031af51a5491c5 +Author: Joseph Myers +Date: Thu Nov 27 16:01:04 2014 +0000 + + Fix libio/bug-ungetwc1.c warning. + + This patch fixes a warning "variable 'wc' set but not used" in + libio/bug-ungetwc1.c. + + The test didn't verify much about the results of the functions it + called. This patch makes it check the result of getwc (thereby fixing + the warning), check end of file does not arrive too late in the getwc + loop, and check EOF is no longer set after ungetwc. + + Tested for x86_64. + + * libio/bug-ungetwc1.c (do_test): Verify results of getwc and + feof. + +diff --git a/libio/bug-ungetwc1.c b/libio/bug-ungetwc1.c +index 8ed6acd175e86858..56a3d336ae89d69f 100644 +--- a/libio/bug-ungetwc1.c ++++ b/libio/bug-ungetwc1.c +@@ -53,8 +53,22 @@ do_test (void) + /* Read from the file. */ + fp = fopen (fname, "r"); + ++ size_t i = 0; + while (!feof (fp)) +- wc = getwc (fp); ++ { ++ wc = getwc (fp); ++ if (i >= sizeof (write_chars)) ++ { ++ printf ("Did not get end-of-file when expected.\n"); ++ return 1; ++ } ++ else if (wc != (write_chars[i] ? write_chars[i] : WEOF)) ++ { ++ printf ("Unexpected %lu from getwc.\n", (unsigned long int) wc); ++ return 1; ++ } ++ i++; ++ } + printf ("\nThe end-of-file indicator is set.\n"); + + /* Unget a wide character. */ +@@ -63,7 +77,10 @@ do_test (void) + + /* Check the end-of-file indicator. */ + if (feof (fp)) +- printf ("The end-of-file indicator is still set.\n"); ++ { ++ printf ("The end-of-file indicator is still set.\n"); ++ return 1; ++ } + else + printf ("The end-of-file flag is cleared.\n"); + diff --git a/SOURCES/glibc-rh1505492-unused-14.patch b/SOURCES/glibc-rh1505492-unused-14.patch new file mode 100644 index 0000000..ffe302a --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-14.patch @@ -0,0 +1,26 @@ +commit 66cadc058dd7ce8106624df5732ea69a484621b9 +Author: Joseph Myers +Date: Tue Dec 2 21:29:54 2014 +0000 + + Fix elf/tst-unique4lib.cc warning. + + This patch fixes a warning "tst-unique4lib.cc:17:12: warning: 'b' + defined but not used [-Wunused-variable]". I'm not sure exactly what + aspects of the test are or are not significant for the issue it is + testing for; the patch makes the minimal change of marking the + variable with __attribute__ ((used)). + + Tested for x86_64. + + * elf/tst-unique4lib.cc (b): Mark with __attribute__ ((used)). + +diff --git a/elf/tst-unique4lib.cc b/elf/tst-unique4lib.cc +index c9fdf9cfeacad6d5..20a10e93d0a6bb4b 100644 +--- a/elf/tst-unique4lib.cc ++++ b/elf/tst-unique4lib.cc +@@ -14,4 +14,4 @@ static int a[24] = + S<23>::i, S<24>::i + }; + +-static int b = S<1>::j; ++static int b __attribute__ ((used)) = S<1>::j; diff --git a/SOURCES/glibc-rh1505492-unused-15.patch b/SOURCES/glibc-rh1505492-unused-15.patch new file mode 100644 index 0000000..484935f --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-15.patch @@ -0,0 +1,19 @@ +Declare elision_available in elision_init under the preprocessor +conditional, to avoid an unused variable warning. + +Upstream, this has been obsoleted by other elision-related changes. + +diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c +index 69b4fa4c66e89bc6..cc5efb811352adf1 100644 +--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c ++++ b/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c +@@ -66,8 +66,8 @@ elision_init (int argc __attribute__ ((unused)), + char **argv __attribute__ ((unused)), + char **environ) + { +- int elision_available = HAS_CPU_FEATURE (RTM); + #ifdef ENABLE_LOCK_ELISION ++ int elision_available = HAS_CPU_FEATURE (RTM); + if (!__libc_enable_secure && elision_available) + { + /* RHEL 7 specific change: Check if elision is enabled for the diff --git a/SOURCES/glibc-rh1505492-unused-16.patch b/SOURCES/glibc-rh1505492-unused-16.patch new file mode 100644 index 0000000..4612d5e --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-16.patch @@ -0,0 +1,72 @@ +commit ad37480c4b79b801b987f5529d036b4e25cac615 +Author: Martin Sebor +Date: Fri Jan 15 10:44:07 2016 -0700 + + Fix build errors with -DNDEBUG. + + [BZ #18755] + * iconv/skeleton.c (FUNCTION_NAME): Suppress -Wunused-but-set-variable + warnings. + * sysdeps/nptl/gai_misc.h (__gai_start_notify_thread): Same. + (__gai_create_helper_thread): Same. + * nscd/nscd.c (do_exit): Suppress -Wunused-variable. + * iconvdata/iso-2022-cn-ext.c (BODY): Initialize local variable + to suppress -Wmaybe-uninitialized warnings. + +Conflicts: + sysdeps/nptl/gai_misc.h + +Not needed due to missing backport of commit +74eb826cff5e4277d2d866a92058f27a837f8ff7 (NPTL: Remove gratuitous +Linuxisms from gai_misc.h.). File deleted manually. + +diff --git a/iconv/skeleton.c b/iconv/skeleton.c +index 3384d520661f88ed..893fee9aaadf91e3 100644 +--- a/iconv/skeleton.c ++++ b/iconv/skeleton.c +@@ -682,7 +682,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data, + #else + /* We have a problem in one of the functions below. + Undo the conversion upto the error point. */ +- size_t nstatus; ++ size_t nstatus __attribute__ ((unused)); + + /* Reload the pointers. */ + *inptrp = inptr; +diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c +index bde266811d967192..c86d8616d417f21b 100644 +--- a/iconvdata/iso-2022-cn-ext.c ++++ b/iconvdata/iso-2022-cn-ext.c +@@ -426,7 +426,7 @@ enum + } \ + else \ + { \ +- unsigned char buf[2]; \ ++ unsigned char buf[2] = { 0, 0 }; \ + int used; \ + \ + if (set == GB2312_set || ((ann & SO_ann) != CNS11643_1_ann \ +diff --git a/nscd/nscd.c b/nscd/nscd.c +index f74a7325ec06e4a6..b088069c0b102846 100644 +--- a/nscd/nscd.c ++++ b/nscd/nscd.c +@@ -634,7 +634,8 @@ do_exit (int child_ret, int errnum, const char *format, ...) + { + if (parent_fd != -1) + { +- int ret = write (parent_fd, &child_ret, sizeof (child_ret)); ++ int ret __attribute__ ((unused)); ++ ret = write (parent_fd, &child_ret, sizeof (child_ret)); + assert (ret == sizeof (child_ret)); + close (parent_fd); + } +@@ -666,7 +667,8 @@ notify_parent (int child_ret) + if (parent_fd == -1) + return; + +- int ret = write (parent_fd, &child_ret, sizeof (child_ret)); ++ int ret __attribute__ ((unused)); ++ ret = write (parent_fd, &child_ret, sizeof (child_ret)); + assert (ret == sizeof (child_ret)); + close (parent_fd); + parent_fd = -1; diff --git a/SOURCES/glibc-rh1505492-unused-17.patch b/SOURCES/glibc-rh1505492-unused-17.patch new file mode 100644 index 0000000..b479574 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-17.patch @@ -0,0 +1,71 @@ +commit b4f518ecfad09fc4279ea26a565332835e403dab +Author: Carlos O'Donell +Date: Tue Mar 15 23:16:47 2016 -0400 + + Fix building glibc master with NDEBUG and --with-cpu. + + When building on i686, x86_64, and arm, and with NDEBUG, or --with-cpu + there are various variables and functions which are unused based on + these settings. + + This patch marks all such variables with __attribute__((unused)) to + avoid the compiler warnings when building with the aformentioned + options. + +Conflicts: + dlfcn/bug-dl-leaf-lib.c + (Missing backport of fix for swbz#15897; file removed.) + sysdeps/arm/dl-machine.h + (Missing backport of fix for swbz#17078.) + +diff --git a/catgets/tst-catgets.c b/catgets/tst-catgets.c +index 140de722c893297d..fdc9f2758ffd60a1 100644 +--- a/catgets/tst-catgets.c ++++ b/catgets/tst-catgets.c +@@ -22,7 +22,7 @@ do_bz17905 (void) + { + char *buf; + struct rlimit rl; +- nl_catd result; ++ nl_catd result __attribute__ ((unused)); + + const int sz = 1024 * 1024; + +diff --git a/math/atest-exp.c b/math/atest-exp.c +index d384c4920acb044f..8f4711aaa90d09e5 100644 +--- a/math/atest-exp.c ++++ b/math/atest-exp.c +@@ -61,7 +61,7 @@ exp_mpn (mp1 ex, mp1 x) + unsigned n; + mp1 xp; + mp2 tmp; +- mp_limb_t chk; ++ mp_limb_t chk __attribute__ ((unused)); + mp1 tol; + + memset (xp, 0, sizeof (mp1)); +diff --git a/math/atest-exp2.c b/math/atest-exp2.c +index 1a2be9ba021bb24a..6f5dd7760c78b7e2 100644 +--- a/math/atest-exp2.c ++++ b/math/atest-exp2.c +@@ -102,7 +102,7 @@ exp_mpn (mp1 ex, mp1 x) + unsigned int n; + mp1 xp; + mp2 tmp; +- mp_limb_t chk; ++ mp_limb_t chk __attribute__ ((unused)); + mp1 tol; + + memset (xp, 0, sizeof (mp1)); +diff --git a/sysdeps/i386/i686/dl-hash.h b/sysdeps/i386/i686/dl-hash.h +index 14fbbc251148c176..65acc88a6e6f093c 100644 +--- a/sysdeps/i386/i686/dl-hash.h ++++ b/sysdeps/i386/i686/dl-hash.h +@@ -26,6 +26,7 @@ + would be much slower than the generic C implementation. So don't + use it. */ + static unsigned int ++__attribute__ ((unused)) + _dl_elf_hash (const char *name) + { + unsigned int result; diff --git a/SOURCES/glibc-rh1505492-unused-2.patch b/SOURCES/glibc-rh1505492-unused-2.patch new file mode 100644 index 0000000..e6feba8 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-2.patch @@ -0,0 +1,115 @@ +commit e4f223248ebf4bfaf5e300af96aacd0ddc6c30ed +Author: Siddhesh Poyarekar +Date: Tue Feb 19 21:20:44 2013 +0530 + + Fix some testsuite build warning fixes in libm + +diff --git a/math/atest-exp.c b/math/atest-exp.c +index f7342f1f36647451..d384c4920acb044f 100644 +--- a/math/atest-exp.c ++++ b/math/atest-exp.c +@@ -61,7 +61,7 @@ exp_mpn (mp1 ex, mp1 x) + unsigned n; + mp1 xp; + mp2 tmp; +- mp_limb_t chk, round; ++ mp_limb_t chk; + mp1 tol; + + memset (xp, 0, sizeof (mp1)); +@@ -79,7 +79,7 @@ exp_mpn (mp1 ex, mp1 x) + mpn_mul_n (tmp, xp, x, SZ); + assert (tmp[SZ * 2 - 1] == 0); + if (n > 0) +- round = mpn_divmod_1 (xp, tmp + FRAC / mpbpl, SZ, n); ++ mpn_divmod_1 (xp, tmp + FRAC / mpbpl, SZ, n); + chk = mpn_add_n (ex, ex, xp, SZ); + assert (chk == 0); + n++; +diff --git a/math/atest-exp2.c b/math/atest-exp2.c +index 4888490f568ccd96..1a2be9ba021bb24a 100644 +--- a/math/atest-exp2.c ++++ b/math/atest-exp2.c +@@ -102,7 +102,7 @@ exp_mpn (mp1 ex, mp1 x) + unsigned int n; + mp1 xp; + mp2 tmp; +- mp_limb_t chk, round; ++ mp_limb_t chk; + mp1 tol; + + memset (xp, 0, sizeof (mp1)); +@@ -120,7 +120,7 @@ exp_mpn (mp1 ex, mp1 x) + mpn_mul_n (tmp, xp, x, SZ); + assert(tmp[SZ * 2 - 1] == 0); + if (n > 0) +- round = mpn_divmod_1 (xp, tmp + FRAC / mpbpl, SZ, n); ++ mpn_divmod_1 (xp, tmp + FRAC / mpbpl, SZ, n); + chk = mpn_add_n (ex, ex, xp, SZ); + assert (chk == 0); + ++n; +diff --git a/math/atest-sincos.c b/math/atest-sincos.c +index d4d35e3c95ab5e29..f4e060b427d30678 100644 +--- a/math/atest-sincos.c ++++ b/math/atest-sincos.c +@@ -64,7 +64,6 @@ sincosx_mpn (mp1 si, mp1 co, mp1 xx, mp1 ix) + int i; + mp2 s[4], c[4]; + mp1 tmp, x; +- mp_limb_t chk, round; + + if (ix == NULL) + { +@@ -79,34 +78,38 @@ sincosx_mpn (mp1 si, mp1 co, mp1 xx, mp1 ix) + for (i = 0; i < 1 << N; i++) + { + #define add_shift_mulh(d,x,s1,s2,sh,n) \ +- /* d = (n ? -1 : 1) * (s1 + (s2>>sh)) * x / (1>>N); */ \ + do { \ + if (s2 != NULL) { \ + if (sh > 0) { \ + assert (sh < mpbpl); \ + mpn_lshift (tmp, s1, SZ, sh); \ +- chk = (n ? mpn_sub_n : mpn_add_n)(tmp,tmp,s2+FRAC/mpbpl,SZ); \ +- } else \ +- chk = (n ? mpn_sub_n : mpn_add_n)(tmp,s1,s2+FRAC/mpbpl,SZ); \ +- /* assert(chk == 0); */ \ ++ if (n) \ ++ mpn_sub_n (tmp,tmp,s2+FRAC/mpbpl,SZ); \ ++ else \ ++ mpn_add_n (tmp,tmp,s2+FRAC/mpbpl,SZ); \ ++ } else { \ ++ if (n) \ ++ mpn_sub_n (tmp,s1,s2+FRAC/mpbpl,SZ); \ ++ else \ ++ mpn_add_n (tmp,s1,s2+FRAC/mpbpl,SZ); \ ++ } \ + mpn_mul_n(d,tmp,x,SZ); \ + } else \ + mpn_mul_n(d,s1,x,SZ); \ +- /* assert(d[SZ*2-1] == 0); */ \ + assert(N+sh < mpbpl); \ + if (N+sh > 0) mpn_rshift(d,d,2*SZ,N+sh); \ + } while(0) + #define summ(d,ss,s,n) \ +- /* d = ss +/- (s[0]+2*s[1]+2*s[2]+s[3])/6; */ \ + do { \ +- chk = mpn_add_n(tmp,s[1]+FRAC/mpbpl,s[2]+FRAC/mpbpl,SZ); \ ++ mpn_add_n(tmp,s[1]+FRAC/mpbpl,s[2]+FRAC/mpbpl,SZ); \ + mpn_lshift(tmp,tmp,SZ,1); \ +- chk |= mpn_add_n(tmp,tmp,s[0]+FRAC/mpbpl,SZ); \ +- chk |= mpn_add_n(tmp,tmp,s[3]+FRAC/mpbpl,SZ); \ +- round = mpn_divmod_1(tmp,tmp,SZ,6); \ +- /* chk |= mpn_add_1(tmp,tmp,SZ, (round > 3) ); */ \ +- chk |= (n ? mpn_sub_n : mpn_add_n)(d,ss,tmp,SZ); \ +- /* assert(chk == 0); */ \ ++ mpn_add_n(tmp,tmp,s[0]+FRAC/mpbpl,SZ); \ ++ mpn_add_n(tmp,tmp,s[3]+FRAC/mpbpl,SZ); \ ++ mpn_divmod_1(tmp,tmp,SZ,6); \ ++ if (n) \ ++ mpn_sub_n (d,ss,tmp,SZ); \ ++ else \ ++ mpn_add_n (d,ss,tmp,SZ); \ + } while (0) + + add_shift_mulh (s[0], x, co, NULL, 0, 0); /* s0 = h * c; */ diff --git a/SOURCES/glibc-rh1505492-unused-3.patch b/SOURCES/glibc-rh1505492-unused-3.patch new file mode 100644 index 0000000..c1fa84e --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-3.patch @@ -0,0 +1,43 @@ +Partial backport of: + +commit 7a2ad8cf392acfcaef319e722dda9101d4d8b6bd +Author: Adhemerval Zanella +Date: Wed Nov 13 06:45:19 2013 -0600 + + PowerPC: Fix __fe_mask_env export + + This patch does not export __fe_mask_env anymore, only providing a + compatibility symbol. It fixes BZ#14143. + +Only the removal of the unused variable is included here. + +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c +index e4bcd9800ddf1f33..dd57b9220317a075 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c +@@ -27,9 +27,8 @@ const fenv_t * + __fe_mask_env (void) + { + #if defined PR_SET_FPEXC && defined PR_FP_EXC_DISABLED +- int result; + INTERNAL_SYSCALL_DECL (err); +- result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED); ++ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED); + #else + __set_errno (ENOSYS); + #endif +diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c +index 46b94789801b73e5..03eb855d3bef33e5 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c ++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c +@@ -27,9 +27,8 @@ const fenv_t * + __fe_nomask_env (void) + { + #if defined PR_SET_FPEXC && defined PR_FP_EXC_PRECISE +- int result; + INTERNAL_SYSCALL_DECL (err); +- result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE); ++ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE); + #else + __set_errno (ENOSYS); + #endif diff --git a/SOURCES/glibc-rh1505492-unused-4.patch b/SOURCES/glibc-rh1505492-unused-4.patch new file mode 100644 index 0000000..a0f05be --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-4.patch @@ -0,0 +1,41 @@ +commit d540fc8a66507bbbdc7e6594872786527c7667fa +Author: Ondřej Bílka +Date: Mon Nov 18 13:12:29 2013 +0100 + + Remove unused variable. + +diff --git a/localedata/tests-mbwc/tst_mbrtowc.c b/localedata/tests-mbwc/tst_mbrtowc.c +index 3a6070a870550552..ffb33ce11e1d72b7 100644 +--- a/localedata/tests-mbwc/tst_mbrtowc.c ++++ b/localedata/tests-mbwc/tst_mbrtowc.c +@@ -16,7 +16,7 @@ tst_mbrtowc (FILE * fp, int debug_flg) + char w_flg, s_flg; + char *s; + size_t n; +- char t_flg, t_ini; ++ char t_flg; + static mbstate_t t = { 0 }; + mbstate_t *pt; + wchar_t wc, *pwc, wc_ex; +@@ -42,7 +42,6 @@ tst_mbrtowc (FILE * fp, int debug_flg) + s = TST_INPUT_SEQ (mbrtowc).s; + n = TST_INPUT_SEQ (mbrtowc).n; + t_flg = TST_INPUT_SEQ (mbrtowc).t_flg; +- t_ini = TST_INPUT_SEQ (mbrtowc).t_init; + pwc = (w_flg == 0) ? NULL : &wc; + + if (s_flg == 0) +@@ -56,12 +55,7 @@ tst_mbrtowc (FILE * fp, int debug_flg) + } + + pt = (t_flg == 0) ? NULL : &t; +-#if 0 +- if (t_ini != 0) +- { +- memset (&t, 0, sizeof (t)); +- } +-#endif ++ + TST_CLEAR_ERRNO; + ret = mbrtowc (pwc, s, n, pt); + TST_SAVE_ERRNO; diff --git a/SOURCES/glibc-rh1505492-unused-5.patch b/SOURCES/glibc-rh1505492-unused-5.patch new file mode 100644 index 0000000..15adb99 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-5.patch @@ -0,0 +1,20 @@ +commit c5eebdd084b77b0b581a3aa02213fa7cc5851216 +Author: Andreas Krebbel +Date: Tue Jan 7 09:40:00 2014 +0100 + + S/390: Get rid of unused variable warning in dl-machine.h + +diff --git a/sysdeps/s390/s390-32/dl-machine.h b/sysdeps/s390/s390-32/dl-machine.h +index febd99f8c6013f29..d2f57e6bbe13ec9d 100644 +--- a/sysdeps/s390/s390-32/dl-machine.h ++++ b/sysdeps/s390/s390-32/dl-machine.h +@@ -354,7 +354,8 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc, + return; + else + { +-#ifndef RESOLVE_CONFLICT_FIND_MAP ++#if !defined RTLD_BOOTSTRAP && !defined RESOLVE_CONFLICT_FIND_MAP ++ /* Only needed for R_390_COPY below. */ + const Elf32_Sym *const refsym = sym; + #endif + struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type); diff --git a/SOURCES/glibc-rh1505492-unused-6.patch b/SOURCES/glibc-rh1505492-unused-6.patch new file mode 100644 index 0000000..360b5c6 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-6.patch @@ -0,0 +1,20 @@ +commit 47df8251e8df7570d9581806113723aeb07dc35d +Author: Stefan Liebler +Date: Thu Nov 13 10:44:11 2014 +0100 + + S/390: Get rid of warning unused variable in dl-machine.h. + +diff --git a/sysdeps/s390/s390-64/dl-machine.h b/sysdeps/s390/s390-64/dl-machine.h +index d08ec8f783729db5..71266a168415d645 100644 +--- a/sysdeps/s390/s390-64/dl-machine.h ++++ b/sysdeps/s390/s390-64/dl-machine.h +@@ -299,7 +299,8 @@ elf_machine_rela (struct link_map *map, const Elf64_Rela *reloc, + return; + else + { +-#ifndef RESOLVE_CONFLICT_FIND_MAP ++#if !defined RTLD_BOOTSTRAP && !defined RESOLVE_CONFLICT_FIND_MAP ++ /* Only needed for R_390_COPY below. */ + const Elf64_Sym *const refsym = sym; + #endif + struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type); diff --git a/SOURCES/glibc-rh1505492-unused-7.patch b/SOURCES/glibc-rh1505492-unused-7.patch new file mode 100644 index 0000000..b636951 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-7.patch @@ -0,0 +1,28 @@ +commit bde2667a22c355467a4f07246c6d07a9dcc89366 +Author: Joseph Myers +Date: Tue Nov 25 21:40:51 2014 +0000 + + Fix warning in posix/bug-regex31.c. + + This patch fixes a "set but not used" warning in posix/bug-regex31.c. + A variable res stored an indication of whether the test behaved as + expected, but was then ignored and the test returned 0 unconditionally + (as an mtrace test, the auxiliary test for leaks could still have + failed if that bug was present). This patch makes the test return + res. + + Tested for x86_64. + + * posix/bug-regex31.c (main): Return RES not 0. + +diff --git a/posix/bug-regex31.c b/posix/bug-regex31.c +index fc485815fcf67d82..fd7e0c57cab515be 100644 +--- a/posix/bug-regex31.c ++++ b/posix/bug-regex31.c +@@ -33,5 +33,5 @@ main (void) + + free (buf); + +- return 0; ++ return res; + } diff --git a/SOURCES/glibc-rh1505492-unused-8.patch b/SOURCES/glibc-rh1505492-unused-8.patch new file mode 100644 index 0000000..469d5cc --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-8.patch @@ -0,0 +1,37 @@ +commit c82f5c0ce5c1c0180fca311ceb29fd2d59da7441 +Author: Joseph Myers +Date: Wed Nov 26 00:45:19 2014 +0000 + + Fix warning in setjmp/jmpbug.c. + + This patch fixes a "set but not used" warning in setjmp/jmpbug.c. A + variable is used only to store the result of alloca. A cast to void + is added to avoid the warning, and the variable is made volatile to + ensure the call to alloca isn't optimized away for being unused. + + Tested for x86_64. + + * setjmp/jmpbug.c (test): Make foo volatile and cast it to + void. + +diff --git a/setjmp/jmpbug.c b/setjmp/jmpbug.c +index 125977b2f719dbeb..8594c5a8a782b218 100644 +--- a/setjmp/jmpbug.c ++++ b/setjmp/jmpbug.c +@@ -14,7 +14,7 @@ static void + test (int x) + { + jmp_buf buf; +- char *foo; ++ char *volatile foo; + int arr[100]; + + arr[77] = x; +@@ -25,6 +25,7 @@ test (int x) + } + + foo = (char *) alloca (128); ++ (void) foo; + sub5 (buf); + } + diff --git a/SOURCES/glibc-rh1505492-unused-9.patch b/SOURCES/glibc-rh1505492-unused-9.patch new file mode 100644 index 0000000..b3ec6a4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-9.patch @@ -0,0 +1,56 @@ +commit 12da14a59135fe331f294b91488c1bdf55b35b4e +Author: Joseph Myers +Date: Wed Nov 26 12:54:39 2014 +0000 + + Fix warnings in fwscanf / rewind tests. + + This patch fixes "set but not used" warnings in the tests + libio/bug-rewind.c and libio/bug-rewind2.c by checking the return + values from fwscanf and making the tests fail if those values aren't + as expected. + + Tested for x86_64. + + * libio/bug-rewind.c (do_test): Check fwscanf return values. + * libio/bug-rewind2.c (do_test): Likewise. + +diff --git a/libio/bug-rewind.c b/libio/bug-rewind.c +index 4f8242df3d6d1f75..1734de285f30fff4 100644 +--- a/libio/bug-rewind.c ++++ b/libio/bug-rewind.c +@@ -52,9 +52,19 @@ do_test (void) + + rewind (fptr); + ret1 = fwscanf (fptr, L"%c%c", &arg1, &arg2); ++ if (ret1 != 2) ++ { ++ printf ("first fwscanf returned %d, expected 2\n", ret1); ++ return 3; ++ } + + rewind (fptr); + ret2 = fwscanf (fptr, L"%c%n%c", &arg1, &num, &arg2); ++ if (ret2 != 2) ++ { ++ printf ("second fwscanf returned %d, expected 2\n", ret2); ++ return 4; ++ } + + if (arg2 != 'd') + { +diff --git a/libio/bug-rewind2.c b/libio/bug-rewind2.c +index 51b574433029f835..496f628675b36fcc 100644 +--- a/libio/bug-rewind2.c ++++ b/libio/bug-rewind2.c +@@ -45,6 +45,11 @@ do_test (void) + + rewind (fp); + ret = fwscanf (fp, L"%c", dummy); ++ if (ret != 1) ++ { ++ printf ("fwscanf returned %d, expected 1\n", ret); ++ result = 1; ++ } + + printf ("current pos = %ld\n", ftell (fp)); + if (ftell (fp) != 1) diff --git a/SOURCES/glibc-rh1505492-unused-math.patch b/SOURCES/glibc-rh1505492-unused-math.patch new file mode 100644 index 0000000..b541793 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-math.patch @@ -0,0 +1,61 @@ +Partial backport of: + +commit 6d9f97e1f2b60fe6ca33e0e75e8048c35a39df0e +Author: Siddhesh Poyarekar +Date: Fri Dec 28 18:53:17 2012 +0530 + + Replace more constants with their values + +Only the removal of unused constants from header files is uncluded +here. + +diff --git a/sysdeps/ieee754/dbl-64/ulog.h b/sysdeps/ieee754/dbl-64/ulog.h +index 0bca23f0d5d08719..877e747d720ef8fb 100644 +--- a/sysdeps/ieee754/dbl-64/ulog.h ++++ b/sysdeps/ieee754/dbl-64/ulog.h +@@ -80,10 +80,6 @@ + /**/ d19 = {{0x3faaf286, 0xbca1af28} }, /* 1/19 */ + /**/ d20 = {{0xbfa99999, 0x9999999a} }, /* -1/20 */ + /* constants */ +-/**/ zero = {{0x00000000, 0x00000000} }, /* 0 */ +-/**/ one = {{0x3ff00000, 0x00000000} }, /* 1 */ +-/**/ half = {{0x3fe00000, 0x00000000} }, /* 1/2 */ +-/**/ mhalf = {{0xbfe00000, 0x00000000} }, /* -1/2 */ + /**/ sqrt_2 = {{0x3ff6a09e, 0x667f3bcc} }, /* sqrt(2) */ + /**/ h1 = {{0x3fd2e000, 0x00000000} }, /* 151/2**9 */ + /**/ h2 = {{0x3f669000, 0x00000000} }, /* 361/2**17 */ +@@ -156,10 +152,6 @@ + /**/ d19 = {{0xbca1af28, 0x3faaf286} }, /* 1/19 */ + /**/ d20 = {{0x9999999a, 0xbfa99999} }, /* -1/20 */ + /* constants */ +-/**/ zero = {{0x00000000, 0x00000000} }, /* 0 */ +-/**/ one = {{0x00000000, 0x3ff00000} }, /* 1 */ +-/**/ half = {{0x00000000, 0x3fe00000} }, /* 1/2 */ +-/**/ mhalf = {{0x00000000, 0xbfe00000} }, /* -1/2 */ + /**/ sqrt_2 = {{0x667f3bcc, 0x3ff6a09e} }, /* sqrt(2) */ + /**/ h1 = {{0x00000000, 0x3fd2e000} }, /* 151/2**9 */ + /**/ h2 = {{0x00000000, 0x3f669000} }, /* 361/2**17 */ +diff --git a/sysdeps/ieee754/dbl-64/utan.h b/sysdeps/ieee754/dbl-64/utan.h +index cfbb5f9397e00fec..e7456b71c35fd530 100644 +--- a/sysdeps/ieee754/dbl-64/utan.h ++++ b/sysdeps/ieee754/dbl-64/utan.h +@@ -83,9 +83,7 @@ + /* constants */ + /**/ zero = {{0x00000000, 0x00000000} }, /* 0 */ + /**/ one = {{0x3ff00000, 0x00000000} }, /* 1 */ +-/**/ mone = {{0xbff00000, 0x00000000} }, /*-1 */ + /**/ mfftnhf = {{0xc02f0000, 0x00000000} }, /*-15.5 */ +-/**/ two8 = {{0x40700000, 0x00000000} }, /* 256 */ + + /**/ g1 = {{0x3e4b096c, 0x00000000} }, /* 1.259e-8 */ + /**/ g2 = {{0x3faf212d, 0x00000000} }, /* 0.0608 */ +@@ -204,9 +202,7 @@ + /* constants */ + /**/ zero = {{0x00000000, 0x00000000} }, /* 0 */ + /**/ one = {{0x00000000, 0x3ff00000} }, /* 1 */ +-/**/ mone = {{0x00000000, 0xbff00000} }, /*-1 */ + /**/ mfftnhf = {{0x00000000, 0xc02f0000} }, /*-15.5 */ +-/**/ two8 = {{0x00000000, 0x40700000} }, /* 256 */ + + /**/ g1 = {{0x00000000, 0x3e4b096c} }, /* 1.259e-8 */ + /**/ g2 = {{0x00000000, 0x3faf212d} }, /* 0.0608 */ diff --git a/SOURCES/glibc-rh1505492-unused-tst-default-attr.patch b/SOURCES/glibc-rh1505492-unused-tst-default-attr.patch new file mode 100644 index 0000000..dfc6dd1 --- /dev/null +++ b/SOURCES/glibc-rh1505492-unused-tst-default-attr.patch @@ -0,0 +1,16 @@ +The test nptl/tst-default-attr.c contained an unused value. This is an +issue specific to glibc-rh990388-4.patch, which is not present upstream. + +diff --git a/nptl/tst-default-attr.c b/nptl/tst-default-attr.c +index aeb52725f28a5f03..de63c638f48c03b2 100644 +--- a/nptl/tst-default-attr.c ++++ b/nptl/tst-default-attr.c +@@ -110,8 +110,6 @@ run_threads (void) + static int + do_test (void) + { +- pthread_attr_t attr; +- + pagesize = sysconf (_SC_PAGESIZE); + if (pagesize < 0) + { diff --git a/SOURCES/glibc-rh1505492-werror-activate.patch b/SOURCES/glibc-rh1505492-werror-activate.patch new file mode 100644 index 0000000..12ddecf --- /dev/null +++ b/SOURCES/glibc-rh1505492-werror-activate.patch @@ -0,0 +1,231 @@ +commit a4ecc9eb9b15bc51a1dc4726c06d35eaea74e162 +Author: Joseph Myers +Date: Wed Dec 10 01:14:48 2014 +0000 + + Use -Werror by default, add --disable-werror. + + As discussed starting at + , this + patch makes the glibc build use -Werror by default to avoid + accidentally adding new warnings to the build. The configure option + --disable-werror can be used to disable this. + + -Wno-error=undef is temporarily used because the build isn't clean + regarding -Wundef warnings. The idea is that once the remaining + -Wundef warnings have been cleaned up (in at least one configuration), + -Wno-error=undef will be removed. + + I get a clean build and test on x86_64 (GCC 4.9 branch) with this + patch. The expectation is that this may well break the build for some + other configurations, and people seeing such breakage should make + appropriate fixes to fix or suppress the warnings for their + configurations. In some cases that may involve using pragmas as the + right fix (I think that will be right for the -Wno-inline issue for + MIPS I referred to in + , for + example), in some cases -Wno-error in sysdeps makefiles (__restore_rt + in MIPS sigaction, for example), in some cases substantive fixes for + the warnings. + + Note that if, with a view to listing all the warnings then fixing them + all, you just look for "warning:" in output from building and testing + with --disable-werror, you'll see lots of warnings from the linker + about functions such as tmpnam. Those warnings can be ignored - only + compiler warnings are relevant to -Werror, not linker warnings. + + * configure.ac (--disable-werror): New configure option. + (enable_werror): New AC_SUBST. + * configure: Regenerated. + * config.make.in (enable-werror): New variable. + * Makeconfig [$(enable-werror) = yes] (+gccwarn): Add -Werror + -Wno-error=undef. + (+gccwarn-c): Do not use -Werror=implicit-function-declaration. + * manual/install.texi (Configuring and compiling): Document + --disable-werror. + * INSTALL: Regenerated. + * debug/Makefile (CFLAGS-tst-chk1.c): Add -Wno-error. + (CFLAGS-tst-chk2.c): Likewise. + (CFLAGS-tst-chk3.c): Likewise. + (CFLAGS-tst-chk4.cc): Likewise. + (CFLAGS-tst-chk5.cc): Likewise. + (CFLAGS-tst-chk6.cc): Likewise. + (CFLAGS-tst-lfschk1.c): Likewise. + (CFLAGS-tst-lfschk2.c): Likewise. + (CFLAGS-tst-lfschk3.c): Likewise. + (CFLAGS-tst-lfschk4.cc): Likewise. + (CFLAGS-tst-lfschk5.cc): Likewise. + (CFLAGS-tst-lfschk6.cc): Likewise. + +Conflicts: + INSTALL + manual/install.texi + (Textual conflicts due to elision backport; + glibc-rh841653-0.patch and others) + configure.ac + (Change applied to configure.in instead.) + +diff --git a/INSTALL b/INSTALL +index 264e57bc5f0316f7..82b29f5d8746f929 100644 +--- a/INSTALL ++++ b/INSTALL +@@ -143,6 +143,13 @@ will be used, and CFLAGS sets optimization options for the compiler. + `--enable-lock-elision=yes' + Enable lock elision for pthread mutexes by default. + ++`--disable-werror' ++ By default, the GNU C Library is built with `-Werror'. If you wish ++ to build without this option (for example, if building with a newer ++ version of GCC than this version of the GNU C Library was tested ++ with, so new warnings cause the build with `-Werror' to fail), you ++ can configure with `--disable-werror'. ++ + `--build=BUILD-SYSTEM' + `--host=HOST-SYSTEM' + These options are for cross-compiling. If you specify both +diff --git a/Makeconfig b/Makeconfig +index 02f1cc1255c5ac07..6f61e4835c0a7770 100644 +--- a/Makeconfig ++++ b/Makeconfig +@@ -644,7 +644,10 @@ else + +gccwarn := -Wall -Wwrite-strings -Winline + endif + +gccwarn += -Wundef +-+gccwarn-c = -Wstrict-prototypes -Werror=implicit-function-declaration ++ifeq ($(enable-werror),yes) +++gccwarn += -Werror -Wno-error=undef ++endif +++gccwarn-c = -Wstrict-prototypes + + # We do not depend on the address of constants in different files to be + # actually different, so allow the compiler to merge them all. +diff --git a/config.make.in b/config.make.in +index d5490f61cd3faeba..3c65c9f03ab65a74 100644 +--- a/config.make.in ++++ b/config.make.in +@@ -49,6 +49,7 @@ sysheaders = @sysheaders@ + sysincludes = @SYSINCLUDES@ + c++-sysincludes = @CXX_SYSINCLUDES@ + all-warnings = @all_warnings@ ++enable-werror = @enable_werror@ + + have-z-combreloc = @libc_cv_z_combreloc@ + have-z-execstack = @libc_cv_z_execstack@ +diff --git a/configure b/configure +index b185b400dfbc21de..769f0fa149d0ef9c 100755 +--- a/configure ++++ b/configure +@@ -660,6 +660,7 @@ build_pt_chown + build_nscd + link_obsolete_rpc + libc_cv_nss_crypt ++enable_werror + all_warnings + force_install + bindnow +@@ -758,6 +759,7 @@ enable_static_nss + enable_force_install + enable_kernel + enable_all_warnings ++enable_werror + enable_multi_arch + enable_nss_crypt + enable_obsolete_rpc +@@ -1419,6 +1421,7 @@ Optional Features: + --enable-kernel=VERSION compile for compatibility with kernel not older than + VERSION + --enable-all-warnings enable all useful warnings gcc can issue ++ --disable-werror do not build with -Werror + --enable-multi-arch enable single DSO with optimizations for multiple + architectures + --enable-nss-crypt enable libcrypt to use nss +@@ -3803,6 +3806,15 @@ fi + + + ++# Check whether --enable-werror was given. ++if test "${enable_werror+set}" = set; then : ++ enableval=$enable_werror; enable_werror=$enableval ++else ++ enable_werror=yes ++fi ++ ++ ++ + # Check whether --enable-multi-arch was given. + if test "${enable_multi_arch+set}" = set; then : + enableval=$enable_multi_arch; multi_arch=$enableval +diff --git a/configure.in b/configure.in +index f8c36ba306e01f59..9feb463ddfed2a27 100644 +--- a/configure.in ++++ b/configure.in +@@ -234,6 +234,13 @@ AC_ARG_ENABLE([all-warnings], + []) + AC_SUBST(all_warnings) + ++AC_ARG_ENABLE([werror], ++ AC_HELP_STRING([--disable-werror], ++ [do not build with -Werror]), ++ [enable_werror=$enableval], ++ [enable_werror=yes]) ++AC_SUBST(enable_werror) ++ + AC_ARG_ENABLE([multi-arch], + AC_HELP_STRING([--enable-multi-arch], + [enable single DSO with optimizations for multiple architectures]), +diff --git a/debug/Makefile b/debug/Makefile +index e4efd9bcc687e562..6588b6327ae01205 100644 +--- a/debug/Makefile ++++ b/debug/Makefile +@@ -89,19 +89,21 @@ CFLAGS-tst-longjmp_chk2.c = -fexceptions -fasynchronous-unwind-tables + CPPFLAGS-tst-longjmp_chk2.c = -D_FORTIFY_SOURCE=1 + + # We know these tests have problems with format strings, this is what +-# we are testing. Disable that warning. +-CFLAGS-tst-chk1.c = -Wno-format +-CFLAGS-tst-chk2.c = -Wno-format +-CFLAGS-tst-chk3.c = -Wno-format +-CFLAGS-tst-chk4.cc = -Wno-format +-CFLAGS-tst-chk5.cc = -Wno-format +-CFLAGS-tst-chk6.cc = -Wno-format +-CFLAGS-tst-lfschk1.c = -Wno-format +-CFLAGS-tst-lfschk2.c = -Wno-format +-CFLAGS-tst-lfschk3.c = -Wno-format +-CFLAGS-tst-lfschk4.cc = -Wno-format +-CFLAGS-tst-lfschk5.cc = -Wno-format +-CFLAGS-tst-lfschk6.cc = -Wno-format ++# we are testing. Disable that warning. They also generate warnings ++# from warning attributes, which cannot be disabled via pragmas, so ++# require -Wno-error to be used. ++CFLAGS-tst-chk1.c = -Wno-format -Wno-error ++CFLAGS-tst-chk2.c = -Wno-format -Wno-error ++CFLAGS-tst-chk3.c = -Wno-format -Wno-error ++CFLAGS-tst-chk4.cc = -Wno-format -Wno-error ++CFLAGS-tst-chk5.cc = -Wno-format -Wno-error ++CFLAGS-tst-chk6.cc = -Wno-format -Wno-error ++CFLAGS-tst-lfschk1.c = -Wno-format -Wno-error ++CFLAGS-tst-lfschk2.c = -Wno-format -Wno-error ++CFLAGS-tst-lfschk3.c = -Wno-format -Wno-error ++CFLAGS-tst-lfschk4.cc = -Wno-format -Wno-error ++CFLAGS-tst-lfschk5.cc = -Wno-format -Wno-error ++CFLAGS-tst-lfschk6.cc = -Wno-format -Wno-error + LDLIBS-tst-chk4 = -lstdc++ + LDLIBS-tst-chk5 = -lstdc++ + LDLIBS-tst-chk6 = -lstdc++ +diff --git a/manual/install.texi b/manual/install.texi +index 7fe6e005c3fdd5fb..3799cee621ddc4f9 100644 +--- a/manual/install.texi ++++ b/manual/install.texi +@@ -177,6 +177,13 @@ you understand and accept those risks. + @item --enable-lock-elision=yes + Enable lock elision for pthread mutexes by default. + ++@item --disable-werror ++By default, @theglibc{} is built with @option{-Werror}. If you wish ++to build without this option (for example, if building with a newer ++version of GCC than this version of @theglibc{} was tested with, so ++new warnings cause the build with @option{-Werror} to fail), you can ++configure with @option{--disable-werror}. ++ + @item --build=@var{build-system} + @itemx --host=@var{host-system} + These options are for cross-compiling. If you specify both options and diff --git a/SOURCES/glibc-rh1505492-winline.patch b/SOURCES/glibc-rh1505492-winline.patch new file mode 100644 index 0000000..62085e8 --- /dev/null +++ b/SOURCES/glibc-rh1505492-winline.patch @@ -0,0 +1,34 @@ +commit ed159672eb3cd650a32b7e5cb4d5ec1fe0e63802 +Author: Florian Weimer +Date: Fri Apr 24 11:10:24 2015 +0200 + + Do not build with -Winline + + -Winline causes architecture- and optimization-dependent build failures + due to -Werror. -Winline warns about inlining decisions based on + branch hints, in effect preventing the use of inline functions in + header files (because they might be called on unlikely branches, leading + to a decision not to inline). + + The option was apparently added to the glibc build at a time when GCC + did not support the always_inline attribute. With current GCC versions, + inlining failure for functions declared always_inline will receive a + warning under -Wattributes, which is enabled by default, so -Winline + appears unnecessary. + +diff --git a/Makeconfig b/Makeconfig +index 6f61e4835c0a7770..b1bf7f24b6154e3d 100644 +--- a/Makeconfig ++++ b/Makeconfig +@@ -639,9 +639,9 @@ endif + + # Extra flags to pass to GCC. + ifeq ($(all-warnings),yes) +-+gccwarn := -Wall -Wwrite-strings -Winline -Wcast-qual -Wbad-function-cast -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wcomment -Wcomments -Wtrigraphs -Wsign-compare -Wfloat-equal -Wmultichar +++gccwarn := -Wall -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wcomment -Wcomments -Wtrigraphs -Wsign-compare -Wfloat-equal -Wmultichar + else +-+gccwarn := -Wall -Wwrite-strings -Winline +++gccwarn := -Wall -Wwrite-strings + endif + +gccwarn += -Wundef + ifeq ($(enable-werror),yes) diff --git a/SOURCES/glibc-rh1505492-zerodiv-1.patch b/SOURCES/glibc-rh1505492-zerodiv-1.patch new file mode 100644 index 0000000..645b3c4 --- /dev/null +++ b/SOURCES/glibc-rh1505492-zerodiv-1.patch @@ -0,0 +1,72 @@ +commit c81e9deba2f73ddc6f62a9d41684824c854366c6 +Author: Joseph Myers +Date: Wed Dec 10 00:43:36 2014 +0000 + + Disable -Wdiv-by-zero for some tests in stdio-common/tst-unlockedio.c. + + This patch uses diagnostic control pragmas to disable some + division-by-zero warnings in stdio-common/tst-unlockedio.c. This is + another test where disabling warnings using diagnostic pragmas seems + appropriate (the warnings are not wildly inappropriate for what the + test deliberately does; the deliberate use of unusual arguments to the + macros being tested means that changing the arguments in a way that + avoids the warning would also unduly perturb what is being tested). + + Tested for x86_64. + + * stdio-common/tst-unlockedio.c: Include . + (do_test): Disable -Wdiv-by-zero around some calls to + fwrite_unlocked and fread_unlocked. + +diff --git a/stdio-common/tst-unlockedio.c b/stdio-common/tst-unlockedio.c +index 2e5848ec5f49b693..5ce02fe6f5c7ea5c 100644 +--- a/stdio-common/tst-unlockedio.c ++++ b/stdio-common/tst-unlockedio.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + int fd; + static void do_prepare (void); +@@ -44,6 +45,13 @@ do_test (void) + + f = fp; + cp = blah; ++ /* These tests deliberately use fwrite_unlocked with the size ++ argument specified as 0, which results in "division by zero" ++ warnings from the expansion of that macro (in code that is not ++ evaluated for a size of 0). This applies to the tests of ++ fread_unlocked below as well. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdiv-by-zero"); + if (ftello (fp) != 0 + || fwrite_unlocked (blah, blah - blah, strlen (blah), f++) != 0 + || f != fp + 1 +@@ -59,6 +67,7 @@ do_test (void) + puts ("One of fwrite_unlocked tests failed"); + exit (1); + } ++ DIAG_POP_NEEDS_COMMENT; + + if (fwrite_unlocked (blah, 1, strlen (blah) - 2, fp) != strlen (blah) - 2) + { +@@ -93,6 +102,9 @@ do_test (void) + f = fp; + wp = buf; + memset (buf, ' ', sizeof (buf)); ++ /* See explanation above. */ ++ DIAG_PUSH_NEEDS_COMMENT; ++ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdiv-by-zero"); + if (ftello (fp) != 0 + || fread_unlocked (buf, buf - buf, strlen (blah), f++) != 0 + || f != fp + 1 +@@ -109,6 +121,7 @@ do_test (void) + puts ("One of fread_unlocked tests failed"); + exit (1); + } ++ DIAG_POP_NEEDS_COMMENT; + + if (fread_unlocked (buf, 1, strlen (blah) - 2, fp) != strlen (blah) - 2) + { diff --git a/SOURCES/glibc-rh1505492-zerodiv-log.patch b/SOURCES/glibc-rh1505492-zerodiv-log.patch new file mode 100644 index 0000000..06746d8 --- /dev/null +++ b/SOURCES/glibc-rh1505492-zerodiv-log.patch @@ -0,0 +1,19 @@ +Suppress integer division by zero warnings by using floating-point +literals. Introduced by glibc-rh1409611.patch. + +diff --git a/sysdeps/ieee754/dbl-64/e_log.c b/sysdeps/ieee754/dbl-64/e_log.c +index 930aa0eed8ec7818..e3e0eda594735f62 100644 +--- a/sysdeps/ieee754/dbl-64/e_log.c ++++ b/sysdeps/ieee754/dbl-64/e_log.c +@@ -78,9 +78,9 @@ __ieee754_log(double x) { + n=0; + if (__builtin_expect(ux < 0x00100000, 0)) { + if (__builtin_expect(((ux & 0x7fffffff) | dx) == 0, 0)) +- return MHALF/0; /* return -INF */ ++ return MHALF/0.0; /* return -INF */ + if (__builtin_expect(ux < 0, 0)) +- return (x-x)/0; /* return NaN */ ++ return (x-x)/0.0; /* return NaN */ + n -= 54; x *= two54.d; /* scale x */ + num.d = x; + } diff --git a/SOURCES/glibc-rh1505500.patch b/SOURCES/glibc-rh1505500.patch new file mode 100644 index 0000000..f046f9d --- /dev/null +++ b/SOURCES/glibc-rh1505500.patch @@ -0,0 +1,57 @@ +commit 363a98991884a744e78b9bfc7df89768901c0816 +Author: Ondřej Bílka +Date: Tue Dec 16 00:09:32 2014 +0100 + + Return allocated array instead of unallocated. + + In locale/programs/ld-ctype.c we returned array that was on stack. + Fixed by returning static array instead. + +Index: b/locale/programs/ld-ctype.c +=================================================================== +--- a/locale/programs/ld-ctype.c ++++ b/locale/programs/ld-ctype.c +@@ -113,6 +113,9 @@ struct translit_include_t + struct translit_include_t *next; + }; + ++/* Provide some dummy pointer for empty string. */ ++static uint32_t no_str[] = { 0 }; ++ + + /* Sparse table of uint32_t. */ + #define TABLE idx_table +@@ -1873,7 +1876,7 @@ find_translit2 (struct locale_ctype_t *c + + for (wi = tirunp->from; wi <= wch; wi += tirunp->step) + if (wi == wch) +- return (uint32_t []) { 0 }; ++ return no_str; + } + } + +@@ -1927,7 +1930,7 @@ read_widestring (struct linereader *ldfi + + if (now->tok == tok_default_missing) + /* The special name "" will denote this case. */ +- wstr = ((uint32_t *) { 0 }); ++ wstr = no_str; + else if (now->tok == tok_bsymbol) + { + /* Get the value from the repertoire. */ +@@ -4244,12 +4247,9 @@ allocate_arrays (struct locale_ctype_t * + } + else + { +- /* Provide some dummy pointers since we have nothing to write out. */ +- static uint32_t no_str = { 0 }; +- +- ctype->translit_from_idx = &no_str; +- ctype->translit_from_tbl = &no_str; +- ctype->translit_to_tbl = &no_str; ++ ctype->translit_from_idx = no_str; ++ ctype->translit_from_tbl = no_str; ++ ctype->translit_to_tbl = no_str; + ctype->translit_idx_size = 0; + ctype->translit_from_tbl_size = 0; + ctype->translit_to_tbl_size = 0; diff --git a/SOURCES/glibc-rh1505647.patch b/SOURCES/glibc-rh1505647.patch new file mode 100644 index 0000000..2a13e6e --- /dev/null +++ b/SOURCES/glibc-rh1505647.patch @@ -0,0 +1,47 @@ +commit 1c81d55fc4b07b51adf68558ba74ce975153e580 +Author: DJ Delorie +Date: Thu Mar 1 23:20:45 2018 -0500 + + [BZ #22342] Fix netgroup cache keys. + + Unlike other nscd caches, the netgroup cache contains two types of + records - those for "iterate through a netgroup" (i.e. setnetgrent()) + and those for "is this user in this netgroup" (i.e. innetgr()), + i.e. full and partial records. The timeout code assumes these records + have the same key for the group name, so that the collection of records + that is "this netgroup" can be expired as a unit. + + However, the keys are not the same, as the in-netgroup key is generated + by nscd rather than being passed to it from elsewhere, and is generated + without the trailing NUL. All other keys have the trailing NUL, and as + noted in the linked BZ, debug statements confirm that two keys for the + same netgroup are added to the cache with two different lengths. + + The result of this is that as records in the cache expire, the purge + code only cleans out one of the two types of entries, resulting in + stale, possibly incorrect, and possibly inconsistent cache data. + + The patch simply includes the existing NUL in the computation for the + key length ('key' points to the char after the NUL, and 'group' to the + first char of the group, so 'key-group' includes the first char to the + NUL, inclusive). + + [BZ #22342] + * nscd/netgroupcache.c (addinnetgrX): Include trailing NUL in + key value. + + Reviewed-by: Carlos O'Donell + +diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c +index b832c93..2f187b2 100644 +--- a/nscd/netgroupcache.c ++++ b/nscd/netgroupcache.c +@@ -480,7 +480,7 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, + { + const char *group = key; + key = (char *) rawmemchr (key, '\0') + 1; +- size_t group_len = key - group - 1; ++ size_t group_len = key - group; + const char *host = *key++ ? key : NULL; + if (host != NULL) + key = (char *) rawmemchr (key, '\0') + 1; diff --git a/SOURCES/glibc-rh1526193.patch b/SOURCES/glibc-rh1526193.patch new file mode 100644 index 0000000..afba9f6 --- /dev/null +++ b/SOURCES/glibc-rh1526193.patch @@ -0,0 +1,61 @@ +commit 9ce673b69e82578044958f66d93dcaddb23f6e95 +Author: Florian Weimer +Date: Wed Aug 30 16:20:20 2017 +0200 + + Do not scale NPTL tests with available number of CPUs + + On very large multi-processor systems, creating hundreds of threads + runs into a test time out. The tests do not seem to benefit from + massive over-scheduling. + +Index: b/nptl/tst-cond16.c +=================================================================== +--- a/nptl/tst-cond16.c ++++ b/nptl/tst-cond16.c +@@ -27,7 +27,7 @@ pthread_cond_t cv = PTHREAD_COND_INITIAL + pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; + bool n, exiting; + FILE *f; +-int count; ++enum { count = 8 }; /* Number of worker threads. */ + + void * + tf (void *dummy) +@@ -70,11 +70,6 @@ do_test (void) + return 1; + } + +- count = sysconf (_SC_NPROCESSORS_ONLN); +- if (count <= 0) +- count = 1; +- count *= 4; +- + pthread_t th[count]; + pthread_attr_t attr; + int i, ret, sz; +Index: b/nptl/tst-cond18.c +=================================================================== +--- a/nptl/tst-cond18.c ++++ b/nptl/tst-cond18.c +@@ -27,7 +27,8 @@ + pthread_cond_t cv = PTHREAD_COND_INITIALIZER; + pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; + bool exiting; +-int fd, count, spins, nn; ++int fd, spins, nn; ++enum { count = 8 }; /* Number of worker threads. */ + + void * + tf (void *id) +@@ -81,11 +82,6 @@ do_test (void) + return 1; + } + +- count = sysconf (_SC_NPROCESSORS_ONLN); +- if (count <= 0) +- count = 1; +- count *= 8; +- + pthread_t th[count + 1]; + pthread_attr_t attr; + int i, ret, sz; diff --git a/SOURCES/glibc-rh1531168-1.patch b/SOURCES/glibc-rh1531168-1.patch new file mode 100644 index 0000000..d5f3b4c --- /dev/null +++ b/SOURCES/glibc-rh1531168-1.patch @@ -0,0 +1,29 @@ +commit 8e1f346462d8c1b238a7c6bb501c45b381a45e4d +Author: H.J. Lu +Date: Sun Jul 12 14:38:58 2015 -0700 + + Align stack to 16 bytes when calling __setcontext + + Don't use pop to restore %rdi so that stack is aligned to 16 bytes + when calling __setcontext. + + [BZ #18661] + * sysdeps/unix/sysv/linux/x86_64/__start_context.S + (__start_context): Don't use pop to restore %rdi so that stack + is aligned to 16 bytes when calling __setcontext. + +diff --git a/sysdeps/unix/sysv/linux/x86_64/__start_context.S b/sysdeps/unix/sysv/linux/x86_64/__start_context.S +index 9f2ee23736bfbf70..f59d6b4f7f3d3d43 100644 +--- a/sysdeps/unix/sysv/linux/x86_64/__start_context.S ++++ b/sysdeps/unix/sysv/linux/x86_64/__start_context.S +@@ -31,8 +31,8 @@ ENTRY(__start_context) + on the stack pointer for the next context. */ + movq %rbx, %rsp + +- popq %rdi /* This is the next context. */ +- cfi_adjust_cfa_offset(-8) ++ /* Don't use pop here so that stack is aligned to 16 bytes. */ ++ movq (%rsp), %rdi /* This is the next context. */ + testq %rdi, %rdi + je 2f /* If it is zero exit. */ + diff --git a/SOURCES/glibc-rh1531168-2.patch b/SOURCES/glibc-rh1531168-2.patch new file mode 100644 index 0000000..a544ec1 --- /dev/null +++ b/SOURCES/glibc-rh1531168-2.patch @@ -0,0 +1,32 @@ +commit bbab82c25da9b504c0804119840de7aeab0eeeba +Author: Andreas Schwab +Date: Tue Aug 4 12:35:50 2015 +0200 + + Properly terminate FDE in makecontext for ix86 (bug 18635) + +Downstream never set test-xfail-tst-makecontext, so it is not removed by +this patch. + +diff --git a/sysdeps/unix/sysv/linux/i386/makecontext.S b/sysdeps/unix/sysv/linux/i386/makecontext.S +index 106b865066d346b6..48643864b05568b0 100644 +--- a/sysdeps/unix/sysv/linux/i386/makecontext.S ++++ b/sysdeps/unix/sysv/linux/i386/makecontext.S +@@ -83,6 +83,10 @@ ENTRY(__makecontext) + #else + movl $L(exitcode), (%edx) + #endif ++ /* We need to terminate the FDE here instead of after ret because ++ the unwinder looks at ra-1 for unwind information. */ ++ cfi_endproc ++ + /* 'makecontext' returns no value. */ + ret + +@@ -92,7 +96,6 @@ ENTRY(__makecontext) + the context 'makecontext' manipulated at the time of the + 'makecontext' call. If the pointer is NULL the process must + terminate. */ +- cfi_endproc + L(exitcode): + /* This removes the parameters passed to the function given to + 'makecontext' from the stack. EBX contains the number of diff --git a/SOURCES/glibc-rh1531168-3.patch b/SOURCES/glibc-rh1531168-3.patch new file mode 100644 index 0000000..763436e --- /dev/null +++ b/SOURCES/glibc-rh1531168-3.patch @@ -0,0 +1,297 @@ +commit 8a5df95ffa83f525a4f638ead743f4fa2b7fe45a +Author: Florian Weimer +Date: Thu Jan 4 18:00:05 2018 +0100 + + i386: In makecontext, align the stack before calling exit [BZ #22667] + + Before this change, if glibc was compiled with SSE instructions and a + sufficiently recent GCC, an unaligned stack access in + __run_exit_handlers would cause stdlib/tst-makecontext to crash. + +diff --git a/stdlib/Makefile b/stdlib/Makefile +index 764aad69d8c50b9b..b5553eafc2a4bbd5 100644 +--- a/stdlib/Makefile ++++ b/stdlib/Makefile +@@ -71,7 +71,8 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \ + tst-qsort2 tst-makecontext2 tst-strtod6 tst-unsetenv1 \ + tst-makecontext3 bug-getcontext bug-fmtmsg1 \ + tst-secure-getenv tst-strtod-overflow tst-strtod-round \ +- tst-tininess tst-strtod-underflow tst-strfmon_l ++ tst-tininess tst-strtod-underflow tst-strfmon_l \ ++ tst-makecontext-align + tests-static := tst-secure-getenv + + include ../Makeconfig +diff --git a/stdlib/tst-makecontext-align.c b/stdlib/tst-makecontext-align.c +new file mode 100644 +index 0000000000000000..82394b4f6b024c9b +--- /dev/null ++++ b/stdlib/tst-makecontext-align.c +@@ -0,0 +1,241 @@ ++/* Check stack alignment provided by makecontext. ++ Copyright (C) 2018 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++/* Used for error reporting. */ ++static const char *context; ++ ++/* Check that ADDRESS is aligned to ALIGNMENT bytes, behind a compiler ++ barrier. */ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align (void *address, size_t alignment) ++{ ++ uintptr_t uaddress = (uintptr_t) address; ++ if ((uaddress % alignment) != 0) ++ { ++ support_record_failure (); ++ printf ("error: %s: object at address %p is not aligned to %zu bytes\n", ++ context, address, alignment); ++ } ++} ++ ++/* Various alignment checking functions. */ ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_int (void) ++{ ++ int a; ++ check_align (&a, __alignof__ (a)); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_long (void) ++{ ++ long a; ++ check_align (&a, __alignof__ (a)); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_long_long (void) ++{ ++ long long a; ++ check_align (&a, __alignof__ (a)); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_double (void) ++{ ++ double a; ++ check_align (&a, __alignof__ (a)); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_4 (void) ++{ ++ int a __attribute__ ((aligned (4))); ++ check_align (&a, 4); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_8 (void) ++{ ++ double a __attribute__ ((aligned (8))); ++ check_align (&a, 8); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_16 (void) ++{ ++ struct aligned ++ { ++ double x0 __attribute__ ((aligned (16))); ++ double x1; ++ } a; ++ check_align (&a, 16); ++} ++ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_align_32 (void) ++{ ++ struct aligned ++ { ++ double x0 __attribute__ ((aligned (32))); ++ double x1; ++ double x2; ++ double x3; ++ } a; ++ check_align (&a, 32); ++} ++ ++/* Call all the alignment checking functions. */ ++__attribute__ ((noinline, noclone, weak)) ++void ++check_alignments (void) ++{ ++ check_align_int (); ++ check_align_long (); ++ check_align_long_long (); ++ check_align_double (); ++ check_align_4 (); ++ check_align_8 (); ++ check_align_16 (); ++ check_align_32 (); ++} ++ ++/* Callback functions for makecontext and their invokers (to be used ++ with support_isolate_in_subprocess). */ ++ ++static ucontext_t ucp; ++ ++static void ++callback_0 (void) ++{ ++ context = "callback_0"; ++ check_alignments (); ++ context = "after return from callback_0"; ++} ++ ++static void ++invoke_callback_0 (void *closure) ++{ ++ makecontext (&ucp, (void *) callback_0, 0); ++ if (setcontext (&ucp) != 0) ++ FAIL_EXIT1 ("setcontext"); ++ FAIL_EXIT1 ("setcontext returned"); ++} ++ ++static void ++callback_1 (int arg1) ++{ ++ context = "callback_1"; ++ check_alignments (); ++ TEST_COMPARE (arg1, 101); ++ context = "after return from callback_1"; ++} ++ ++static void ++invoke_callback_1 (void *closure) ++{ ++ makecontext (&ucp, (void *) callback_1, 1, 101); ++ if (setcontext (&ucp) != 0) ++ FAIL_EXIT1 ("setcontext"); ++ FAIL_EXIT1 ("setcontext returned"); ++} ++ ++static void ++callback_2 (int arg1, int arg2) ++{ ++ context = "callback_2"; ++ check_alignments (); ++ TEST_COMPARE (arg1, 201); ++ TEST_COMPARE (arg2, 202); ++ context = "after return from callback_2"; ++} ++ ++static void ++invoke_callback_2 (void *closure) ++{ ++ makecontext (&ucp, (void *) callback_2, 2, 201, 202); ++ if (setcontext (&ucp) != 0) ++ FAIL_EXIT1 ("setcontext"); ++ FAIL_EXIT1 ("setcontext returned"); ++} ++ ++static void ++callback_3 (int arg1, int arg2, int arg3) ++{ ++ context = "callback_3"; ++ check_alignments (); ++ TEST_COMPARE (arg1, 301); ++ TEST_COMPARE (arg2, 302); ++ TEST_COMPARE (arg3, 303); ++ context = "after return from callback_3"; ++} ++ ++static void ++invoke_callback_3 (void *closure) ++{ ++ makecontext (&ucp, (void *) callback_3, 3, 301, 302, 303); ++ if (setcontext (&ucp) != 0) ++ FAIL_EXIT1 ("setcontext"); ++ FAIL_EXIT1 ("setcontext returned"); ++} ++ ++static int ++do_test (void) ++{ ++ context = "direct call"; ++ check_alignments (); ++ ++ atexit (check_alignments); ++ ++ if (getcontext (&ucp) != 0) ++ FAIL_UNSUPPORTED ("getcontext"); ++ ++ ucp.uc_link = NULL; ++ ucp.uc_stack.ss_size = 512 * 1024; ++ ucp.uc_stack.ss_sp = xmmap (NULL, ucp.uc_stack.ss_size, ++ PROT_READ | PROT_WRITE, ++ MAP_PRIVATE | MAP_ANONYMOUS, -1); ++ ++ support_isolate_in_subprocess (invoke_callback_0, NULL); ++ support_isolate_in_subprocess (invoke_callback_1, NULL); ++ support_isolate_in_subprocess (invoke_callback_2, NULL); ++ support_isolate_in_subprocess (invoke_callback_3, NULL); ++ ++ return 0; ++} ++ ++#include +diff --git a/sysdeps/unix/sysv/linux/i386/makecontext.S b/sysdeps/unix/sysv/linux/i386/makecontext.S +index 48643864b05568b0..5e02aa78925c4bdc 100644 +--- a/sysdeps/unix/sysv/linux/i386/makecontext.S ++++ b/sysdeps/unix/sysv/linux/i386/makecontext.S +@@ -113,9 +113,19 @@ L(exitcode): + call JUMPTARGET(__setcontext) + /* If this returns (which can happen if the syscall fails) we'll + exit the program with the return error value (-1). */ ++ jmp L(call_exit) + +- movl %eax, (%esp) +-2: call HIDDEN_JUMPTARGET(exit) ++2: ++ /* Exit with status 0. */ ++ xorl %eax, %eax ++ ++L(call_exit): ++ /* Align the stack and pass the exit code (from %eax). */ ++ andl $0xfffffff0, %esp ++ subl $12, %esp ++ pushl %eax ++ ++ call HIDDEN_JUMPTARGET(exit) + /* The 'exit' call should never return. In case it does cause + the process to terminate. */ + hlt diff --git a/SOURCES/glibc-rh1540480-0.patch b/SOURCES/glibc-rh1540480-0.patch new file mode 100644 index 0000000..1bd82b9 --- /dev/null +++ b/SOURCES/glibc-rh1540480-0.patch @@ -0,0 +1,92 @@ +commit 2a939a7e6d81f109d49306bc2e10b4ac9ceed8f9 +Author: Ondřej Bílka +Date: Mon Dec 2 14:53:14 2013 +0100 + + Return fixed version of breaking of RPATH when $ORIGIN contains colons + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -487,14 +487,19 @@ static size_t max_dirnamelen; + + static struct r_search_path_elem ** + fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep, +- int check_trusted, const char *what, const char *where) ++ int check_trusted, const char *what, const char *where, ++ struct link_map *l) + { + char *cp; + size_t nelems = 0; ++ char *to_free; + + while ((cp = __strsep (&rpath, sep)) != NULL) + { + struct r_search_path_elem *dirp; ++ ++ to_free = cp = expand_dynamic_string_token (l, cp, 1); ++ + size_t len = strlen (cp); + + /* `strsep' can pass an empty string. This has to be +@@ -515,7 +520,10 @@ fillin_rpath (char *rpath, struct r_sear + + /* Make sure we don't use untrusted directories if we run SUID. */ + if (__builtin_expect (check_trusted, 0) && !is_trusted_path (cp, len)) +- continue; ++ { ++ free (to_free); ++ continue; ++ } + + /* See if this directory is already known. */ + for (dirp = GL(dl_all_dirs); dirp != NULL; dirp = dirp->next) +@@ -576,6 +584,7 @@ fillin_rpath (char *rpath, struct r_sear + /* Put it in the result array. */ + result[nelems++] = dirp; + } ++ free (to_free); + } + + /* Terminate the array. */ +@@ -631,9 +640,8 @@ decompose_rpath (struct r_search_path_st + while (*inhp != '\0'); + } + +- /* Make a writable copy. At the same time expand possible dynamic +- string tokens. */ +- copy = expand_dynamic_string_token (l, rpath, 1); ++ /* Make a writable copy. */ ++ copy = local_strdup (rpath); + if (copy == NULL) + { + errstring = N_("cannot create RUNPATH/RPATH copy"); +@@ -666,7 +674,7 @@ decompose_rpath (struct r_search_path_st + _dl_signal_error (ENOMEM, NULL, NULL, errstring); + } + +- fillin_rpath (copy, result, ":", 0, what, where); ++ fillin_rpath (copy, result, ":", 0, what, where, l); + + /* Free the copied RPATH string. `fillin_rpath' make own copies if + necessary. */ +@@ -714,9 +722,7 @@ _dl_init_paths (const char *llp) + const char *strp; + struct r_search_path_elem *pelem, **aelem; + size_t round_size; +-#ifdef SHARED +- struct link_map *l; +-#endif ++ struct link_map __attribute__ ((unused)) *l = NULL; + /* Initialize to please the compiler. */ + const char *errstring = NULL; + +@@ -865,7 +871,7 @@ _dl_init_paths (const char *llp) + + (void) fillin_rpath (llp_tmp, env_path_list.dirs, ":;", + INTUSE(__libc_enable_secure), "LD_LIBRARY_PATH", +- NULL); ++ NULL, l); + + if (env_path_list.dirs[0] == NULL) + { diff --git a/SOURCES/glibc-rh1540480-1.patch b/SOURCES/glibc-rh1540480-1.patch new file mode 100644 index 0000000..41903ea --- /dev/null +++ b/SOURCES/glibc-rh1540480-1.patch @@ -0,0 +1,37 @@ +commit 3ff3dfa5af313a6ea33f3393916f30eece4f0171 +Author: Florian Weimer +Date: Thu Dec 14 15:05:57 2017 +0100 + + elf: Count components of the expanded path in _dl_init_path [BZ #22607] + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -829,8 +829,6 @@ _dl_init_paths (const char *llp) + + if (llp != NULL && *llp != '\0') + { +- size_t nllp; +- const char *cp = llp; + char *llp_tmp; + + #ifdef SHARED +@@ -853,13 +851,10 @@ _dl_init_paths (const char *llp) + + /* Decompose the LD_LIBRARY_PATH contents. First determine how many + elements it has. */ +- nllp = 1; +- while (*cp) +- { +- if (*cp == ':' || *cp == ';') +- ++nllp; +- ++cp; +- } ++ size_t nllp = 1; ++ for (const char *cp = llp_tmp; *cp != '\0'; ++cp) ++ if (*cp == ':' || *cp == ';') ++ ++nllp; + + env_path_list.dirs = (struct r_search_path_elem **) + malloc ((nllp + 1) * sizeof (struct r_search_path_elem *)); diff --git a/SOURCES/glibc-rh1540480-2.patch b/SOURCES/glibc-rh1540480-2.patch new file mode 100644 index 0000000..a0e55fa --- /dev/null +++ b/SOURCES/glibc-rh1540480-2.patch @@ -0,0 +1,37 @@ +commit bb195224acc14724e9fc2dbaa8d0b20b72ace79b +Author: Dmitry V. Levin +Date: Sun Dec 17 23:49:46 2017 +0000 + + elf: do not substitute dst in $LD_LIBRARY_PATH twice [BZ #22627] + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -829,25 +829,7 @@ _dl_init_paths (const char *llp) + + if (llp != NULL && *llp != '\0') + { +- char *llp_tmp; +- +-#ifdef SHARED +- /* Expand DSTs. */ +- size_t cnt = DL_DST_COUNT (llp, 1); +- if (__builtin_expect (cnt == 0, 1)) +- llp_tmp = strdupa (llp); +- else +- { +- /* Determine the length of the substituted string. */ +- size_t total = DL_DST_REQUIRED (l, llp, strlen (llp), cnt); +- +- /* Allocate the necessary memory. */ +- llp_tmp = (char *) alloca (total + 1); +- llp_tmp = _dl_dst_substitute (l, llp, llp_tmp, 1); +- } +-#else +- llp_tmp = strdupa (llp); +-#endif ++ char *llp_tmp = strdupa (llp); + + /* Decompose the LD_LIBRARY_PATH contents. First determine how many + elements it has. */ diff --git a/SOURCES/glibc-rh1540480-3.patch b/SOURCES/glibc-rh1540480-3.patch new file mode 100644 index 0000000..d9b19f2 --- /dev/null +++ b/SOURCES/glibc-rh1540480-3.patch @@ -0,0 +1,92 @@ +commit 10e93d968716ab82931d593bada121c17c0a4b93 +Author: Dmitry V. Levin +Date: Mon Dec 18 21:46:07 2017 +0000 + + elf: remove redundant __libc_enable_secure check from fillin_rpath + + There are just two users of fillin_rpath: one is decompose_rpath that + sets check_trusted argument to 0, another one is _dl_init_paths that + sets check_trusted argument to __libc_enable_secure and invokes + fillin_rpath only when LD_LIBRARY_PATH is non-empty. + + Starting with commit + glibc-2.25.90-512-gf6110a8fee2ca36f8e2d2abecf3cba9fa7b8ea7d, + LD_LIBRARY_PATH is ignored for __libc_enable_secure executables, + so check_trusted argument of fillin_rpath is always zero. + + * elf/dl-load.c (is_trusted_path): Remove. + (fillin_rpath): Remove check_trusted argument and its use, + all callers changed. + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -169,24 +169,6 @@ local_strdup (const char *s) + + + static bool +-is_trusted_path (const char *path, size_t len) +-{ +- const char *trun = system_dirs; +- +- for (size_t idx = 0; idx < nsystem_dirs_len; ++idx) +- { +- if (len == system_dirs_len[idx] && memcmp (trun, path, len) == 0) +- /* Found it. */ +- return true; +- +- trun += system_dirs_len[idx] + 1; +- } +- +- return false; +-} +- +- +-static bool + is_trusted_path_normalize (const char *path, size_t len) + { + if (len == 0) +@@ -487,8 +469,7 @@ static size_t max_dirnamelen; + + static struct r_search_path_elem ** + fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep, +- int check_trusted, const char *what, const char *where, +- struct link_map *l) ++ const char *what, const char *where, struct link_map *l) + { + char *cp; + size_t nelems = 0; +@@ -518,13 +499,6 @@ fillin_rpath (char *rpath, struct r_sear + if (len > 0 && cp[len - 1] != '/') + cp[len++] = '/'; + +- /* Make sure we don't use untrusted directories if we run SUID. */ +- if (__builtin_expect (check_trusted, 0) && !is_trusted_path (cp, len)) +- { +- free (to_free); +- continue; +- } +- + /* See if this directory is already known. */ + for (dirp = GL(dl_all_dirs); dirp != NULL; dirp = dirp->next) + if (dirp->dirnamelen == len && memcmp (cp, dirp->dirname, len) == 0) +@@ -674,7 +648,7 @@ decompose_rpath (struct r_search_path_st + _dl_signal_error (ENOMEM, NULL, NULL, errstring); + } + +- fillin_rpath (copy, result, ":", 0, what, where, l); ++ fillin_rpath (copy, result, ":", what, where, l); + + /* Free the copied RPATH string. `fillin_rpath' make own copies if + necessary. */ +@@ -847,8 +821,7 @@ _dl_init_paths (const char *llp) + } + + (void) fillin_rpath (llp_tmp, env_path_list.dirs, ":;", +- INTUSE(__libc_enable_secure), "LD_LIBRARY_PATH", +- NULL, l); ++ "LD_LIBRARY_PATH", NULL, l); + + if (env_path_list.dirs[0] == NULL) + { diff --git a/SOURCES/glibc-rh1540480-4.patch b/SOURCES/glibc-rh1540480-4.patch new file mode 100644 index 0000000..ca63fc5 --- /dev/null +++ b/SOURCES/glibc-rh1540480-4.patch @@ -0,0 +1,57 @@ +commit 97f13188c9fbafeaab89146996b3cce1f4952b5e +Author: Dmitry V. Levin +Date: Tue Dec 19 21:06:23 2017 +0000 + + elf: remove redundant code from _dl_dst_substitute + + There are just two users of _dl_dst_substitute: one is expand_dst that + sets is_path argument to 0, another one is expand_dynamic_string_token. + The latter function also has just two users: one is _dl_map_object that + sets is_path argument to 0, another one is fillin_rpath that sets + is_path argument to 1 and name argument contains no ':'. + + In any case (is_path && name[i] == ':') is always false and all code + depending on it can be safely removed. + + * elf/dl-load.c (_dl_dst_substitute): Remove checks that is_path + is set and name contains ':', and all code depending on these checks. + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -349,13 +349,7 @@ _dl_dst_substitute (struct link_map *l, + /* We cannot use this path element, the value of the + replacement is unknown. */ + wp = last_elem; +- name += len; +- while (*name != '\0' && (!is_path || *name != ':')) +- ++name; +- /* Also skip following colon if this is the first rpath +- element, but keep an empty element at the end. */ +- if (wp == result && is_path && *name == ':' && name[1] != '\0') +- ++name; ++ break; + } + else + /* No DST we recognize. */ +@@ -364,19 +358,6 @@ _dl_dst_substitute (struct link_map *l, + else + { + *wp++ = *name++; +- if (is_path && *name == ':') +- { +- /* In SUID/SGID programs, after $ORIGIN expansion the +- normalized path must be rooted in one of the trusted +- directories. */ +- if (__builtin_expect (check_for_trusted, false) +- && !is_trusted_path_normalize (last_elem, wp - last_elem)) +- wp = last_elem; +- else +- last_elem = wp; +- +- check_for_trusted = false; +- } + } + } + while (*name != '\0'); diff --git a/SOURCES/glibc-rh1540480-5.patch b/SOURCES/glibc-rh1540480-5.patch new file mode 100644 index 0000000..1b21069 --- /dev/null +++ b/SOURCES/glibc-rh1540480-5.patch @@ -0,0 +1,43 @@ +commit 1c36e1e6a5b9b6f9ad1c67f5d43383afb4d80339 +Author: Dmitry V. Levin +Date: Wed Dec 20 11:27:51 2017 +0000 + + elf: remove redundant code from is_dst + + is_dst is called either by _dl_dst_count or by _dl_dst_substitute. + _dl_dst_count is called by DL_DST_COUNT only. + DL_DST_COUNT is called either by expand_dst with is_path == 0 + or by expand_dynamic_string_token. + _dl_dst_substitute is called either from expand_dst with is_path == 0 + or from expand_dynamic_string_token. + The latter function is called either from _dl_map_object with is_path == 0 + or from fillin_rpath with is_path == 1 and name containing no ':'. + + In any case (is_path && name[i] == ':') is always false and all code + depending on it can be safely removed. + + * elf/dl-load.c (is_dst): Remove checks that is_path is set and name + contains ':', and all code depending on these checks. + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -258,14 +258,12 @@ is_dst (const char *start, const char *n + /* Skip over closing curly brace and adjust for the --name. */ + len += 2; + } +- else if (name[len] != '\0' && name[len] != '/' +- && (!is_path || name[len] != ':')) ++ else if (name[len] != '\0' && name[len] != '/') + return 0; + + if (__builtin_expect (secure, 0) +- && ((name[len] != '\0' && name[len] != '/' +- && (!is_path || name[len] != ':')) +- || (name != start + 1 && (!is_path || name[-2] != ':')))) ++ && ((name[len] != '\0' && name[len] != '/') ++ || (name != start + 1))) + return 0; + + return len; diff --git a/SOURCES/glibc-rh1540480-6.patch b/SOURCES/glibc-rh1540480-6.patch new file mode 100644 index 0000000..2ea6162 --- /dev/null +++ b/SOURCES/glibc-rh1540480-6.patch @@ -0,0 +1,189 @@ +commit 2bd86632b7cb97dc9002a23795e140fc880e1987 +Author: Dmitry V. Levin +Date: Wed Dec 20 11:27:51 2017 +0000 + + elf: remove redundant is_path argument + + is_path argument is no longer used and could be safely removed. + + * elf/dl-dst.h (DL_DST_COUNT): Remove is_path argument, all callers + updated. + * elf/dl-load.c (is_dst, _dl_dst_count, _dl_dst_substitute, + expand_dynamic_string_token): Likewise. + * sysdeps/generic/ldsodefs.h (_dl_dst_count, _dl_dst_substitute): Remove + is_path argument. + +Index: glibc-2.17-c758a686/elf/dl-deps.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-deps.c ++++ glibc-2.17-c758a686/elf/dl-deps.c +@@ -101,7 +101,7 @@ struct list + ({ \ + const char *__str = (str); \ + const char *__result = __str; \ +- size_t __dst_cnt = DL_DST_COUNT (__str, 0); \ ++ size_t __dst_cnt = DL_DST_COUNT (__str); \ + \ + if (__dst_cnt != 0) \ + { \ +@@ -115,7 +115,7 @@ DST not allowed in SUID/SGID programs")) + __newp = (char *) alloca (DL_DST_REQUIRED (l, __str, strlen (__str), \ + __dst_cnt)); \ + \ +- __result = _dl_dst_substitute (l, __str, __newp, 0); \ ++ __result = _dl_dst_substitute (l, __str, __newp); \ + \ + if (*__result == '\0') \ + { \ +Index: glibc-2.17-c758a686/elf/dl-dst.h +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-dst.h ++++ glibc-2.17-c758a686/elf/dl-dst.h +@@ -20,13 +20,13 @@ + + /* Determine the number of DST elements in the name. Only if IS_PATH is + nonzero paths are recognized (i.e., multiple, ':' separated filenames). */ +-#define DL_DST_COUNT(name, is_path) \ ++#define DL_DST_COUNT(name) \ + ({ \ + size_t __cnt = 0; \ + const char *__sf = strchr (name, '$'); \ + \ + if (__builtin_expect (__sf != NULL, 0)) \ +- __cnt = _dl_dst_count (__sf, is_path); \ ++ __cnt = _dl_dst_count (__sf); \ + \ + __cnt; }) + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -232,8 +232,7 @@ is_trusted_path_normalize (const char *p + + + static size_t +-is_dst (const char *start, const char *name, const char *str, +- int is_path, int secure) ++is_dst (const char *start, const char *name, const char *str, int secure) + { + size_t len; + bool is_curly = false; +@@ -271,7 +270,7 @@ is_dst (const char *start, const char *n + + + size_t +-_dl_dst_count (const char *name, int is_path) ++_dl_dst_count (const char *name) + { + const char *const start = name; + size_t cnt = 0; +@@ -283,10 +282,9 @@ _dl_dst_count (const char *name, int is_ + /* $ORIGIN is not expanded for SUID/GUID programs (except if it + is $ORIGIN alone) and it must always appear first in path. */ + ++name; +- if ((len = is_dst (start, name, "ORIGIN", is_path, +- INTUSE(__libc_enable_secure))) != 0 +- || (len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0 +- || (len = is_dst (start, name, "LIB", is_path, 0)) != 0) ++ if ((len = is_dst (start, name, "ORIGIN", INTUSE(__libc_enable_secure))) != 0 ++ || (len = is_dst (start, name, "PLATFORM", 0)) != 0 ++ || (len = is_dst (start, name, "LIB", 0)) != 0) + ++cnt; + + name = strchr (name + len, '$'); +@@ -298,8 +296,7 @@ _dl_dst_count (const char *name, int is_ + + + char * +-_dl_dst_substitute (struct link_map *l, const char *name, char *result, +- int is_path) ++_dl_dst_substitute (struct link_map *l, const char *name, char *result) + { + const char *const start = name; + +@@ -319,8 +316,7 @@ _dl_dst_substitute (struct link_map *l, + size_t len; + + ++name; +- if ((len = is_dst (start, name, "ORIGIN", is_path, +- INTUSE(__libc_enable_secure))) != 0) ++ if ((len = is_dst (start, name, "ORIGIN", INTUSE(__libc_enable_secure))) != 0) + { + #ifndef SHARED + if (l == NULL) +@@ -332,9 +328,9 @@ _dl_dst_substitute (struct link_map *l, + check_for_trusted = (INTUSE(__libc_enable_secure) + && l->l_type == lt_executable); + } +- else if ((len = is_dst (start, name, "PLATFORM", is_path, 0)) != 0) ++ else if ((len = is_dst (start, name, "PLATFORM", 0)) != 0) + repl = GLRO(dl_platform); +- else if ((len = is_dst (start, name, "LIB", is_path, 0)) != 0) ++ else if ((len = is_dst (start, name, "LIB", 0)) != 0) + repl = DL_DST_LIB; + + if (repl != NULL && repl != (const char *) -1) +@@ -378,7 +374,7 @@ _dl_dst_substitute (struct link_map *l, + belonging to the map is loaded. In this case the path element + containing $ORIGIN is left out. */ + static char * +-expand_dynamic_string_token (struct link_map *l, const char *s, int is_path) ++expand_dynamic_string_token (struct link_map *l, const char *s) + { + /* We make two runs over the string. First we determine how large the + resulting string is and then we copy it over. Since this is no +@@ -389,7 +385,7 @@ expand_dynamic_string_token (struct link + char *result; + + /* Determine the number of DST elements. */ +- cnt = DL_DST_COUNT (s, is_path); ++ cnt = DL_DST_COUNT (s); + + /* If we do not have to replace anything simply copy the string. */ + if (__builtin_expect (cnt, 0) == 0) +@@ -403,7 +399,7 @@ expand_dynamic_string_token (struct link + if (result == NULL) + return NULL; + +- return _dl_dst_substitute (l, s, result, is_path); ++ return _dl_dst_substitute (l, s, result); + } + + +@@ -458,7 +454,7 @@ fillin_rpath (char *rpath, struct r_sear + { + struct r_search_path_elem *dirp; + +- to_free = cp = expand_dynamic_string_token (l, cp, 1); ++ to_free = cp = expand_dynamic_string_token (l, cp); + + size_t len = strlen (cp); + +@@ -2263,7 +2259,7 @@ _dl_map_object (struct link_map *loader, + { + /* The path may contain dynamic string tokens. */ + realname = (loader +- ? expand_dynamic_string_token (loader, name, 0) ++ ? expand_dynamic_string_token (loader, name) + : local_strdup (name)); + if (realname == NULL) + fd = -1; +Index: glibc-2.17-c758a686/sysdeps/generic/ldsodefs.h +=================================================================== +--- glibc-2.17-c758a686.orig/sysdeps/generic/ldsodefs.h ++++ glibc-2.17-c758a686/sysdeps/generic/ldsodefs.h +@@ -983,11 +983,11 @@ extern void _dl_nothread_init_static_tls + extern const char *_dl_get_origin (void) attribute_hidden; + + /* Count DSTs. */ +-extern size_t _dl_dst_count (const char *name, int is_path) attribute_hidden; ++extern size_t _dl_dst_count (const char *name) attribute_hidden; + + /* Substitute DST values. */ + extern char *_dl_dst_substitute (struct link_map *l, const char *name, +- char *result, int is_path) attribute_hidden; ++ char *result) attribute_hidden; + + /* Check validity of the caller. */ + extern int _dl_check_caller (const void *caller, enum allowmask mask) diff --git a/SOURCES/glibc-rh1540480-7.patch b/SOURCES/glibc-rh1540480-7.patch new file mode 100644 index 0000000..7531ce1 --- /dev/null +++ b/SOURCES/glibc-rh1540480-7.patch @@ -0,0 +1,52 @@ +commit dbba87d531ad3ea372eba6cb56436a231ca7fb32 +Author: Dmitry V. Levin +Date: Wed Dec 27 22:12:51 2017 +0000 + + elf: check for rpath emptiness before making a copy of it + + * elf/dl-load.c (decompose_rpath): Check for rpath emptiness before + making a copy of it. + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -550,7 +550,6 @@ decompose_rpath (struct r_search_path_st + { + /* Make a copy we can work with. */ + const char *where = l->l_name; +- char *copy; + char *cp; + struct r_search_path_elem **result; + size_t nelems; +@@ -589,22 +588,21 @@ decompose_rpath (struct r_search_path_st + while (*inhp != '\0'); + } + ++ /* Ignore empty rpaths. */ ++ if (*rpath == '\0') ++ { ++ sps->dirs = (struct r_search_path_elem **) -1; ++ return false; ++ } ++ + /* Make a writable copy. */ +- copy = local_strdup (rpath); ++ char *copy = local_strdup (rpath); + if (copy == NULL) + { + errstring = N_("cannot create RUNPATH/RPATH copy"); + goto signal_error; + } + +- /* Ignore empty rpaths. */ +- if (*copy == 0) +- { +- free (copy); +- sps->dirs = (struct r_search_path_elem **) -1; +- return false; +- } +- + /* Count the number of necessary elements in the result array. */ + nelems = 0; + for (cp = copy; *cp != '\0'; ++cp) diff --git a/SOURCES/glibc-rh1540480-8.patch b/SOURCES/glibc-rh1540480-8.patch new file mode 100644 index 0000000..08250b8 --- /dev/null +++ b/SOURCES/glibc-rh1540480-8.patch @@ -0,0 +1,113 @@ +CVE-2017-16997: Incorrect handling of RPATH or RUNPATH containing $ORIGIN +for AT_SECURE or SUID binaries could be used to load libraries from the +current directory. + +Depends on f6110a8fee2ca36f8e2d2abecf3cba9fa7b8ea7d which is already +backported by glibc-rh1452721-1.patch. + +commit 3e3c904daef69b8bf7d5cc07f793c9f07c3553ef +Author: Aurelien Jarno +Date: Sat Dec 30 10:54:23 2017 +0100 + + elf: Check for empty tokens before dynamic string token expansion [BZ #22625] + + The fillin_rpath function in elf/dl-load.c loops over each RPATH or + RUNPATH tokens and interprets empty tokens as the current directory + ("./"). In practice the check for empty token is done *after* the + dynamic string token expansion. The expansion process can return an + empty string for the $ORIGIN token if __libc_enable_secure is set + or if the path of the binary can not be determined (/proc not mounted). + + Fix that by moving the check for empty tokens before the dynamic string + token expansion. In addition, check for NULL pointer or empty strings + return by expand_dynamic_string_token. + + The above changes highlighted a bug in decompose_rpath, an empty array + is represented by the first element being NULL at the fillin_rpath + level, but by using a -1 pointer in decompose_rpath and other functions. + + Changelog: + [BZ #22625] + * elf/dl-load.c (fillin_rpath): Check for empty tokens before dynamic + string token expansion. Check for NULL pointer or empty string possibly + returned by expand_dynamic_string_token. + (decompose_rpath): Check for empty path after dynamic string + token expansion. + +Index: glibc-2.17-c758a686/elf/dl-load.c +=================================================================== +--- glibc-2.17-c758a686.orig/elf/dl-load.c ++++ glibc-2.17-c758a686/elf/dl-load.c +@@ -447,31 +447,39 @@ fillin_rpath (char *rpath, struct r_sear + { + char *cp; + size_t nelems = 0; +- char *to_free; + + while ((cp = __strsep (&rpath, sep)) != NULL) + { + struct r_search_path_elem *dirp; ++ char *to_free = NULL; ++ size_t len = 0; + +- to_free = cp = expand_dynamic_string_token (l, cp); +- +- size_t len = strlen (cp); +- +- /* `strsep' can pass an empty string. This has to be +- interpreted as `use the current directory'. */ +- if (len == 0) ++ /* `strsep' can pass an empty string. */ ++ if (*cp != '\0') + { +- static const char curwd[] = "./"; +- cp = (char *) curwd; +- } ++ to_free = cp = expand_dynamic_string_token (l, cp); ++ /* expand_dynamic_string_token can return NULL in case of empty ++ path or memory allocation failure. */ ++ if (cp == NULL) ++ continue; ++ ++ /* Compute the length after dynamic string token expansion and ++ ignore empty paths. */ ++ len = strlen (cp); ++ if (len == 0) ++ { ++ free (to_free); ++ continue; ++ } + +- /* Remove trailing slashes (except for "/"). */ +- while (len > 1 && cp[len - 1] == '/') +- --len; +- +- /* Now add one if there is none so far. */ +- if (len > 0 && cp[len - 1] != '/') +- cp[len++] = '/'; ++ /* Remove trailing slashes (except for "/"). */ ++ while (len > 1 && cp[len - 1] == '/') ++ --len; ++ ++ /* Now add one if there is none so far. */ ++ if (len > 0 && cp[len - 1] != '/') ++ cp[len++] = '/'; ++ } + + /* See if this directory is already known. */ + for (dirp = GL(dl_all_dirs); dirp != NULL; dirp = dirp->next) +@@ -626,6 +634,14 @@ decompose_rpath (struct r_search_path_st + necessary. */ + free (copy); + ++ /* There is no path after expansion. */ ++ if (result[0] == NULL) ++ { ++ free (result); ++ sps->dirs = (struct r_search_path_elem **) -1; ++ return false; ++ } ++ + sps->dirs = result; + /* The caller will change this value if we haven't used a real malloc. */ + sps->malloced = 1; diff --git a/SOURCES/glibc-rh1548002.patch b/SOURCES/glibc-rh1548002.patch new file mode 100644 index 0000000..3ad3f19 --- /dev/null +++ b/SOURCES/glibc-rh1548002.patch @@ -0,0 +1,333 @@ +The upstream patch is backported by excluding tests for reallocarray because +this function is not present in RHEL-7. + +commit 8e448310d74b283c5cd02b9ed7fb997b47bf9b22 +Author: Arjun Shankar +Date: Thu Jan 18 16:47:06 2018 +0000 + + Fix integer overflows in internal memalign and malloc functions [BZ #22343] + + When posix_memalign is called with an alignment less than MALLOC_ALIGNMENT + and a requested size close to SIZE_MAX, it falls back to malloc code + (because the alignment of a block returned by malloc is sufficient to + satisfy the call). In this case, an integer overflow in _int_malloc leads + to posix_memalign incorrectly returning successfully. + + Upon fixing this and writing a somewhat thorough regression test, it was + discovered that when posix_memalign is called with an alignment larger than + MALLOC_ALIGNMENT (so it uses _int_memalign instead) and a requested size + close to SIZE_MAX, a different integer overflow in _int_memalign leads to + posix_memalign incorrectly returning successfully. + + Both integer overflows affect other memory allocation functions that use + _int_malloc (one affected malloc in x86) or _int_memalign as well. + + This commit fixes both integer overflows. In addition to this, it adds a + regression test to guard against false successful allocations by the + following memory allocation functions when called with too-large allocation + sizes and, where relevant, various valid alignments: + malloc, realloc, calloc, reallocarray, memalign, posix_memalign, + aligned_alloc, valloc, and pvalloc. + +Index: b/malloc/Makefile +=================================================================== +--- a/malloc/Makefile ++++ b/malloc/Makefile +@@ -38,6 +38,7 @@ tests := mallocbug tst-malloc tst-valloc + tst-dynarray-fail \ + tst-dynarray-at-fail \ + tst-alloc_buffer \ ++ tst-malloc-too-large \ + + tests-static := \ + tst-interpose-static-nothread \ +Index: b/malloc/malloc.c +=================================================================== +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -1273,14 +1273,21 @@ nextchunk-> +-+-+-+-+-+-+-+-+-+-+-+-+-+- + MINSIZE : \ + ((req) + SIZE_SZ + MALLOC_ALIGN_MASK) & ~MALLOC_ALIGN_MASK) + +-/* Same, except also perform argument check */ +- +-#define checked_request2size(req, sz) \ +- if (REQUEST_OUT_OF_RANGE(req)) { \ +- __set_errno (ENOMEM); \ +- return 0; \ +- } \ +- (sz) = request2size(req); ++/* Same, except also perform an argument and result check. First, we check ++ that the padding done by request2size didn't result in an integer ++ overflow. Then we check (using REQUEST_OUT_OF_RANGE) that the resulting ++ size isn't so large that a later alignment would lead to another integer ++ overflow. */ ++#define checked_request2size(req, sz) \ ++({ \ ++ (sz) = request2size (req); \ ++ if (((sz) < (req)) \ ++ || REQUEST_OUT_OF_RANGE (sz)) \ ++ { \ ++ __set_errno (ENOMEM); \ ++ return 0; \ ++ } \ ++}) + + /* + --------------- Physical chunk operations --------------- +@@ -4389,6 +4396,13 @@ _int_memalign(mstate av, size_t alignmen + */ + + ++ /* Check for overflow. */ ++ if (nb > SIZE_MAX - alignment - MINSIZE) ++ { ++ __set_errno (ENOMEM); ++ return 0; ++ } ++ + /* Call malloc with worst case padding to hit alignment. */ + + m = (char*)(_int_malloc(av, nb + alignment + MINSIZE)); +Index: b/malloc/tst-malloc-too-large.c +=================================================================== +--- /dev/null ++++ b/malloc/tst-malloc-too-large.c +@@ -0,0 +1,237 @@ ++/* Test and verify that too-large memory allocations fail with ENOMEM. ++ Copyright (C) 2018 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++/* Bug 22375 reported a regression in malloc where if after malloc'ing then ++ free'ing a small block of memory, malloc is then called with a really ++ large size argument (close to SIZE_MAX): instead of returning NULL and ++ setting errno to ENOMEM, malloc incorrectly returns the previously ++ allocated block instead. Bug 22343 reported a similar case where ++ posix_memalign incorrectly returns successfully when called with an with ++ a really large size argument. ++ ++ Both of these were caused by integer overflows in the allocator when it ++ was trying to pad the requested size to allow for book-keeping or ++ alignment. This test guards against such bugs by repeatedly allocating ++ and freeing small blocks of memory then trying to allocate various block ++ sizes larger than the memory bus width of 64-bit targets, or almost ++ as large as SIZE_MAX on 32-bit targets supported by glibc. In each case, ++ it verifies that such impossibly large allocations correctly fail. */ ++ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++ ++/* This function prepares for each 'too-large memory allocation' test by ++ performing a small successful malloc/free and resetting errno prior to ++ the actual test. */ ++static void ++test_setup (void) ++{ ++ void *volatile ptr = malloc (16); ++ TEST_VERIFY_EXIT (ptr != NULL); ++ free (ptr); ++ errno = 0; ++} ++ ++ ++/* This function tests each of: ++ - malloc (SIZE) ++ - realloc (PTR_FOR_REALLOC, SIZE) ++ - for various values of NMEMB: ++ - calloc (NMEMB, SIZE/NMEMB) ++ - calloc (SIZE/NMEMB, NMEMB) ++ and precedes each of these tests with a small malloc/free before it. */ ++static void ++test_large_allocations (size_t size) ++{ ++ void * ptr_to_realloc; ++ ++ test_setup (); ++ TEST_VERIFY (malloc (size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ ++ ptr_to_realloc = malloc (16); ++ TEST_VERIFY_EXIT (ptr_to_realloc != NULL); ++ test_setup (); ++ TEST_VERIFY (realloc (ptr_to_realloc, size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ free (ptr_to_realloc); ++ ++ for (size_t nmemb = 1; nmemb <= 8; nmemb *= 2) ++ if ((size % nmemb) == 0) ++ { ++ test_setup (); ++ TEST_VERIFY (calloc (nmemb, size / nmemb) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ ++ test_setup (); ++ TEST_VERIFY (calloc (size / nmemb, nmemb) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ } ++ else ++ break; ++} ++ ++ ++static long pagesize; ++ ++/* This function tests the following aligned memory allocation functions ++ using several valid alignments and precedes each allocation test with a ++ small malloc/free before it: ++ memalign, posix_memalign, aligned_alloc, valloc, pvalloc. */ ++static void ++test_large_aligned_allocations (size_t size) ++{ ++ /* ptr stores the result of posix_memalign but since all those calls ++ should fail, posix_memalign should never change ptr. We set it to ++ NULL here and later on we check that it remains NULL after each ++ posix_memalign call. */ ++ void * ptr = NULL; ++ ++ size_t align; ++ ++ /* All aligned memory allocation functions expect an alignment that is a ++ power of 2. Given this, we test each of them with every valid ++ alignment from 1 thru PAGESIZE. */ ++ for (align = 1; align <= pagesize; align *= 2) ++ { ++ test_setup (); ++ TEST_VERIFY (memalign (align, size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ ++ /* posix_memalign expects an alignment that is a power of 2 *and* a ++ multiple of sizeof (void *). */ ++ if ((align % sizeof (void *)) == 0) ++ { ++ test_setup (); ++ TEST_VERIFY (posix_memalign (&ptr, align, size) == ENOMEM); ++ TEST_VERIFY (ptr == NULL); ++ } ++ ++ /* aligned_alloc expects a size that is a multiple of alignment. */ ++ if ((size % align) == 0) ++ { ++ test_setup (); ++ TEST_VERIFY (aligned_alloc (align, size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ } ++ } ++ ++ /* Both valloc and pvalloc return page-aligned memory. */ ++ ++ test_setup (); ++ TEST_VERIFY (valloc (size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++ ++ test_setup (); ++ TEST_VERIFY (pvalloc (size) == NULL); ++ TEST_VERIFY (errno == ENOMEM); ++} ++ ++ ++#define FOURTEEN_ON_BITS ((1UL << 14) - 1) ++#define FIFTY_ON_BITS ((1UL << 50) - 1) ++ ++ ++static int ++do_test (void) ++{ ++ ++#if __WORDSIZE >= 64 ++ ++ /* This test assumes that none of the supported targets have an address ++ bus wider than 50 bits, and that therefore allocations for sizes wider ++ than 50 bits will fail. Here, we ensure that the assumption continues ++ to be true in the future when we might have address buses wider than 50 ++ bits. */ ++ ++ struct rlimit alloc_size_limit ++ = { ++ .rlim_cur = FIFTY_ON_BITS, ++ .rlim_max = FIFTY_ON_BITS ++ }; ++ ++ setrlimit (RLIMIT_AS, &alloc_size_limit); ++ ++#endif /* __WORDSIZE >= 64 */ ++ ++ DIAG_PUSH_NEEDS_COMMENT; ++#if __GNUC_PREREQ (7, 0) ++ /* GCC 7 warns about too-large allocations; here we want to test ++ that they fail. */ ++ DIAG_IGNORE_NEEDS_COMMENT (7, "-Walloc-size-larger-than="); ++#endif ++ ++ /* Aligned memory allocation functions need to be tested up to alignment ++ size equivalent to page size, which should be a power of 2. */ ++ pagesize = sysconf (_SC_PAGESIZE); ++ TEST_VERIFY_EXIT (powerof2 (pagesize)); ++ ++ /* Loop 1: Ensure that all allocations with SIZE close to SIZE_MAX, i.e. ++ in the range (SIZE_MAX - 2^14, SIZE_MAX], fail. ++ ++ We can expect that this range of allocation sizes will always lead to ++ an allocation failure on both 64 and 32 bit targets, because: ++ ++ 1. no currently supported 64-bit target has an address bus wider than ++ 50 bits -- and (2^64 - 2^14) is much wider than that; ++ ++ 2. on 32-bit targets, even though 2^32 is only 4 GB and potentially ++ addressable, glibc itself is more than 2^14 bytes in size, and ++ therefore once glibc is loaded, less than (2^32 - 2^14) bytes remain ++ available. */ ++ ++ for (size_t i = 0; i <= FOURTEEN_ON_BITS; i++) ++ { ++ test_large_allocations (SIZE_MAX - i); ++ test_large_aligned_allocations (SIZE_MAX - i); ++ } ++ ++#if __WORDSIZE >= 64 ++ /* On 64-bit targets, we need to test a much wider range of too-large ++ sizes, so we test at intervals of (1 << 50) that allocation sizes ++ ranging from SIZE_MAX down to (1 << 50) fail: ++ The 14 MSBs are decremented starting from "all ON" going down to 1, ++ the 50 LSBs are "all ON" and then "all OFF" during every iteration. */ ++ for (size_t msbs = FOURTEEN_ON_BITS; msbs >= 1; msbs--) ++ { ++ size_t size = (msbs << 50) | FIFTY_ON_BITS; ++ test_large_allocations (size); ++ test_large_aligned_allocations (size); ++ ++ size = msbs << 50; ++ test_large_allocations (size); ++ test_large_aligned_allocations (size); ++ } ++#endif /* __WORDSIZE >= 64 */ ++ ++ DIAG_POP_NEEDS_COMMENT; ++ ++ return 0; ++} ++ ++ ++#include diff --git a/SOURCES/glibc-rh1550080.patch b/SOURCES/glibc-rh1550080.patch new file mode 100644 index 0000000..1e3c5e2 --- /dev/null +++ b/SOURCES/glibc-rh1550080.patch @@ -0,0 +1,61 @@ +The patch originally submitted corrected behaviour on s390 and s390x. +The i686 change was added in order to maintain parity. + +Author: Stefan Liebler + +Index: b/sysdeps/unix/sysv/linux/s390/s390-32/socket.S +=================================================================== +--- a/sysdeps/unix/sysv/linux/s390/s390-32/socket.S ++++ b/sysdeps/unix/sysv/linux/s390/s390-32/socket.S +@@ -99,8 +99,8 @@ ENTRY(__socket) + l %r15,0(0,%r15) /* load back chain */ + lm %r6,15,24(%r15) /* load registers */ + +- /* gpr2 is < 0 if there was an error. */ +- lhi %r0,-125 ++ /* gpr2 is in [-4095, -1] if there was an error. */ ++ lhi %r0,-4095 + clr %r2,%r0 + jnl SYSCALL_ERROR_LABEL + +Index: b/sysdeps/unix/sysv/linux/s390/s390-64/socket.S +=================================================================== +--- a/sysdeps/unix/sysv/linux/s390/s390-64/socket.S ++++ b/sysdeps/unix/sysv/linux/s390/s390-64/socket.S +@@ -99,8 +99,8 @@ ENTRY(__socket) + lg %r15,0(%r15) /* Load back chain. */ + lmg %r6,15,48(%r15) /* Load registers. */ + +- /* gpr2 is < 0 if there was an error. */ +- lghi %r0,-125 ++ /* gpr2 is in [-4095, -1] if there was an error. */ ++ lghi %r0,-4095 + clgr %r2,%r0 + jgnl SYSCALL_ERROR_LABEL + +Index: b/sysdeps/unix/sysv/linux/i386/socket.S +=================================================================== +--- a/sysdeps/unix/sysv/linux/i386/socket.S ++++ b/sysdeps/unix/sysv/linux/i386/socket.S +@@ -63,8 +63,8 @@ ENTRY (__socket) + movl %edx, %ebx + cfi_restore (3) + +- /* %eax is < 0 if there was an error. */ +- cmpl $-125, %eax ++ /* %eax is in [-4095, -1] if there was an error. */ ++ cmpl $-4095, %eax + jae SYSCALL_ERROR_LABEL + + /* Successful; return the syscall's value. */ +@@ -108,8 +108,8 @@ ENTRY (__socket) + cfi_restore (6) + cfi_adjust_cfa_offset(-4) + +- /* %eax is < 0 if there was an error. */ +- cmpl $-125, %eax ++ /* %eax is in [-4095, -1] if there was an error. */ ++ cmpl $-4095, %eax + jae SYSCALL_ERROR_LABEL + + /* Successful; return the syscall's value. */ diff --git a/SOURCES/glibc-rh1560641.patch b/SOURCES/glibc-rh1560641.patch new file mode 100644 index 0000000..43cac5a --- /dev/null +++ b/SOURCES/glibc-rh1560641.patch @@ -0,0 +1,26 @@ +commit 05598a0907cad1350962e89b781215209a785d92 +Author: Patsy Franklin +Date: Tue Jun 26 10:35:03 2018 -0400 + + In sem_open.c, pad was not initialized when __HAVE_64B_ATOMICS was + true. On some arches this caused valgrind to warn about uninitialized + bytes when the struct was written to the file system. + + This patch moves the initialization of pad outside of the + conditional. + + Reviewed-by: Carlos O'Donell + +diff -Nrup a/nptl/sem_open.c b/nptl/sem_open.c +--- a/nptl/sem_open.c 2018-06-20 10:27:01.110844222 -0400 ++++ b/nptl/sem_open.c 2018-06-27 11:15:33.677892273 -0400 +@@ -313,6 +313,9 @@ sem_open (const char *name, int oflag, . + sem.newsem.value = value << SEM_VALUE_SHIFT; + sem.newsem.nwaiters = 0; + #endif ++ /* pad is used as a mutex on pre-v9 sparc and ignored otherwise. */ ++ sem.newsem.pad = 0; ++ + /* This always is a shared semaphore. */ + sem.newsem.private = LLL_SHARED; + diff --git a/SOURCES/glibc-rh1563046.patch b/SOURCES/glibc-rh1563046.patch new file mode 100644 index 0000000..dfcea91 --- /dev/null +++ b/SOURCES/glibc-rh1563046.patch @@ -0,0 +1,38 @@ +commit cc8a1620eb97ccddd337d157263c13c57b39ab71 +Author: Jesse Hathaway +Date: Tue Mar 27 21:17:59 2018 +0000 + + getlogin_r: return early when linux sentinel value is set + + When there is no login uid Linux sets /proc/self/loginid to the sentinel + value of, (uid_t) -1. If this is set we can return early and avoid + needlessly looking up the sentinel value in any configured nss + databases. + + Checked on aarch64-linux-gnu. + + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Return + early when linux sentinel value is set. + + Reviewed-by: Adhemerval Zanella + +Index: b/sysdeps/unix/sysv/linux/getlogin_r.c +=================================================================== +--- a/sysdeps/unix/sysv/linux/getlogin_r.c ++++ b/sysdeps/unix/sysv/linux/getlogin_r.c +@@ -54,6 +54,15 @@ __getlogin_r_loginuid (char *name, size_ + endp == uidbuf || *endp != '\0')) + return -1; + ++ /* If there is no login uid, linux sets /proc/self/loginid to the sentinel ++ value of, (uid_t) -1, so check if that value is set and return early to ++ avoid making unneeded nss lookups. */ ++ if (uid == (uid_t) -1) ++ { ++ __set_errno (ENXIO); ++ return ENXIO; ++ } ++ + size_t buflen = 1024; + char *buf = alloca (buflen); + bool use_malloc = false; diff --git a/SOURCES/glibc-rh1563747.patch b/SOURCES/glibc-rh1563747.patch new file mode 100644 index 0000000..bf139ee --- /dev/null +++ b/SOURCES/glibc-rh1563747.patch @@ -0,0 +1,81 @@ +commit a700e7cb3799316e1b23879b4cf0891f5703acb1 +Author: DJ Delorie +Date: Thu Apr 12 15:25:50 2018 -0400 + + Update kernel version in syscall-names.list to 4.16. + + Linux 4.16 does not add any new syscalls; this patch updates the + version number in syscall-names.list to reflect that it's still + current for 4.16. + + Tested for x86_64 (compilation with build-many-glibcs.py, using Linux + 4.16). + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.16. + +commit 39f898c69205ea4dc3ca2e817f797df95d928347 +Author: Joseph Myers +Date: Thu Feb 1 21:10:04 2018 +0000 + + Update syscall-names.list for 4.15. + + This patch updates sysdeps/unix/sysv/linux/syscall-names.list for + Linux 4.15. There only appears to be one new syscall to add to the + list. (The riscv_flush_icache syscall is *not* added because for + whatever reason it doesn't appear in the uapi asm/unistd.h; only in + arch/riscv/include/uapi/asm/syscalls.h, which is only included by the + non-uapi asm/unistd.h - and only syscalls whose __NR_* macros are + defined in the uapi asm/unistd.h are relevant for this list.) + + Tested for x86_64, and with build-many-glibcs.py. + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.15. + (s390_sthyi): New syscall. + +commit f97773d1e7cf65bbbfd8fa173096eb6144d9e47e +Author: Joseph Myers 2017-11-16 12:51:54 +Date: Thu Nov 16 17:51:54 2017 +0000 + + Update kernel version in syscall-names.list to 4.14. + + Linux 4.14 does not add any new syscalls; this patch updates the + version number in syscall-names.list to reflect that it's still + current for 4.14. + + Tested for x86_64 (compilation with build-many-glibcs.py, using Linux + 4.14). + + * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel + version to 4.14. + +diff -rup a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list +--- a/sysdeps/unix/sysv/linux/syscall-names.list 2018-04-13 16:38:10.000000000 -0400 ++++ b/sysdeps/unix/sysv/linux/syscall-names.list 2018-04-13 17:39:37.282289761 -0400 +@@ -1,5 +1,5 @@ + # List of all known Linux system calls. +-# Copyright (C) 2017 Free Software Foundation, Inc. ++# Copyright (C) 2017-2018 Free Software Foundation, Inc. + # This file is part of the GNU C Library. + # + # The GNU C Library is free software; you can redistribute it and/or +@@ -22,8 +22,8 @@ + # names are only used if the installed kernel headers also provide + # them. + +-# The list of system calls is current as of Linux 4.13. +-kernel 4.13 ++# The list of system calls is current as of Linux 4.16. ++kernel 4.16 + + FAST_atomic_update + FAST_cmpxchg +@@ -444,6 +444,7 @@ s390_guarded_storage + s390_pci_mmio_read + s390_pci_mmio_write + s390_runtime_instr ++s390_sthyi + sched_get_affinity + sched_get_priority_max + sched_get_priority_min diff --git a/SOURCES/glibc-rh1564638.patch b/SOURCES/glibc-rh1564638.patch new file mode 100644 index 0000000..d169022 --- /dev/null +++ b/SOURCES/glibc-rh1564638.patch @@ -0,0 +1,125 @@ +Fix type errors in string tests introduced by the patches to implement +rhbz#1268008. + +Patch originally from Stefan Liebler . + +diff --git a/benchtests/bench-stpncpy.c b/benchtests/bench-stpncpy.c +index e428102f5db30cfc..d37b401e303fd4bc 100644 +--- a/benchtests/bench-stpncpy.c ++++ b/benchtests/bench-stpncpy.c +@@ -74,4 +74,5 @@ STUPID_STPNCPY (CHAR *dst, const CHAR *src, size_t n) + return dst + nc; + } + ++#undef CHAR + #include "bench-strncpy.c" +diff --git a/benchtests/bench-strncpy.c b/benchtests/bench-strncpy.c +index 2cfd56ab5ab2cb06..94f66f93acfd18fc 100644 +--- a/benchtests/bench-strncpy.c ++++ b/benchtests/bench-strncpy.c +@@ -144,6 +144,8 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char) + size_t i; + CHAR *s1, *s2; + ++/* For wcsncpy: align1 and align2 here mean alignment not in bytes, ++ but in wchar_ts, in bytes it will equal to align * (sizeof (wchar_t)). */ + align1 &= 7; + if ((align1 + len) * sizeof (CHAR) >= page_size) + return; +@@ -152,8 +154,8 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char) + if ((align2 + len) * sizeof (CHAR) >= page_size) + return; + +- s1 = (CHAR *) (buf1 + align1); +- s2 = (CHAR *) (buf2 + align2); ++ s1 = (CHAR *) (buf1) + align1; ++ s2 = (CHAR *) (buf2) + align2; + + for (i = 0; i < len; ++i) + s1[i] = 32 + 23 * i % (max_char - 32); +diff --git a/benchtests/bench-strspn.c b/benchtests/bench-strspn.c +index e1f227278480ac7a..39039d09915e191e 100644 +--- a/benchtests/bench-strspn.c ++++ b/benchtests/bench-strspn.c +@@ -139,7 +139,7 @@ do_test (size_t align, size_t pos, size_t len) + for (i = 0; i < pos; ++i) + s[i] = acc[random () % len]; + s[pos] = random () & BIG_CHAR; +- if (strchr (acc, s[pos])) ++ if (STRCHR (acc, s[pos])) + s[pos] = '\0'; + else + { +diff --git a/string/test-stpncpy.c b/string/test-stpncpy.c +index 69c8181269523def..f35340957f7092a9 100644 +--- a/string/test-stpncpy.c ++++ b/string/test-stpncpy.c +@@ -75,4 +75,5 @@ STUPID_STPNCPY (CHAR *dst, const CHAR *src, size_t n) + return dst + nc; + } + ++#undef CHAR + #include "test-strncpy.c" +diff --git a/string/test-strcat.c b/string/test-strcat.c +index a822733cff7fd39e..dca8dd47aa119ce0 100644 +--- a/string/test-strcat.c ++++ b/string/test-strcat.c +@@ -71,7 +71,7 @@ SIMPLE_STRCAT (CHAR *dst, const CHAR *src) + } + + static void +-do_one_test (impl_t *impl, CHAR *dst, const char *src) ++do_one_test (impl_t *impl, CHAR *dst, const CHAR *src) + { + size_t k = STRLEN (dst); + if (CALL (impl, dst, src) != dst) +diff --git a/string/test-strncmp.c b/string/test-strncmp.c +index 950bf248385787b6..63b16eaa385f942a 100644 +--- a/string/test-strncmp.c ++++ b/string/test-strncmp.c +@@ -210,7 +210,7 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char, + if (align1 + (n + 1) * CHARBYTES >= page_size) + return; + +- align2 &= 7; ++ align2 &= 63; + if (align2 + (n + 1) * CHARBYTES >= page_size) + return; + +@@ -359,8 +359,8 @@ check1 (void) + size_t i, offset; + int exp_result; + +- strcpy(s1, L("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrs")); +- strcpy(s2, L("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkLMNOPQRSTUV")); ++ STRCPY(s1, L("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrs")); ++ STRCPY(s2, L("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkLMNOPQRSTUV")); + + /* Check possible overflow bug for wcsncmp */ + s1[4] = CHAR__MAX; +diff --git a/string/test-strncpy.c b/string/test-strncpy.c +index bdccc98301f22c10..1dbc57d9c33e6eb9 100644 +--- a/string/test-strncpy.c ++++ b/string/test-strncpy.c +@@ -94,7 +94,7 @@ STUPID_STRNCPY (CHAR *dst, const CHAR *src, size_t n) + typedef CHAR *(*proto_t) (CHAR *, const CHAR *, size_t); + + static void +-do_one_test (impl_t *impl, CHAR *dst, const char *src, size_t len, size_t n) ++do_one_test (impl_t *impl, CHAR *dst, const CHAR *src, size_t len, size_t n) + { + if (CALL (impl, dst, src, n) != STRNCPY_RESULT (dst, len, n)) + { +diff --git a/string/test-strnlen.c b/string/test-strnlen.c +index 43db896e917ec4e0..db999b53fb546460 100644 +--- a/string/test-strnlen.c ++++ b/string/test-strnlen.c +@@ -80,7 +80,7 @@ do_test (size_t align, size_t len, size_t maxlen, int max_char) + CHAR *buf = (CHAR *) (buf1); + + for (i = 0; i < len; ++i) +- buf[align + i] = 1 + 7 * i % max_char; ++ buf[align + i] = 1 + 11111 * i % max_char; + buf[align + len] = 0; + + FOR_EACH_IMPL (impl, 0) diff --git a/SOURCES/glibc-rh1566623.patch b/SOURCES/glibc-rh1566623.patch new file mode 100644 index 0000000..ab457a8 --- /dev/null +++ b/SOURCES/glibc-rh1566623.patch @@ -0,0 +1,68 @@ +Fix potential ABI change introduced by glibc-rh1398413.patch. + +extern void _IO_str_init_static (struct _IO_strfile_ *, char *, int, char *) + __THROW; +extern void _IO_str_init_readonly (struct _IO_strfile_ *, const char *, int) + __THROW; + +Upstream, this did not have any effect because the function definitions +were prototypes, so there is no upstream fix necessary. + +But downstream, we have: + + 70 void + 71 _IO_str_init_static (sf, ptr, size, pstart) + 72 _IO_strfile *sf; + 73 char *ptr; + 74 int size; + 75 char *pstart; + 76 { + 77 return _IO_str_init_static_internal (sf, ptr, size < 0 ? -1 : size, pstart); + 78 } + 79 + 80 void + 81 _IO_str_init_readonly (sf, ptr, size) + 82 _IO_strfile *sf; + 83 const char *ptr; + 84 int size; + 85 { + 86 _IO_str_init_static_internal (sf, (char *) ptr, size < 0 ? -1 : size, NULL); + 87 sf->_sbf._f._IO_file_flags |= _IO_NO_WRITES; + 88 } + +This results in: + +strops.c:71:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] +strops.c:81:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + +It is a potential ABI change, depending on the architecture. None of +the architectures in Red Hat Enterprise Linux appear to be affected, +though. + +diff --git a/libio/strops.c b/libio/strops.c +index 7df842fa519e4a49..a5b76af963e77877 100644 +--- a/libio/strops.c ++++ b/libio/strops.c +@@ -68,20 +68,13 @@ _IO_str_init_static_internal (sf, ptr, size, pstart) + } + + void +-_IO_str_init_static (sf, ptr, size, pstart) +- _IO_strfile *sf; +- char *ptr; +- int size; +- char *pstart; ++_IO_str_init_static (_IO_strfile *sf, char *ptr, int size, char *pstart) + { + return _IO_str_init_static_internal (sf, ptr, size < 0 ? -1 : size, pstart); + } + + void +-_IO_str_init_readonly (sf, ptr, size) +- _IO_strfile *sf; +- const char *ptr; +- int size; ++_IO_str_init_readonly (_IO_strfile *sf, const char *ptr, int size) + { + _IO_str_init_static_internal (sf, (char *) ptr, size < 0 ? -1 : size, NULL); + sf->_sbf._f._IO_file_flags |= _IO_NO_WRITES; diff --git a/SOURCES/glibc-rh1577333.patch b/SOURCES/glibc-rh1577333.patch new file mode 100644 index 0000000..0400a40 --- /dev/null +++ b/SOURCES/glibc-rh1577333.patch @@ -0,0 +1,18 @@ +diff -rup a/manual/startup.texi b/manual/startup.texi +--- a/manual/startup.texi 2018-05-11 14:41:08.128507566 -0400 ++++ b/manual/startup.texi 2018-05-11 14:43:45.657387887 -0400 +@@ -1019,14 +1019,6 @@ This function actually terminates the pr + intercept this signal; see @ref{Signal Handling}. + @end deftypefun + +-@c Put in by rms. Don't remove. +-@cartouche +-@strong{Future Change Warning:} Proposed Federal censorship regulations +-may prohibit us from giving you information about the possibility of +-calling this function. We would be required to say that this is not an +-acceptable way of terminating a program. +-@end cartouche +- + @node Termination Internals + @subsection Termination Internals + diff --git a/SOURCES/glibc-rh1579727-1.patch b/SOURCES/glibc-rh1579727-1.patch new file mode 100644 index 0000000..fc47f2e --- /dev/null +++ b/SOURCES/glibc-rh1579727-1.patch @@ -0,0 +1,22 @@ +commit f178e59fa5eefbbd37fde040ae8334aa5c857ee1 +Author: Andreas Schwab +Date: Tue Mar 27 12:16:11 2018 +0200 + + Fix crash in resolver on memory allocation failure (bug 23005) + +diff --git a/resolv/res_send.c b/resolv/res_send.c +index b396aae03c9eeb6e..01e4da4188b63d39 100644 +--- a/resolv/res_send.c ++++ b/resolv/res_send.c +@@ -471,6 +471,11 @@ __res_context_send (struct resolv_context *ctx, + '\0', + sizeof (struct sockaddr_in6) + - sizeof (struct sockaddr_in)); ++ else ++ { ++ __set_errno (ENOMEM); ++ return -1; ++ } + } + EXT(statp).nscount = statp->nscount; + } diff --git a/SOURCES/glibc-rh1579727-2.patch b/SOURCES/glibc-rh1579727-2.patch new file mode 100644 index 0000000..b55eef8 --- /dev/null +++ b/SOURCES/glibc-rh1579727-2.patch @@ -0,0 +1,24 @@ +commit dae6c43c33ed2d29d6d7089958ad707759a48517 +Author: Andreas Schwab +Date: Thu May 17 13:04:46 2018 +0200 + + Remove unneeded setting of errno after malloc failure + + The errno value has alread been set by malloc. + +diff --git a/resolv/res_send.c b/resolv/res_send.c +index 01e4da4188b63d39..478d542419566574 100644 +--- a/resolv/res_send.c ++++ b/resolv/res_send.c +@@ -472,10 +472,7 @@ __res_context_send (struct resolv_context *ctx, + sizeof (struct sockaddr_in6) + - sizeof (struct sockaddr_in)); + else +- { +- __set_errno (ENOMEM); +- return -1; +- } ++ return -1; + } + EXT(statp).nscount = statp->nscount; + } diff --git a/SOURCES/glibc-rh1579742.patch b/SOURCES/glibc-rh1579742.patch new file mode 100644 index 0000000..d0a51cc --- /dev/null +++ b/SOURCES/glibc-rh1579742.patch @@ -0,0 +1,137 @@ +commit 5460617d1567657621107d895ee2dd83bc1f88f2 +Author: Paul Pluzhnikov +Date: Tue May 8 18:12:41 2018 -0700 + + Fix BZ 22786: integer addition overflow may cause stack buffer overflow + when realpath() input length is close to SSIZE_MAX. + + 2018-05-09 Paul Pluzhnikov + + [BZ #22786] + * stdlib/canonicalize.c (__realpath): Fix overflow in path length + computation. + * stdlib/Makefile (test-bz22786): New test. + * stdlib/test-bz22786.c: New test. + +diff --git a/stdlib/Makefile b/stdlib/Makefile +index b5553eafc2a4bbd5..7265b44a5082b991 100644 +--- a/stdlib/Makefile ++++ b/stdlib/Makefile +@@ -72,7 +72,7 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \ + tst-makecontext3 bug-getcontext bug-fmtmsg1 \ + tst-secure-getenv tst-strtod-overflow tst-strtod-round \ + tst-tininess tst-strtod-underflow tst-strfmon_l \ +- tst-makecontext-align ++ tst-makecontext-align test-bz22786 + tests-static := tst-secure-getenv + + include ../Makeconfig +diff --git a/stdlib/canonicalize.c b/stdlib/canonicalize.c +index aeff804c108de277..b43f6223b98a578a 100644 +--- a/stdlib/canonicalize.c ++++ b/stdlib/canonicalize.c +@@ -181,7 +181,7 @@ __realpath (const char *name, char *resolved) + extra_buf = __alloca (path_max); + + len = strlen (end); +- if ((long int) (n + len) >= path_max) ++ if (path_max - n <= len) + { + __set_errno (ENAMETOOLONG); + goto error; +diff --git a/stdlib/test-bz22786.c b/stdlib/test-bz22786.c +new file mode 100644 +index 0000000000000000..e7837f98c19fc4bf +--- /dev/null ++++ b/stdlib/test-bz22786.c +@@ -0,0 +1,90 @@ ++/* Bug 22786: test for buffer overflow in realpath. ++ Copyright (C) 2018 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++/* This file must be run from within a directory called "stdlib". */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++static int ++do_test (void) ++{ ++ const char dir[] = "bz22786"; ++ const char lnk[] = "bz22786/symlink"; ++ ++ rmdir (dir); ++ if (mkdir (dir, 0755) != 0 && errno != EEXIST) ++ { ++ printf ("mkdir %s: %m\n", dir); ++ return EXIT_FAILURE; ++ } ++ if (symlink (".", lnk) != 0 && errno != EEXIST) ++ { ++ printf ("symlink (%s, %s): %m\n", dir, lnk); ++ return EXIT_FAILURE; ++ } ++ ++ const size_t path_len = (size_t) INT_MAX + 1; ++ ++ DIAG_PUSH_NEEDS_COMMENT; ++#if __GNUC_PREREQ (7, 0) ++ /* GCC 7 warns about too-large allocations; here we need such ++ allocation to succeed for the test to work. */ ++ DIAG_IGNORE_NEEDS_COMMENT (7, "-Walloc-size-larger-than="); ++#endif ++ char *path = malloc (path_len); ++ DIAG_POP_NEEDS_COMMENT; ++ ++ if (path == NULL) ++ { ++ printf ("malloc (%zu): %m\n", path_len); ++ return EXIT_UNSUPPORTED; ++ } ++ ++ /* Construct very long path = "bz22786/symlink/aaaa....." */ ++ char *p = mempcpy (path, lnk, sizeof (lnk) - 1); ++ *(p++) = '/'; ++ memset (p, 'a', path_len - (path - p) - 2); ++ p[path_len - (path - p) - 1] = '\0'; ++ ++ /* This call crashes before the fix for bz22786 on 32-bit platforms. */ ++ p = realpath (path, NULL); ++ ++ if (p != NULL || errno != ENAMETOOLONG) ++ { ++ printf ("realpath: %s (%m)", p); ++ return EXIT_FAILURE; ++ } ++ ++ /* Cleanup. */ ++ unlink (lnk); ++ rmdir (dir); ++ ++ return 0; ++} ++ ++#define TEST_FUNCTION do_test ++#include diff --git a/SOURCES/glibc-rh1579809-1.patch b/SOURCES/glibc-rh1579809-1.patch new file mode 100644 index 0000000..152b80b --- /dev/null +++ b/SOURCES/glibc-rh1579809-1.patch @@ -0,0 +1,50 @@ +commit 9aaaab7c6e4176e61c59b0a63c6ba906d875dc0e +Author: Andreas Schwab +Date: Tue May 22 10:37:59 2018 +0200 + + Don't write beyond destination in __mempcpy_avx512_no_vzeroupper (bug 23196) + + When compiled as mempcpy, the return value is the end of the destination + buffer, thus it cannot be used to refer to the start of it. + +Conflicts: + sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S + +Change applied to sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S +instead. + +diff --git a/string/test-mempcpy.c b/string/test-mempcpy.c +index 1679e9d11f282c55..7ccce13e71bd10a9 100644 +--- a/string/test-mempcpy.c ++++ b/string/test-mempcpy.c +@@ -18,6 +18,7 @@ + . */ + + #define MEMCPY_RESULT(dst, len) (dst) + (len) ++#define MIN_PAGE_SIZE 131072 + #define TEST_MAIN + #define TEST_NAME "mempcpy" + #include "test-string.h" +diff --git a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S +index 058e871847a77c45..b78710ea9359e129 100644 +--- a/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S ++++ b/sysdeps/x86_64/multiarch/memcpy-avx512-no-vzeroupper.S +@@ -333,6 +333,7 @@ L(preloop_large): + vmovups (%rsi), %zmm4 + vmovups 0x40(%rsi), %zmm5 + ++ mov %rdi, %r11 + /* Align destination for access with non-temporal stores in the loop. */ + mov %rdi, %r8 + and $-0x80, %rdi +@@ -363,8 +364,8 @@ L(gobble_256bytes_nt_loop): + cmp $256, %rdx + ja L(gobble_256bytes_nt_loop) + sfence +- vmovups %zmm4, (%rax) +- vmovups %zmm5, 0x40(%rax) ++ vmovups %zmm4, (%r11) ++ vmovups %zmm5, 0x40(%r11) + jmp L(check) + + L(preloop_large_bkw): diff --git a/SOURCES/glibc-rh1579809-2.patch b/SOURCES/glibc-rh1579809-2.patch new file mode 100644 index 0000000..6037a14 --- /dev/null +++ b/SOURCES/glibc-rh1579809-2.patch @@ -0,0 +1,75 @@ +commit ed983107bbc62245b06b99f02e69acf36a0baa3e +Author: H.J. Lu +Date: Wed May 23 03:59:56 2018 -0700 + + Add a test case for [BZ #23196] + + [BZ #23196] + * string/test-memcpy.c (do_test1): New function. + (test_main): Call it. + +diff --git a/string/test-memcpy.c b/string/test-memcpy.c +index d252400bf5254eee..10a09d0b0fb50dc5 100644 +--- a/string/test-memcpy.c ++++ b/string/test-memcpy.c +@@ -206,6 +206,50 @@ do_random_tests (void) + } + } + ++static void ++do_test1 (void) ++{ ++ size_t size = 0x100000; ++ void *large_buf; ++ ++ large_buf = mmap (NULL, size * 2 + page_size, PROT_READ | PROT_WRITE, ++ MAP_PRIVATE | MAP_ANON, -1, 0); ++ if (large_buf == MAP_FAILED) ++ { ++ puts ("Failed to allocat large_buf, skipping do_test1"); ++ return; ++ } ++ ++ if (mprotect (large_buf + size, page_size, PROT_NONE)) ++ error (EXIT_FAILURE, errno, "mprotect failed"); ++ ++ size_t arrary_size = size / sizeof (uint32_t); ++ uint32_t *dest = large_buf; ++ uint32_t *src = large_buf + size + page_size; ++ size_t i; ++ ++ for (i = 0; i < arrary_size; i++) ++ src[i] = (uint32_t) i; ++ ++ FOR_EACH_IMPL (impl, 0) ++ { ++ memset (dest, -1, size); ++ CALL (impl, (char *) dest, (char *) src, size); ++ for (i = 0; i < arrary_size; i++) ++ if (dest[i] != src[i]) ++ { ++ error (0, 0, ++ "Wrong result in function %s dst \"%p\" src \"%p\" offset \"%zd\"", ++ impl->name, dest, src, i); ++ ret = 1; ++ break; ++ } ++ } ++ ++ munmap ((void *) dest, size); ++ munmap ((void *) src, size); ++} ++ + int + test_main (void) + { +@@ -247,6 +291,9 @@ test_main (void) + do_test (0, 0, getpagesize ()); + + do_random_tests (); ++ ++ do_test1 (); ++ + return ret; + } + diff --git a/SPECS/glibc.spec b/SPECS/glibc.spec index 43ef6ba..5a388ae 100644 --- a/SPECS/glibc.spec +++ b/SPECS/glibc.spec @@ -1,6 +1,6 @@ %define glibcsrcdir glibc-2.17-c758a686 %define glibcversion 2.17 -%define glibcrelease 222%{?dist} +%define glibcrelease 260%{?dist} ############################################################################## # We support the following options: # --with/--without, @@ -33,12 +33,6 @@ %undefine with_valgrind %endif %endif -%if %{with werror} -%ifarch s390x -# The 64-bit s390x builds are not -Werror clean yet. -%undefine with_werror -%endif -%endif %if %{with bootstrap} # Disable benchtests, -Werror, docs, and valgrind if we're bootstrapping %undefine with_benchtests @@ -221,7 +215,6 @@ Patch0028: glibc-fedora-localedata-rh61908.patch Patch0030: glibc-fedora-uname-getrlimit.patch Patch0031: glibc-fedora-__libc_multiple_libcs.patch Patch0032: glibc-fedora-elf-rh737223.patch -Patch0033: glibc-fedora-elf-ORIGIN.patch Patch0034: glibc-fedora-elf-init-hidden_undef.patch # Needs to be sent upstream @@ -260,6 +253,11 @@ Patch0066: glibc-rh1227699.patch # CVE-2015-7547 Patch0067: glibc-rh1296031.patch +# releng patch from Fedora +Patch0068: glibc-rh1349982.patch + +# These changes were brought forward from RHEL 6 for compatibility +Patch0069: glibc-rh1448107.patch ############################################################################## # # Patches from upstream @@ -1161,6 +1159,264 @@ Patch1900: glibc-rh1534635.patch Patch1901: glibc-rh1529982.patch Patch1902: glibc-rh1523119-compat-symbols.patch +Patch2500: glibc-rh1505492-nscd_stat.patch +Patch2501: glibc-rh1564638.patch +Patch2502: glibc-rh1566623.patch +Patch2503: glibc-rh1349967.patch +Patch2504: glibc-rh1505492-undef-malloc.patch +Patch2505: glibc-rh1505492-undef-elf-dtv-resize.patch +Patch2506: glibc-rh1505492-undef-elision.patch +Patch2507: glibc-rh1505492-undef-max_align_t.patch +Patch2508: glibc-rh1505492-unused-tst-default-attr.patch +Patch2509: glibc-rh1505492-prototypes-rtkaio.patch +Patch2510: glibc-rh1505492-zerodiv-log.patch +Patch2511: glibc-rh1505492-selinux.patch +Patch2512: glibc-rh1505492-undef-abi.patch +Patch2513: glibc-rh1505492-unused-math.patch +Patch2514: glibc-rh1505492-prototypes-1.patch +Patch2515: glibc-rh1505492-uninit-intl-plural.patch +Patch2516: glibc-rh1505492-undef-1.patch +Patch2517: glibc-rh1505492-undef-2.patch +Patch2518: glibc-rh1505492-bounded-1.patch +Patch2519: glibc-rh1505492-bounded-2.patch +Patch2520: glibc-rh1505492-bounded-3.patch +Patch2521: glibc-rh1505492-bounded-4.patch +Patch2522: glibc-rh1505492-undef-3.patch +Patch2523: glibc-rh1505492-bounded-5.patch +Patch2524: glibc-rh1505492-bounded-6.patch +Patch2525: glibc-rh1505492-bounded-7.patch +Patch2526: glibc-rh1505492-bounded-8.patch +Patch2527: glibc-rh1505492-unused-1.patch +Patch2528: glibc-rh1505492-bounded-9.patch +Patch2529: glibc-rh1505492-bounded-10.patch +Patch2530: glibc-rh1505492-bounded-11.patch +Patch2531: glibc-rh1505492-bounded-12.patch +Patch2532: glibc-rh1505492-bounded-13.patch +Patch2533: glibc-rh1505492-unused-2.patch +Patch2534: glibc-rh1505492-bounded-14.patch +Patch2535: glibc-rh1505492-bounded-15.patch +Patch2536: glibc-rh1505492-bounded-16.patch +Patch2537: glibc-rh1505492-bounded-17.patch +Patch2538: glibc-rh1505492-malloc_size_t.patch +Patch2539: glibc-rh1505492-malloc_ptrdiff_t.patch +Patch2540: glibc-rh1505492-prototypes-2.patch +Patch2541: glibc-rh1505492-prototypes-libc_fatal.patch +Patch2542: glibc-rh1505492-getlogin.patch +Patch2543: glibc-rh1505492-undef-4.patch +Patch2544: glibc-rh1505492-register.patch +Patch2545: glibc-rh1505492-prototypes-3.patch +Patch2546: glibc-rh1505492-unused-3.patch +Patch2547: glibc-rh1505492-ports-move-powerpc.patch +Patch2548: glibc-rh1505492-unused-4.patch +Patch2549: glibc-rh1505492-systemtap.patch +Patch2550: glibc-rh1505492-prototypes-wcschr-1.patch +Patch2551: glibc-rh1505492-prototypes-wcsrchr.patch +Patch2552: glibc-rh1505492-prototypes-powerpc-wcscpy.patch +Patch2553: glibc-rh1505492-prototypes-powerpc-wordcopy.patch +Patch2554: glibc-rh1505492-bsd-flatten.patch +Patch2555: glibc-rh1505492-unused-5.patch +Patch2556: glibc-rh1505492-types-1.patch +Patch2557: glibc-rh1505492-powerpc-sotruss.patch +Patch2558: glibc-rh1505492-s390x-sotruss.patch +Patch2559: glibc-rh1505492-ports-am33.patch +Patch2560: glibc-rh1505492-ports-move-arm.patch +Patch2561: glibc-rh1505492-undef-5.patch +Patch2562: glibc-rh1505492-prototypes-4.patch +Patch2563: glibc-rh1505492-ports-move-tile.patch +Patch2564: glibc-rh1505492-ports-move-m68k.patch +Patch2565: glibc-rh1505492-ports-move-mips.patch +Patch2566: glibc-rh1505492-ports-move-aarch64.patch +Patch2567: glibc-rh1505492-ports-move-alpha.patch +Patch2568: glibc-rh1505492-ports-move-ia64.patch +Patch2569: glibc-rh1505492-undef-6.patch +Patch2570: glibc-rh1505492-undef-7.patch +Patch2571: glibc-rh1505492-undef-intl.patch +Patch2572: glibc-rh1505492-undef-obstack.patch +Patch2573: glibc-rh1505492-undef-error.patch +Patch2574: glibc-rh1505492-undef-string.patch +Patch2575: glibc-rh1505492-undef-tempname.patch +Patch2576: glibc-rh1505492-undef-8.patch +Patch2577: glibc-rh1505492-undef-mktime.patch +Patch2578: glibc-rh1505492-undef-sysconf.patch +Patch2579: glibc-rh1505492-prototypes-Xat.patch +Patch2580: glibc-rh1505492-undef-ipc64.patch +Patch2581: glibc-rh1505492-undef-xfs-chown.patch +Patch2582: glibc-rh1505492-undef-9.patch +Patch2583: glibc-rh1505492-undef-10.patch +Patch2584: glibc-rh1505492-undef-11.patch +Patch2585: glibc-rh1505492-undef-12.patch +Patch2586: glibc-rh1505492-prototypes-5.patch +Patch2587: glibc-rh1505492-undef-13.patch +Patch2588: glibc-rh1505492-undef-14.patch +Patch2589: glibc-rh1505492-undef-15.patch +Patch2590: glibc-rh1505492-ports-move-hppa.patch +Patch2591: glibc-rh1505492-undef-16.patch +Patch2592: glibc-rh1505492-undef-17.patch +Patch2593: glibc-rh1505492-undef-18.patch +Patch2594: glibc-rh1505492-undef-19.patch +Patch2595: glibc-rh1505492-undef-20.patch +Patch2596: glibc-rh1505492-undef-21.patch +Patch2597: glibc-rh1505492-undef-22.patch +Patch2598: glibc-rh1505492-undef-23.patch +Patch2599: glibc-rh1505492-undef-24.patch +Patch2600: glibc-rh1505492-prototypes-rwlock.patch +Patch2601: glibc-rh1505492-undef-25.patch +Patch2602: glibc-rh1505492-undef-26.patch +Patch2603: glibc-rh1505492-undef-27.patch +Patch2604: glibc-rh1505492-undef-28.patch +Patch2605: glibc-rh1505492-undef-29.patch +Patch2606: glibc-rh1505492-undef-30.patch +Patch2607: glibc-rh1505492-undef-31.patch +Patch2608: glibc-rh1505492-undef-32.patch +Patch2609: glibc-rh1505492-undef-33.patch +Patch2610: glibc-rh1505492-prototypes-memchr.patch +Patch2611: glibc-rh1505492-undef-34.patch +Patch2612: glibc-rh1505492-prototypes-powerpc-memmove.patch +Patch2613: glibc-rh1505492-undef-35.patch +Patch2614: glibc-rh1505492-undef-36.patch +Patch2615: glibc-rh1505492-undef-37.patch +Patch2616: glibc-rh1505492-uninit-1.patch +Patch2617: glibc-rh1505492-undef-38.patch +Patch2618: glibc-rh1505492-uninit-2.patch +Patch2619: glibc-rh1505492-undef-39.patch +Patch2620: glibc-rh1505492-undef-40.patch +Patch2621: glibc-rh1505492-undef-41.patch +Patch2622: glibc-rh1505492-undef-42.patch +Patch2623: glibc-rh1505492-undef-43.patch +Patch2624: glibc-rh1505492-undef-44.patch +Patch2625: glibc-rh1505492-undef-45.patch +Patch2626: glibc-rh1505492-undef-46.patch +Patch2627: glibc-rh1505492-undef-47.patch +Patch2628: glibc-rh1505492-prototypes-6.patch +Patch2629: glibc-rh1505492-undef-48.patch +Patch2630: glibc-rh1505492-prototypes-execve.patch +Patch2631: glibc-rh1505492-prototypes-readv-writev.patch +Patch2632: glibc-rh1505492-prototypes-7.patch +Patch2633: glibc-rh1505492-prototypes-powerpc-pread-pwrite.patch +Patch2634: glibc-rh1505492-s390-backtrace.patch +Patch2635: glibc-rh1505492-unused-6.patch +Patch2636: glibc-rh1505492-prototypes-8.patch +Patch2637: glibc-rh1505492-prototypes-ctermid.patch +Patch2638: glibc-rh1505492-unused-7.patch +Patch2639: glibc-rh1505492-uninit-3.patch +Patch2640: glibc-rh1505492-types-2.patch +Patch2641: glibc-rh1505492-unused-8.patch +Patch2642: glibc-rh1505492-unused-9.patch +Patch2643: glibc-rh1505492-types-3.patch +Patch2644: glibc-rh1505492-unused-10.patch +Patch2645: glibc-rh1505492-types-5.patch +Patch2646: glibc-rh1505492-unused-11.patch +Patch2647: glibc-rh1505492-unused-12.patch +Patch2648: glibc-rh1505492-unused-13.patch +Patch2649: glibc-rh1505492-deprecated-1.patch +Patch2650: glibc-rh1505492-unused-14.patch +Patch2651: glibc-rh1505492-types-6.patch +Patch2652: glibc-rh1505492-address.patch +Patch2653: glibc-rh1505492-types-7.patch +Patch2654: glibc-rh1505492-prototypes-9.patch +Patch2655: glibc-rh1505492-diag.patch +Patch2656: glibc-rh1505492-zerodiv-1.patch +Patch2657: glibc-rh1505492-deprecated-2.patch +Patch2658: glibc-rh1505492-unused-15.patch +Patch2659: glibc-rh1505492-prototypes-sigvec.patch +Patch2660: glibc-rh1505492-werror-activate.patch +Patch2661: glibc-rh1505492-types-8.patch +Patch2662: glibc-rh1505492-prototypes-intl.patch +Patch2663: glibc-rh1505492-types-9.patch +Patch2664: glibc-rh1505492-types-10.patch +Patch2665: glibc-rh1505492-prototypes-sem_unlink.patch +Patch2666: glibc-rh1505492-prototypes-s390-pthread_once.patch +Patch2667: glibc-rh1505492-types-11.patch +Patch2668: glibc-rh1505492-types-12.patch +Patch2669: glibc-rh1505492-types-13.patch +Patch2670: glibc-rh1505492-undef-49.patch +Patch2671: glibc-rh1505492-undef-50.patch +Patch2672: glibc-rh1505492-undef-51.patch +Patch2673: glibc-rh1505492-undef-52.patch +Patch2674: glibc-rh1505492-types-14.patch +Patch2675: glibc-rh1505492-prototypes-10.patch +Patch2676: glibc-rh1505492-prototypes-wcschr-2.patch +Patch2677: glibc-rh1505492-prototypes-bzero.patch +Patch2678: glibc-rh1505492-winline.patch +Patch2679: glibc-rh1505492-prototypes-scandir.patch +Patch2680: glibc-rh1505492-prototypes-timespec_get.patch +Patch2681: glibc-rh1505492-prototypes-gettimeofday.patch +Patch2682: glibc-rh1505492-prototypes-no_cancellation.patch +Patch2683: glibc-rh1505492-prototypes-getttynam.patch +Patch2684: glibc-rh1505492-undef-53.patch +Patch2685: glibc-rh1505492-prototypes-stpcpy.patch +Patch2686: glibc-rh1505492-undef-54.patch +Patch2687: glibc-rh1505492-undef-55.patch +Patch2688: glibc-rh1505492-undef-activate.patch +Patch2689: glibc-rh1505492-prototypes-debug.patch +Patch2690: glibc-rh1505492-prototypes-putXent.patch +Patch2691: glibc-rh1505492-prototypes-11.patch +Patch2692: glibc-rh1505492-prototypes-12.patch +Patch2693: glibc-rh1505492-prototypes-13.patch +Patch2694: glibc-rh1505492-prototypes-14.patch +Patch2695: glibc-rh1505492-prototypes-15.patch +Patch2696: glibc-rh1505492-prototypes-16.patch +Patch2697: glibc-rh1505492-prototypes-17.patch +Patch2698: glibc-rh1505492-prototypes-18.patch +Patch2699: glibc-rh1505492-prototypes-activate.patch +Patch2700: glibc-rh1505492-unused-16.patch +Patch2701: glibc-rh1505492-unused-17.patch +Patch2702: glibc-rh1505492-undef-56.patch +Patch2703: glibc-rh1548002.patch +Patch2704: glibc-rh1307241-1.patch +Patch2705: glibc-rh1307241-2.patch + +Patch2706: glibc-rh1563747.patch +Patch2707: glibc-rh1476120.patch +Patch2708: glibc-rh1505647.patch + +Patch2709: glibc-rh1457479-1.patch +Patch2710: glibc-rh1457479-2.patch +Patch2711: glibc-rh1457479-3.patch +Patch2712: glibc-rh1457479-4.patch +Patch2713: glibc-rh1461231.patch + +Patch2714: glibc-rh1577333.patch +Patch2715: glibc-rh1531168-1.patch +Patch2716: glibc-rh1531168-2.patch +Patch2717: glibc-rh1531168-3.patch +Patch2718: glibc-rh1579742.patch +Patch2719: glibc-rh1579727-1.patch +Patch2720: glibc-rh1579727-2.patch +Patch2721: glibc-rh1579809-1.patch +Patch2722: glibc-rh1579809-2.patch +Patch2723: glibc-rh1505451.patch +Patch2724: glibc-rh1505477.patch +Patch2725: glibc-rh1505500.patch +Patch2726: glibc-rh1563046.patch + +# RHBZ 1560641 - backport of upstream sem_open patch +Patch2727: glibc-rh1560641.patch + +Patch2728: glibc-rh1550080.patch +Patch2729: glibc-rh1526193.patch +Patch2730: glibc-rh1372304-1.patch +Patch2731: glibc-rh1372304-2.patch +Patch2732: glibc-rh1540480-0.patch +Patch2733: glibc-rh1540480-1.patch +Patch2734: glibc-rh1540480-2.patch +Patch2735: glibc-rh1540480-3.patch +Patch2736: glibc-rh1540480-4.patch +Patch2737: glibc-rh1540480-5.patch +Patch2738: glibc-rh1540480-6.patch +Patch2739: glibc-rh1540480-7.patch +Patch2740: glibc-rh1540480-8.patch +Patch2741: glibc-rh1447808-0.patch +Patch2742: glibc-rh1447808-1.patch +Patch2743: glibc-rh1447808-2.patch +Patch2744: glibc-rh1401665-0.patch +Patch2745: glibc-rh1401665-1a.patch +Patch2746: glibc-rh1401665-1b.patch +Patch2747: glibc-rh1401665-1c.patch +Patch2748: glibc-rh1401665-2.patch +Patch2749: glibc-rh1401665-3.patch +Patch2750: glibc-rh1401665-4.patch +Patch2751: glibc-rh1401665-5.patch ############################################################################## # @@ -1293,6 +1549,8 @@ Patch2111: glibc-rh677316-legacy.patch Patch2112: glibc-rh1498566.patch Patch2113: glibc-rh1445644.patch +Patch2114: glibc-rh1471405.patch + ############################################################################## # End of glibc patches. ############################################################################## @@ -1315,6 +1573,16 @@ Provides: ld-linux.so.3 Provides: ld-linux.so.3(GLIBC_2.4) %endif +# This should remain "Provides: nss_db" (or become a subpackage) to allow easy +# migration from old systems that previously had the old nss_db package +# installed. Note that this doesn't make the migration that smooth, the +# databases still need rebuilding because the formats were different. +# The nss_db package was deprecated in F16 and onwards: +# https://lists.fedoraproject.org/pipermail/devel/2011-July/153665.html +# The different database format does cause some issues for users: +# https://lists.fedoraproject.org/pipermail/devel/2011-December/160497.html +Provides: nss_db + Requires: glibc-common = %{version}-%{release} # Require libgcc in case some program calls pthread_cancel in its %%post @@ -1644,7 +1912,6 @@ package or when debugging this package. %patch0030 -p1 %patch0031 -p1 %patch0032 -p1 -%patch0033 -p1 %patch0034 -p1 %patch1051 -p1 %patch0035 -p1 @@ -2108,6 +2375,7 @@ package or when debugging this package. %patch1754 -p1 %patch1755 -p1 %patch1756 -p1 +%patch0068 -p1 %patch1757 -p1 %patch17580 -p1 %patch1758 -p1 @@ -2263,6 +2531,7 @@ package or when debugging this package. %patch2111 -p1 %patch2112 -p1 %patch2113 -p1 +%patch2114 -p1 %patch1878 -p1 %patch1879 -p1 @@ -2291,6 +2560,262 @@ package or when debugging this package. %patch1900 -p1 %patch1901 -p1 %patch1902 -p1 +%patch2500 -p1 +%patch2501 -p1 +%patch2502 -p1 +%patch2503 -p1 +%patch2504 -p1 +%patch2505 -p1 +%patch2506 -p1 +%patch2507 -p1 +%patch2508 -p1 +%patch2509 -p1 +%patch2510 -p1 +%patch2511 -p1 +%patch2512 -p1 +%patch2513 -p1 +%patch2514 -p1 +%patch2515 -p1 +%patch2516 -p1 +%patch2517 -p1 +%patch2518 -p1 +%patch2519 -p1 +%patch2520 -p1 +%patch2521 -p1 +%patch2522 -p1 +%patch2523 -p1 +%patch2524 -p1 +%patch2525 -p1 +%patch2526 -p1 +%patch2527 -p1 +%patch2528 -p1 +%patch2529 -p1 +%patch2530 -p1 +%patch2531 -p1 +%patch2532 -p1 +%patch2533 -p1 +%patch2534 -p1 +%patch2535 -p1 +%patch2536 -p1 +%patch2537 -p1 +%patch2538 -p1 +%patch2539 -p1 +%patch2540 -p1 +%patch2541 -p1 +%patch2542 -p1 +%patch2543 -p1 +%patch0069 -p1 +%patch2544 -p1 +%patch2545 -p1 +%patch2546 -p1 +%patch2547 -p1 +%patch2548 -p1 +%patch2549 -p1 +%patch2550 -p1 +%patch2551 -p1 +%patch2552 -p1 +%patch2553 -p1 +%patch2554 -p1 +%patch2555 -p1 +%patch2556 -p1 +%patch2557 -p1 +%patch2558 -p1 +%patch2559 -p1 +%patch2560 -p1 +%patch2561 -p1 +%patch2562 -p1 +%patch2563 -p1 +%patch2564 -p1 +%patch2565 -p1 +%patch2566 -p1 +%patch2567 -p1 +%patch2568 -p1 +%patch2569 -p1 +%patch2570 -p1 +%patch2571 -p1 +%patch2572 -p1 +%patch2573 -p1 +%patch2574 -p1 +%patch2575 -p1 +%patch2576 -p1 +%patch2577 -p1 +%patch2578 -p1 +%patch2579 -p1 +%patch2580 -p1 +%patch2581 -p1 +%patch2582 -p1 +%patch2583 -p1 +%patch2584 -p1 +%patch2585 -p1 +%patch2586 -p1 +%patch2587 -p1 +%patch2588 -p1 +%patch2589 -p1 +%patch2590 -p1 +%patch2591 -p1 +%patch2592 -p1 +%patch2593 -p1 +%patch2594 -p1 +%patch2595 -p1 +%patch2596 -p1 +%patch2597 -p1 +%patch2598 -p1 +%patch2599 -p1 +%patch2600 -p1 +%patch2601 -p1 +%patch2602 -p1 +%patch2603 -p1 +%patch2604 -p1 +%patch2605 -p1 +%patch2606 -p1 +%patch2607 -p1 +%patch2608 -p1 +%patch2609 -p1 +%patch2610 -p1 +%patch2611 -p1 +%patch2612 -p1 +%patch2613 -p1 +%patch2614 -p1 +%patch2615 -p1 +%patch2616 -p1 +%patch2617 -p1 +%patch2618 -p1 +%patch2619 -p1 +%patch2620 -p1 +%patch2621 -p1 +%patch2622 -p1 +%patch2623 -p1 +%patch2624 -p1 +%patch2625 -p1 +%patch2626 -p1 +%patch2627 -p1 +%patch2628 -p1 +%patch2629 -p1 +%patch2630 -p1 +%patch2631 -p1 +%patch2632 -p1 +%patch2633 -p1 +%patch2634 -p1 +%patch2635 -p1 +%patch2636 -p1 +%patch2637 -p1 +%patch2638 -p1 +%patch2639 -p1 +%patch2640 -p1 +%patch2641 -p1 +%patch2642 -p1 +%patch2643 -p1 +%patch2644 -p1 +%patch2645 -p1 +%patch2646 -p1 +%patch2647 -p1 +%patch2648 -p1 +%patch2649 -p1 +%patch2650 -p1 +%patch2651 -p1 +%patch2652 -p1 +%patch2653 -p1 +%patch2654 -p1 +%patch2655 -p1 +%patch2656 -p1 +%patch2657 -p1 +%patch2658 -p1 +%patch2659 -p1 +%patch2660 -p1 +%patch2661 -p1 +%patch2662 -p1 +%patch2663 -p1 +%patch2664 -p1 +%patch2665 -p1 +%patch2666 -p1 +%patch2667 -p1 +%patch2668 -p1 +%patch2669 -p1 +%patch2670 -p1 +%patch2671 -p1 +%patch2672 -p1 +%patch2673 -p1 +%patch2674 -p1 +%patch2675 -p1 +%patch2676 -p1 +%patch2677 -p1 +%patch2678 -p1 +%patch2679 -p1 +%patch2680 -p1 +%patch2681 -p1 +%patch2682 -p1 +%patch2683 -p1 +%patch2684 -p1 +%patch2685 -p1 +%patch2686 -p1 +%patch2687 -p1 +%patch2688 -p1 +%patch2689 -p1 +%patch2690 -p1 +%patch2691 -p1 +%patch2692 -p1 +%patch2693 -p1 +%patch2694 -p1 +%patch2695 -p1 +%patch2696 -p1 +%patch2697 -p1 +%patch2698 -p1 +%patch2699 -p1 +%patch2700 -p1 +%patch2701 -p1 +%patch2702 -p1 +%patch2703 -p1 +%patch2704 -p1 +%patch2705 -p1 + +%patch2706 -p1 +%patch2707 -p1 +%patch2708 -p1 + +%patch2709 -p1 +%patch2710 -p1 +%patch2711 -p1 +%patch2712 -p1 +%patch2713 -p1 + +%patch2714 -p1 +%patch2715 -p1 +%patch2716 -p1 +%patch2717 -p1 +%patch2718 -p1 +%patch2719 -p1 +%patch2720 -p1 +%patch2721 -p1 +%patch2722 -p1 +%patch2723 -p1 +%patch2724 -p1 +%patch2725 -p1 +%patch2726 -p1 +%patch2727 -p1 +%patch2728 -p1 +%patch2729 -p1 +%patch2730 -p1 +%patch2731 -p1 +%patch2732 -p1 +%patch2733 -p1 +%patch2734 -p1 +%patch2735 -p1 +%patch2736 -p1 +%patch2737 -p1 +%patch2738 -p1 +%patch2739 -p1 +%patch2740 -p1 +%patch2741 -p1 +%patch2742 -p1 +%patch2743 -p1 +%patch2744 -p1 +%patch2745 -p1 +%patch2746 -p1 +%patch2747 -p1 +%patch2748 -p1 +%patch2749 -p1 +%patch2750 -p1 +%patch2751 -p1 ############################################################################## # %%prep - Additional prep required... @@ -2455,7 +2980,7 @@ build_CFLAGS="$BuildFlags -g -O3 $*" configure_CFLAGS="$build_CFLAGS -fno-asynchronous-unwind-tables" ../configure CC="$GCC" CXX="$GXX" CFLAGS="$configure_CFLAGS" \ --prefix=%{_prefix} \ - --enable-add-ons=ports,nptl$AddOns \ + --enable-add-ons=nptl$AddOns \ --with-headers=%{_prefix}/include $EnableKernel --enable-bind-now \ --build=%{target} \ %ifarch %{multiarcharches} @@ -3454,6 +3979,132 @@ rm -f *.filelist* %endif %changelog +* Wed Jun 27 2018 Patsy Franklin - 2.17-260 +- Update glibc-rh1560641.patch to initialize pad outside + the conditional eliminating an uninitialized byte warning from + valgrind. (#1560641) + +* Fri Jun 15 2018 Arjun Shankar - 2.17-259 +- Correctly set errno when send() fails on i686 (#1550080) + +* Tue Jun 12 2018 Carlos O'Donell - 2.17-258 +- Fix dynamic string token substitution in DT_RPATH etc. (#1447808, #1540480) +- Additional robust mutex fixes (#1401665) + +* Tue Jun 12 2018 Carlos O'Donell - 2.17-257 +- Improve process-shared robust mutex support (#1401665) + +* Tue Jun 12 2018 Carlos O'Donell 2.17-256 +- CVE-2017-16997: Correctly handle DT_RPATH (#1540480). +- Correctly process "$ORIGIN" element in DT_RPATH or DT_NEEDED (#1447808). + +* Tue Jun 12 2018 Carlos O'Donell - 2.17-255 +- Make transition from legacy nss_db easier (#1408964) + +* Mon Jun 11 2018 Arjun Shankar - 2.17-254 +- nptl: Avoid expected SIGALRM in most tests (#1372304) + +* Fri Jun 8 2018 Patsy Franklin - 2.17-253 +- Add support for el_GR@euro locale. Update el_GR, ur_IN and + wal_ET locales. (#1448107) + +* Fri Jun 8 2018 Arjun Shankar - 2.17-252 +- Do not scale NPTL tests with available number of CPUs (#1526193) + +* Thu Jun 7 2018 Arjun Shankar - 2.17-251 +- Correctly set errno when send() fails on s390 and s390x (#1550080) + +* Wed Jun 6 2018 Patsy Franklin - 2.17-250 +- Initialize pad field in sem_open. (#1560641) + +* Mon Jun 4 2018 Arjun Shankar - 2.17-249 +- getlogin_r: Return early when process has no associated login UID (#1563046) + +* Mon Jun 4 2018 Arjun Shankar - 2.17-248 +- Return static array, not local array from transliteration function (#1505500) + +* Mon Jun 4 2018 Arjun Shankar - 2.17-247 +- Re-write multi-statement strftime_l macros using better style (#1505477) + +* Mon Jun 4 2018 Arjun Shankar - 2.17-246 +- Fix pthread_barrier_init typo (#1505451) + +* Wed May 23 2018 Florian Weimer - 2.17-245 +- CVE-2018-11237: AVX-512 mempcpy for KNL buffer overflow (#1579809) + +* Wed May 23 2018 Florian Weimer - 2.17-244 +- resolv: Fix crash after memory allocation failure (#1579727) + +* Wed May 23 2018 Florian Weimer - 2.17-243 +- CVE-2018-11236: Path length overflow in realpath (#1579742) + +* Tue May 22 2018 DJ Delorie - 2.17-242 +- S390: fix sys/ptrace.h to make it includible again after + asm/ptrace.h (#1457479) + +* Tue May 22 2018 Florian Weimer - 2.17-241 +- x86: setcontext, makecontext alignment issues (#1531168) + +* Wed May 16 2018 DJ Delorie - 2.17-240 +- Remove abort() warning in manual (#1577333) + +* Wed May 16 2018 DJ Delorie - 2.17-239 +- Add Open File Description (OFL) locks. (#1461231) + +* Sun May 13 2018 Patsy Franklin - 2.17-238 +- Properly handle more invalid --install-langs arguments. (#1349982) + +* Fri May 11 2018 DJ Delorie - 2.17-237 +- Add O_TMPFILE macro (#1471405) +- Update syscall names list to kernel 4.16 (#1563747) +- Include in bits/fcntl-linux.h. (#1476120) +- Fix netgroup cache keys. (#1505647) +- Update ptrace constants. (#1457479) + +* Thu May 3 2018 Arjun Shankar - 2.17-236 +- Fix strfmon_l so that it groups digits (#1307241) + +* Thu May 3 2018 Arjun Shankar - 2.17-235 +- CVE-2018-6485: Integer overflow in posix_memalign in memalign (#1548002) + +* Fri Apr 13 2018 Florian Weimer - 2.17-234 +- Adjust spec file for compiler warnings cleanup (#1505492) +- Drop ports add-on +- Do not attempt to disable warnings-as-errors on s390x + +* Fri Apr 13 2018 Florian Weimer - 2.17-233 +- Compiler warnings cleanup, phase 7 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-232 +- Compiler warnings cleanup, phase 6 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-231 +- Compiler warnings cleanup, phase 5 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-230 +- Compiler warnings cleanup, phase 4 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-229 +- Compiler warnings cleanup, phase 3 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-228 +- Compiler warnings cleanup, phase 2 (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-227 +- Fix downstream-specific compiler warnings (#1505492) + +* Fri Apr 13 2018 Florian Weimer - 2.17-226 +- rtkaio: Do not define IN_MODULE (#1349967) + +* Fri Apr 13 2018 Florian Weimer - 2.17-225 +- Fix K&R function definitions in libio (#1566623) + +* Fri Apr 13 2018 Florian Weimer - 2.17-224 +- Fix type errors in string tests (#1564638) + +* Fri Apr 13 2018 Florian Weimer - 2.17-223 +- Make nscd build reproducible for verification (#1505492) + * Thu Feb 1 2018 Florian Weimer - 2.17-222 - Restore internal GLIBC_PRIVATE symbols for use during upgrades (#1523119)

, , , , , , , , , , + +diff --git a/localedata/locales/en_NG b/localedata/locales/en_NG +index 31bb4fb2d833d824..a418eb95709c5de4 100644 +--- a/localedata/locales/en_NG ++++ b/localedata/locales/en_NG +@@ -104,7 +104,7 @@ day "";/ + "";/ + "" + +-% abmon - The abbreviations for the months ++% abmon - The abbreviations for the months + % - Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec + abmon "";"";/ + "";"";/ +@@ -113,7 +113,7 @@ abmon "";"";/ + "";"";/ + "";"" + +-% mon - The full names of the months - ++% mon - The full names of the months - + % - January, February, March, April, May, June + % July, August, September, October, November, December + mon "";/ +diff --git a/localedata/locales/es_US b/localedata/locales/es_US +index 71e8ac803c65ffbc..c90f88c04e4ac9a7 100644 +--- a/localedata/locales/es_US ++++ b/localedata/locales/es_US +@@ -86,7 +86,7 @@ reorder-after + ;;;IGNORE + ;;;IGNORE + +-reorder-after ++reorder-after + ;;;IGNORE + ;;;IGNORE + +@@ -97,7 +97,7 @@ reorder-after + ;;;IGNORE + ;;;IGNORE + +-reorder-after ++reorder-after + ;;;IGNORE + ;;;IGNORE + +diff --git a/localedata/locales/fil_PH b/localedata/locales/fil_PH +index ad3ea8eab2e644b8..c1a6b1026c978ac3 100644 +--- a/localedata/locales/fil_PH ++++ b/localedata/locales/fil_PH +@@ -2,8 +2,8 @@ comment_char % + escape_char / + % + % Filipino Language Locale for Philippines +-% Source: +-% Contact: Rene Torres, Pablo Saratxaga ++% Source: ++% Contact: Rene Torres, Pablo Saratxaga + % Email: , + % Language: fil + % Territory: PH +@@ -73,7 +73,7 @@ reorder-after + ;;;IGNORE + ;;;IGNORE + ;;;IGNORE +-reorder-after ++reorder-after + ;;;IGNORE + ;;;IGNORE + ;;;IGNORE +diff --git a/localedata/locales/fy_DE b/localedata/locales/fy_DE +index 588f3e268e31fdb7..df894f21cf158157 100644 +--- a/localedata/locales/fy_DE ++++ b/localedata/locales/fy_DE +@@ -3,7 +3,7 @@ escape_char / + % charset "ISO_8859-1:1987" + % Distribution and use is + +-LC_IDENTIFICATION ++LC_IDENTIFICATION + title "Sater Frisian and North Frisian Locale for Germany" + source "information from Kenneth Christiansen" + address "" +diff --git a/localedata/locales/gu_IN b/localedata/locales/gu_IN +index e908e70e3edb0200..49cd1e2b7f07b531 100644 +--- a/localedata/locales/gu_IN ++++ b/localedata/locales/gu_IN +@@ -50,7 +50,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/ha_NG b/localedata/locales/ha_NG +index d74d324dcafe96d5..8c431cc8e9c6a7c2 100644 +--- a/localedata/locales/ha_NG ++++ b/localedata/locales/ha_NG +@@ -2,7 +2,7 @@ escape_char / + comment_char % + % + % Hausa language locale for Nigeria +-% Source: ++% Source: + % Contact: Pablo Saratxaga + % Email: pablo@mandriva.com + % Language: ha +@@ -72,7 +72,7 @@ collating-element <'1y> from "" + collating-element <'1Y> from "" + collating-element <'2y> from "" + collating-element <'2Y> from "" +-collating-symbol ++collating-symbol + collating-element from "" + collating-element from "" + collating-symbol +@@ -81,10 +81,10 @@ collating-symbol + + collating-symbol + collating-symbol +- ++ + reorder-after + +- ++ + reorder-after + + +@@ -165,7 +165,7 @@ END LC_NUMERIC + LC_TELEPHONE + copy "en_NG" + END LC_TELEPHONE +- ++ + LC_TIME + % Lah, Lit, Tal, Lar, Alh, Jum, Asa + % maybe "Lhd" "Lrb" => "Lh"/"Lb" on 2letter tables? +@@ -188,7 +188,7 @@ abmon "";"";/ + "";"";/ + "";"";/ + "";"" +-% Janairu, Fabrairu, Maris, Afrilu, Mayu, Yuni, ++% Janairu, Fabrairu, Maris, Afrilu, Mayu, Yuni, + % Yuli, Agusta, Satumba, Oktoba, Nuwamba, Disamba + mon "";/ + "";/ +diff --git a/localedata/locales/hi_IN b/localedata/locales/hi_IN +index bdba3e2b354ea92a..0ff10a115827d452 100644 +--- a/localedata/locales/hi_IN ++++ b/localedata/locales/hi_IN +@@ -49,7 +49,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/ig_NG b/localedata/locales/ig_NG +index c808828b4a1098eb..47ad2124f5393c0e 100644 +--- a/localedata/locales/ig_NG ++++ b/localedata/locales/ig_NG +@@ -2,7 +2,7 @@ escape_char / + comment_char % + % + % Igbo language locale for Nigeria +-% Source: ++% Source: + % Contact: Pablo Saratxaga + % Email: pablo@mandriva.com + % Language: ig +@@ -50,7 +50,7 @@ LC_COLLATE + % aacute, eacute, iacute, oacute, uacute, nacute + % agrave, egrave, igrave, ograve, ugrave, ngrave + % +-% order: a, b, [c], ch, d, e, f, g, gb, gh, gw, h, i, i., j, k, kp, kw, ++% order: a, b, [c], ch, d, e, f, g, gb, gh, gw, h, i, i., j, k, kp, kw, + % l, m, n, n., nw, ny, o, o., p, [q], r, s, sh, t, u, u., v, w, [x], y, z + + copy "iso14651_t1" +@@ -169,10 +169,10 @@ collating-element from "" + + collating-symbol + collating-symbol +- ++ + reorder-after + +- ++ + reorder-after + + +@@ -363,7 +363,7 @@ END LC_NUMERIC + LC_TELEPHONE + copy "en_NG" + END LC_TELEPHONE +- ++ + LC_TIME + % sọn, mọn, tuz, wen, tọs, fra, sat + abday "";"";/ +@@ -385,7 +385,7 @@ abmon "";"";/ + "";"";/ + "";"";/ + "";"" +-% jenụwarị, febụrụwarị, maachị, epreel, mee, juun, ++% jenụwarị, febụrụwarị, maachị, epreel, mee, juun, + % julaị, ọgọstụ, septemba, ọktoba, nọvemba, disemba + mon "";/ + "";/ +diff --git a/localedata/locales/ik_CA b/localedata/locales/ik_CA +index 1b967423ed174948..7648f24122bbfc7c 100644 +--- a/localedata/locales/ik_CA ++++ b/localedata/locales/ik_CA +@@ -2,7 +2,7 @@ escape_char / + comment_char % + % + % Inupiaq language locale for Canada +-% Source: ++% Source: + % Contact: Pablo Saratxaga + % Email: pablo@mandriva.com + % Language: ik +@@ -43,7 +43,7 @@ END LC_IDENTIFICATION + + LC_COLLATE + +-% Inupiaq uses the following extra letters: ++% Inupiaq uses the following extra letters: + % gdotabove, ldotbelow, lbarred, lbarreddotbelow (not in unicode, + % has to be composed as lbarred+composingdotbelow), eng, ntilde + % +@@ -82,10 +82,10 @@ collating-symbol + + collating-symbol + collating-symbol +- ++ + reorder-after + +- ++ + reorder-after + + +@@ -142,7 +142,7 @@ reorder-after + ;;;IGNORE + ;;;IGNORE + +- ++ + reorder-end + + END LC_COLLATE +@@ -162,7 +162,7 @@ END LC_NUMERIC + LC_TELEPHONE + copy "en_CA" + END LC_TELEPHONE +- ++ + LC_TIME + abday "";"";/ + "";"";/ +diff --git a/localedata/locales/iu_CA b/localedata/locales/iu_CA +index cb91f3ddfdae6926..e46910c06db99fcb 100644 +--- a/localedata/locales/iu_CA ++++ b/localedata/locales/iu_CA +@@ -37,7 +37,7 @@ postal_fmt "/ + / + " + % FIXME country_name "Canada" in inuktitut ? +-% FIXME country_post "CA" for Canada ? ++% FIXME country_post "CA" for Canada ? + country_ab2 "" + country_ab3 "" + country_num 124 +diff --git a/localedata/locales/kn_IN b/localedata/locales/kn_IN +index 16e39748ef0b227e..f57031fc418d5f34 100644 +--- a/localedata/locales/kn_IN ++++ b/localedata/locales/kn_IN +@@ -51,7 +51,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/ks_IN@devanagari b/localedata/locales/ks_IN@devanagari +index 888686042966077e..e1f629024f90bb49 100644 +--- a/localedata/locales/ks_IN@devanagari ++++ b/localedata/locales/ks_IN@devanagari +@@ -1,7 +1,7 @@ + comment_char % + escape_char / + % Kashmiri(devanagari) language locale for India. +-% Contributed by Rakesh Pandit and ++% Contributed by Rakesh Pandit and + % Pravin Satpute + + LC_IDENTIFICATION +diff --git a/localedata/locales/li_BE b/localedata/locales/li_BE +index 7896092a75f0322f..3a13dbbc5ea2d4c5 100644 +--- a/localedata/locales/li_BE ++++ b/localedata/locales/li_BE +@@ -2,7 +2,7 @@ comment_char % + escape_char / + % Distribution and use is + +-LC_IDENTIFICATION ++LC_IDENTIFICATION + title "Limburgish Language Locale for Belgium" + source "information from Kenneth Christiansen" + address "" +diff --git a/localedata/locales/li_NL b/localedata/locales/li_NL +index d0a710a7a0032249..0588cb85a2773af3 100644 +--- a/localedata/locales/li_NL ++++ b/localedata/locales/li_NL +@@ -2,7 +2,7 @@ comment_char % + escape_char / + % Distribution and use is + +-LC_IDENTIFICATION ++LC_IDENTIFICATION + title "Limburgish Language Locale for the Netherlands" + source "information from Kenneth Christiansen" + address "" +diff --git a/localedata/locales/mg_MG b/localedata/locales/mg_MG +index 996f2c53e345f606..4f738cae5239f30e 100644 +--- a/localedata/locales/mg_MG ++++ b/localedata/locales/mg_MG +@@ -154,7 +154,7 @@ tel_int_fmt "/ + tel_dom_fmt "" + % 261 + int_prefix "" +-% 00 ++% 00 + int_select "" + END LC_TELEPHONE + +diff --git a/localedata/locales/ml_IN b/localedata/locales/ml_IN +index deee7ed8f4f77323..564f0de5d6555535 100644 +--- a/localedata/locales/ml_IN ++++ b/localedata/locales/ml_IN +@@ -48,7 +48,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/mr_IN b/localedata/locales/mr_IN +index dc93845a1a5137c0..7ce9dc58d817964f 100644 +--- a/localedata/locales/mr_IN ++++ b/localedata/locales/mr_IN +@@ -54,8 +54,8 @@ reorder-after + + + reorder-after +- ;;;IGNORE +- ;;;IGNORE ++ ;;;IGNORE ++ ;;;IGNORE + ;;;IGNORE + + reorder-end +diff --git a/localedata/locales/nso_ZA b/localedata/locales/nso_ZA +index c3351ee8b9fe0b86..5970e52ba6d90a6d 100644 +--- a/localedata/locales/nso_ZA ++++ b/localedata/locales/nso_ZA +@@ -17,7 +17,7 @@ comment_char % + % 2004-03-30 Dwayne Bailey + % - Added country_ab2/3, country_num + % 2004-02-27: Dwayne Bailey +-% - Correction of lang_name comment ++% - Correction of lang_name comment + % 0.1 (2004-02-11): + % Initial Northern Sotho locale for South Africa + % by Zuza Software Foundation +@@ -80,7 +80,7 @@ abday "";/ + "";/ + "";/ + "" +- ++ + % day - The full names of the week days: + % - LaMorena, Mos^upologo, Labobedi, Laboraro, Labone, Labohlano, Mokibelo + day "";/ +@@ -90,8 +90,8 @@ day "";/ + "";/ + "";/ + "" +- +-% abmon - The abbreviations for the months ++ ++% abmon - The abbreviations for the months + % - Jan, Feb, Mat, Apr, Mei, Jun, Jul, Ago, Set, Okt, Nof, Dis + abmon "";"";/ + "";"";/ +@@ -99,8 +99,8 @@ abmon "";"";/ + "";"";/ + "";"";/ + "";"" +- +-% mon - The full names of the months - ++ ++% mon - The full names of the months - + % - Janaware, Febereware, Mats^he, Aprele, Mei, June + % Julae, Agostose, Setemere, Oktobere, Nofemere, Disemere + mon "";/ +@@ -115,7 +115,7 @@ mon "";/ + "";/ + "";/ + "" +- ++ + % Abreviated date and time representation to be referenced by the "%c" field descriptor - + d_t_fmt "" + % +@@ -125,23 +125,23 @@ d_t_fmt "" + % "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000). +- ++ + % Time representation to be referenced by the "%X" field descriptor - + t_fmt "" + % "%T" (24-hour clock time in format HH:MM:SS) +- ++ + % Define representation of ante meridiem and post meridiem strings - + am_pm "";"" + % The "" mean 'default to "AM" and "PM". +- ++ + % Define time representation in 12-hour format with "am_pm", to be referenced by the "%r" + t_fmt_ampm "" + % The "" means that this format is not supported. +- ++ + % Date representation not described in ISO/IEC 14652. Comes out as - + % "%a %b %e %H:%M:%S %Z %Y" which is default "date" command output + date_fmt "/ +@@ -156,7 +156,7 @@ date_fmt "/ + % %S - seconds as a decimal number (00 to 59), + % %Z - time-zone name, + % %Y - year with century as a decimal number,e.g. 2001. +- ++ + END LC_TIME + + LC_MESSAGES +@@ -194,14 +194,14 @@ name_fmt "/ + % "Middle names", + % "Empty string, or ", + % "Clan names" +- ++ + % FIXME - define all the following name_* + % General salutation for any sex + % name_gen "" + + % Salutation for unmarried females - "" + % name_miss "" +- ++ + % Salutation for males - "" + % name_mr "" + +@@ -217,7 +217,7 @@ LC_ADDRESS + % Country name in Northern Sotho - "Afrika Borwa" + country_name "/ + " +- ++ + % Abbreviated country postal name - "ZA" + country_post "" + +@@ -228,7 +228,7 @@ country_car "" + + % FIXME define the following correctly + % country_isbn "" +- ++ + % Language name in Northern Sotho - "Sesotho sa Leboa" + lang_name "/ + " +@@ -238,7 +238,7 @@ lang_name "/ + lang_ab "" + lang_term "" + lang_lib "" +- ++ + % Representation of postal addresses (minus the addressee's name) in South + % Africa. (Ignored for now) + postal_fmt "/ +diff --git a/localedata/locales/or_IN b/localedata/locales/or_IN +index d7b253f3f4fb0df6..59b793fa906c2392 100644 +--- a/localedata/locales/or_IN ++++ b/localedata/locales/or_IN +@@ -50,7 +50,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/pa_IN b/localedata/locales/pa_IN +index 2a2dd1e60e259477..6128253b7e58a032 100644 +--- a/localedata/locales/pa_IN ++++ b/localedata/locales/pa_IN +@@ -48,7 +48,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/ro_RO b/localedata/locales/ro_RO +index 210d7f81b25b5004..b8953288fe0c2ffb 100644 +--- a/localedata/locales/ro_RO ++++ b/localedata/locales/ro_RO +@@ -115,9 +115,9 @@ copy "i18n" + + % + % Transliteration is _currently_ a good idea as most fonts/applications do not +-% have the correct diacritics for "t comma bellow" (U021A, U021B) and ++% have the correct diacritics for "t comma bellow" (U021A, U021B) and + % "s comma bellow" (U0218, U0219). Thus we currently use and compromise with +-% "t cedilla" (U0162, U0163) - which, actually, does not belong to any ++% "t cedilla" (U0162, U0163) - which, actually, does not belong to any + % language - and "s cedilla" (U015E, U015F) - which is _not_ correct for + % Romanian, but is correct for Turkish. + % +@@ -197,11 +197,11 @@ abday "";"";"";"";/ + % Because in 1992 the Romanian Academy stated that within words the + % writing of the letter i> (i circumflex - U00EE) should be replaced + % by a> (acircumflex - U00E2), we use the post92 writing. +-% Note: The actual rule is more complex, but the case which applies for ++% Note: The actual rule is more complex, but the case which applies for + % Satruday is covered by the exposed explanation above. + % + % Day names are not capitalized: +-% duminic, luni, mari, ++% duminic, luni, mari, + % miercuri, joi, vineri, + % smbt + % +@@ -247,7 +247,7 @@ mon "";/ + "";/ + "" + % Appropriate date and time representation (%c) +-% Romania uses daylight saving and the names of the time zones are ++% Romania uses daylight saving and the names of the time zones are + % not widely known nor used + % "%a %d %b %Y %T %z" + d_t_fmt "/ +@@ -296,7 +296,7 @@ END LC_MEASUREMENT + LC_NAME + % Format of a name, taken from the glibc locale for Ukrainian. + % %f Family names. +-% %F Family names in uppercase. ++% %F Family names in uppercase. + % %g First given name. + % %G First given initial. + % %l First given name with Latin letters. +@@ -337,23 +337,23 @@ LC_ADDRESS + + % %n Person's name, possibly constructed with the LC_NAME + % "name_fmt" keyword. (it appears to be invalid) +-% %a Care of person, or organization. +-% %f Firm name. +-% %d Department name. +-% %b Building name. +-% %s Street or block (eg. Japanese) name. +-% %h House number or designation. ++% %a Care of person, or organization. ++% %f Firm name. ++% %d Department name. ++% %b Building name. ++% %s Street or block (eg. Japanese) name. ++% %h House number or designation. + % %N Insert an if the previous descriptor + % value was not an empty string; otherwise ignore. + % %t Insert a if the previous descriptor value + % was not an empty string; otherwise ignore. +-% %r Room number, door designation. +-% %e Floor number. +-% %C Country designation, from the keyword. ++% %r Room number, door designation. ++% %e Floor number. ++% %C Country designation, from the keyword. + % %l Local township within town or city. (it appears to be invalid) +-% %z Zip number, postal code. +-% %T Town, city. +-% %S State, province, or prefecture. ++% %z Zip number, postal code. ++% %T Town, city. ++% %S State, province, or prefecture. + % %c Country, as taken from data record. + % + % FIXME: it appears that %n and %l are not working; correct form is: +diff --git a/localedata/locales/shs_CA b/localedata/locales/shs_CA +index 6c1b77f19d44f6db..b3d0bcfba3c881f6 100644 +--- a/localedata/locales/shs_CA ++++ b/localedata/locales/shs_CA +@@ -4,7 +4,7 @@ comment_char % + % Secwepemctsin (Shuswap) language locale for Canada + % sorting according to CAN/CSA-Z243.4.1-1992 + % Source: Neskie Manuel +-% Address: 745 Ska-Hiish Dr ++% Address: 745 Ska-Hiish Dr + % Chase BC V0E 1M3 + % Contact: Neskie Manuel + % Email: neskiem@gmail.com +diff --git a/localedata/locales/so_ET b/localedata/locales/so_ET +index ea6336e9b400a8d9..d36848e5b4bbdc72 100644 +--- a/localedata/locales/so_ET ++++ b/localedata/locales/so_ET +@@ -115,7 +115,7 @@ LC_ADDRESS + % + postal_fmt "/ + " +-country_name "" ++country_name "" + country_post "" + country_ab2 "" + country_ab3 "" +diff --git a/localedata/locales/ta_IN b/localedata/locales/ta_IN +index 0f04265493561626..ad1d6fa9c599f5d2 100644 +--- a/localedata/locales/ta_IN ++++ b/localedata/locales/ta_IN +@@ -52,7 +52,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/te_IN b/localedata/locales/te_IN +index 2467d0760c2a5c5b..4f14bd313d6d4b97 100644 +--- a/localedata/locales/te_IN ++++ b/localedata/locales/te_IN +@@ -51,7 +51,7 @@ map to_inpunct; / + (,); / + (,); / + (,); / +- (,); ++ (,); + + translit_start + include "translit_combining";"" +diff --git a/localedata/locales/tk_TM b/localedata/locales/tk_TM +index e39fdb34eca428dc..43059af2941b4c0a 100644 +--- a/localedata/locales/tk_TM ++++ b/localedata/locales/tk_TM +@@ -90,7 +90,7 @@ include "translit_combining";"" + "" % hard sign omitted + "" % yeru -> y + "" % soft sign omitted. +- "" % je= -> e ++ "" % je= -> e + "" % sw= -> a: + "" % ju -> y'u + "" % ja -> y'a +@@ -130,7 +130,7 @@ include "translit_combining";"" + "" % hard sign omitted + "" % yeru -> y + "" % soft sign omitted. +- "" % je= -> e ++ "" % je= -> e + "" % sw= -> a: + "" % ju -> y'u + "" % ja -> y'a +@@ -152,7 +152,7 @@ LC_COLLATE + % , , , , , , , , , , , + % , , , , , , , , , , , + % , , , , , , , , <='>, , <%'>, +-% , , , ++% , , , + % + copy "iso14651_t1" + +diff --git a/localedata/locales/tt_RU@iqtelif b/localedata/locales/tt_RU@iqtelif +index 0564783e4758664b..a043de575eb8cc45 100644 +--- a/localedata/locales/tt_RU@iqtelif ++++ b/localedata/locales/tt_RU@iqtelif +@@ -6,7 +6,7 @@ escape_char / + % Contact: Reshat Sabiq + % Email: + % Language: tt@iqtelif +-% Territory: RU ++% Territory: RU + % Revision: 0.1 + % Date: 2006-10-12 + % Application: general +@@ -47,7 +47,7 @@ END LC_IDENTIFICATION + + LC_COLLATE + % IQTElif: +-% , , , , , , , , , , ++% , , , , , , , , , , + % (dotless i), (i with dot), , , , , , , , , + % ,