summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* x86-64: Optimize e_expf with FMA [BZ #21912]hjl/expf/masterH.J. Lu2017-08-164-0/+245
| | | | | | | | | | | FMA optimized e_expf improves performance by more than 50% on Skylake. [BZ #21912] * sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines): Add and e_expf-fma. * sysdeps/x86_64/fpu/multiarch/e_expf-fma.S: New file. * sysdeps/x86_64/fpu/multiarch/e_expf.c: Likewise. * sysdeps/x86_64/fpu/multiarch/ifunc-fma.h: Likewise.
* x86-64: Align L(SP_RANGE)/L(SP_INF_0) to 8 bytes [BZ #21955]H.J. Lu2017-08-152-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sysdeps/x86_64/fpu/e_expf.S has lea L(SP_RANGE)(%rip), %rdx /* load over/underflow bound */ cmpl (%rdx,%rax,4), %ecx /* |x|<under/overflow bound ? */ ... /* Here if |x| is Inf */ lea L(SP_INF_0)(%rip), %rdx /* depending on sign of x: */ movss (%rdx,%rax,4), %xmm0 /* return zero or Inf */ ret ... .section .rodata.cst8,"aM",@progbits,8 ... .p2align 2 L(SP_RANGE): /* single precision overflow/underflow bounds */ .long 0x42b17217 /* if x>this bound, then result overflows */ .long 0x42cff1b4 /* if x<this bound, then result underflows */ .type L(SP_RANGE), @object ASM_SIZE_DIRECTIVE(L(SP_RANGE)) .p2align 2 L(SP_INF_0): .long 0x7f800000 /* single precision Inf */ .long 0 /* single precision zero */ .type L(SP_INF_0), @object ASM_SIZE_DIRECTIVE(L(SP_INF_0)) Since L(SP_RANGE) and L(SP_INF_0) are in .rodata.cst8 section, they must be aligned to 8 bytes. [BZ #21955] * sysdeps/x86_64/fpu/e_expf.S (L(SP_RANGE)): Aligned to 8 bytes. (L(SP_INF_0)): Likewise.
* gmon: Run tst-gmon-prof only for run-built-tests=yesFlorian Weimer2017-08-152-0/+7
|
* aio: Remove support for BROKEN_THREAD_SIGNALSFlorian Weimer2017-08-156-57/+14
| | | | | This was originally added to support LinuxThreads and is not needed for NPTL.
* gmon: Add test for basic mcount/gprof functionalityFlorian Weimer2017-08-158-2/+149
|
* powerpc: Add values from Linux 4.8 to <elf.h>Gustavo Romero2017-08-152-0/+32
| | | | | | | | | | | | | | | | | | Add powerpc specific note sections available since Linux v4.8. * elf/elf.h A (NT_PPC_TAR): New macro. (NT_PPC_PPR): Likewise. (NT_PPC_DSCR): Likewise. (NT_PPC_EBB): Likewise. (NT_PPC_PMU): Likewise. (NT_PPC_TM_CGPR): Likewise. (NT_PPC_TM_CFPR): Likewise. (NT_PPC_TM_CVMX): Likewise. (NT_PPC_TM_CVSX): Likewise. (NT_PPC_TM_SPR): Likewise. (NT_PPC_TM_CTAR): Likewise. (NT_PPC_TM_CPPR): Likewise. (NT_PPC_TM_CDSCR): Likewise.
* i386: Replace internal_function attribute for __mcount_internalFlorian Weimer2017-08-152-3/+11
| | | | | | | | __mcount_internal is called from assembler code. Use an explicit regparm attribute to pass both arguments in registers, to match what used to happen with internal_function before commit fbdc1e3e8de7f49e439b6e274d3e7e07da78416e (i386: Do not set internal_function).
* S390: Add new s390 platform z14.Stefan Liebler2017-08-153-3/+8
| | | | | | | | | | The new IBM z14 is added to platform string array. The macro _DL_PLATFORMS_COUNT is incremented. ChangeLog: * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): Add z14. * sysdeps/s390/dl-procinfo.h (_DL_PLATFORMS_COUNT): Increased.
* Change language name in LC_IDENTIFICATION of bn_BD and bn_IN from ↵Mike FABIAN2017-08-143-7/+14
| | | | | | | | | “Bengali” to “Bangla” [BZ #14925] * locales/bn_BD (LC_IDENTIFICATION): Change language name in “title” and “language” from Bengali to Bangla. * locales/bn_IN (LC_IDENTIFICATION): Likewise.
* Use “copy "i18n"” in km_KH localeMike FABIAN2017-08-142-824/+6
| | | | | | | | | | The custom stuff which was in LC_CTYPE of the km_KH locale seems to be a very incomplete subset of what one gets by using “copy "i18n"”. I cannot find anything special there which is not in “copy "i18n"”, only lots of stuff which is missing. [BZ #20008] * locales/km_KH (LC_CTYPE): Use “copy "i18n"”.
* conformtest: Disable si_value expectation for XPG42.Joseph Myers2017-08-142-0/+7
| | | | | | | | | | This patch corrects the conform/ expectations for sys/wait.h not to expect si_value for XPG4.2. Tested for x86_64. * conform/data/sys/wait.h-data (si_value): Do not expect for XPG42.
* NSS: Replace exported NSS lookup functions with stubs [BZ #21962]Florian Weimer2017-08-1413-50/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 384ca551743318bd9c9e24a496d6397f2e3f2a49 from 2007 added this to nss/XXX-lookup.c: +#ifndef NO_COMPAT +int +internal_function attribute_compat_text_section +DB_COMPAT_FCT (service_user **ni, const char *fct_name, void **fctp) +{ + return DB_LOOKUP_FCT (ni, fct_name, NULL, fctp); +} +#endif That is, it adds a pseudo-compat function with an internal_function attribute. The function it was supposed to replace did not have the attribute: extern int DB_LOOKUP_FCT (service_user **ni, const char *fct_name, - void **fctp) internal_function; + const char *fct2_name, void **fctp) + internal_function; This changed the calling convention on i386 for the following functions in the public ABI: __nss_passwd_lookup __nss_group_lookup __nss_hosts_lookup This commit replaces the functions with always-failing stubs, with true compat symbols. Due to a happy accident, the calling convention of the stub is identical for the internal_function and non-internal_function case on i386. In addition, this commit auto-generates the __nss_*_lookup2 function declarations as part of <nsswitch.h>.
* Use two letter abbreviations in abday in all German locales.Mike FABIAN2017-08-147-24/+34
| | | | | | | | | | [BZ #20482] * locales/de_AT (LC_TIME): Use 2 letter abbreviations in abday. * locales/de_BE (LC_TIME): Use 2 letter abbreviations in abday. * locales/de_CH (LC_TIME): Use 2 letter abbreviations in abday. * locales/de_DE (LC_TIME): Use readable ASCII in abday. * locales/de_IT (LC_TIME): Use readable ASCII in abday. * locales/de_LU (LC_TIME): Use 2 letter abbreviations in abday.
* Fix thousands_sep and grouping and use readable ASCII for decimal_point in ↵Julen Ruiz Aizpuru2017-08-142-3/+9
| | | | | | | | eu_ES locale [BZ #12349] * locales/eu_ES (LC_NUMERIC): Fix thousands_sep and grouping and use readable ASCII for decimal_point.
* posix: Fix mmap for m68k and ia64 (BZ#21908)Adhemerval Zanella2017-08-145-5/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Default semantic for mmap2 syscall is to take the offset in 4096-byte units. However m68k and ia64 mmap2 implementation take in the configured pageunit units and for both architecture it can be different values. This patch fixes the m68k runtime discover of mmap2 offset unit and adds the ia64 definition to find it at runtime. Checked the basic tst-mmap and tst-mmap-offset on m68k (the system is configured with 4k, so current code is already passing on this system) and a sanity check on x86_64-linux-gnu (which should not be affected by this change). Sergei also states that ia64 loader now work correctly with this change. Adhemerval Zanella <adhemerval.zanella@linaro.org> Sergei Trofimovich <slyfox@inbox.ru> * sysdeps/unix/sysv/linux/m68k/mmap_internal.h (MMAP2_PAGE_SHIFT): Rename to MMAP2_PAGE_UNIT. * sysdeps/unix/sysv/linux/mmap.c: Include mmap_internal iff __OFF_T_MATCHES_OFF64_T is not defined. * sysdeps/unix/sysv/linux/mmap_internal.h (page_unit): Declare as uint64_t. (MMAP2_PAGE_UNIT) [MMAP2_PAGE_UNIT == -1]: Redefine to page_unit. (page_unit) [MMAP2_PAGE_UNIT != -1]: Remove definition.
* i386: Do not set internal_functionFlorian Weimer2017-08-144-15/+7
| | | | | | | | | | All calls to functions with the internal_function attribute have been removed from assembler implementations, which means that the definition of internal_function can be changed at the C level without causing ABI issues with assembler code. _dl_fixup still uses a regparm calling convention on i386, but this is controlled through ARCH_FIXUP_ATTRIBUTE, not internal_function.
* _dl_init: Remove internal_function attributeFlorian Weimer2017-08-144-6/+14
| | | | | The function is called from the i386 startup code, which needs minor adjustments due to the changed ABI.
* _dl_start: Remove internal_function attributeFlorian Weimer2017-08-143-2/+10
| | | | | The i386 startup code needs adjusting because it calls the function and the ABI has changed.
* _dl_fini: Remove internal_function attributeFlorian Weimer2017-08-143-2/+6
| | | | | | | | | | Assembler code passes the address of _dl_fini to __libc_start_main, whose function pointer argument lacks the attribute. This means that calls could use the wrong ABI. Fortunately, for zero-parameter void-returning functions, internal_function does not change ABI on i386 (the only architecture which uses internal_function), so this inconsistency was harmless (which is why it had not been noticed so far).
* x86: Add IBT/SHSTK bits to cpu-featuresH.J. Lu2017-08-143-0/+21
| | | | | | | | | | | | | | | | Add IBT/SHSTK bits to cpu-features for Shadow Stack in Intel Control-flow Enforcement Technology (CET) instructions: https://software.intel.com/sites/default/files/managed/4d/2a/control-flow-enforcement-technology-preview.pdf * sysdeps/x86/cpu-features.h (bit_cpu_BIT): New. (bit_cpu_SHSTK): Likewise. (index_cpu_IBT): Likewise. (index_cpu_SHSTK): Likewise. (reg_IBT): Likewise. (reg_SHSTK): Likewise. * sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)): Handle index_cpu_IBT and index_cpu_SHSTK.
* Fix spelling mistake in fr.poMike FABIAN2017-08-142-2/+7
| | | | | [BZ #19982] * po/fr.po: Fix spelling mistake.
* ld.so: Remove internal_function attribute from various functionsFlorian Weimer2017-08-137-22/+23
| | | | | These functions are invoked from other DSOs and should therefore use the standard calling convention.
* Remove internal_function attribute from string-to-float functionsFlorian Weimer2017-08-133-15/+15
| | | | | These are called across DSO boundaries and should therefore use the standard calling convention.
* NPTL: Remove internal_function from stack marking functionsFlorian Weimer2017-08-137-9/+18
| | | | | These are called across DSO boundaries and therefore should use the ABI calling convention.
* __netlink_assert_response: Remove internal_function attributeFlorian Weimer2017-08-133-3/+8
| | | | | This function is called from nscd and should not use a non-standard calling convention.
* __libc_rpc_getport: Remove internal_function attributeFlorian Weimer2017-08-133-3/+7
| | | | | This function has a hidden alias and is therefore expected to be called across DSO boundaries.
* NSS: Do not use internal_function for functions with hidden aliasesFlorian Weimer2017-08-139-25/+24
| | | | | Such functions are called across DSO boundaries and should not use a non-standard ABI.
* __fortify_fail: Remove internal_function attributeFlorian Weimer2017-08-135-5/+18
| | | | | __fortify_fail is called across DSO boundaries, so it should not use a non-standard calling convention.
* Adapt test case data to the changes in the thousands separatorsMike FABIAN2017-08-125-11/+22
| | | | | | | | [BZ #20756] * localedata/tst-langinfo.sh: Adapt test case data. * stdlib/tst-strfmon_l.c: Likewise. * stdlib/tst-strtod4.c: Likewise. * stdlib/tst-strtod5i.c: Likewise.
* Use U+202F instead of U+2009 as thousands_sep for es_MXMike FABIAN2017-08-122-1/+5
| | | | | | | | | See also [BZ #20756]. U+202F NARROW NO-BREAK SPACE: a narrow form of a no-break space, typically the width of a thin space or a mid space. U+2009 THIN SPACE.
* Locales: Use Unicode wise thousands separatorStanislav Brabec2017-08-1248-65/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many languages use small gap as thousands separator. Thousands separator should not be a plain space, but a narrow space. And additionally, it is not allowed to wrap line in the middle of the number. Locale data were created in a deep age of 8-bit encodings, so most of them use space (incorrect: it allows wrapping the line in the middle of the number), or NBSP (better, but typographically incorrect: space between groups is too wide). Now UNICODE is widely supported, so we should leave legacy characters in favor of correct UNICODE character. UNICODE has a dedicated character for this purpose: NNBSP U+202F NARROW NO-BREAK SPACE: a narrow form of a no-break space, typically the width of a thin space or a mid space The NNBSP exists since Unicode 3.0. Use of NNBSP will prevent line wrapping in the midle of number and improve readability of numbers. [BZ #20756] * locales/aa_DJ (LC_MONETARY): Replace space by NNBSP as thousands separator. * locales/az_AZ (LC_MONETARY): Likewise. * locales/be_BY (LC_MONETARY): Likewise. * locales/be_BY@latin (LC_MONETARY): Likewise. * locales/bg_BG (LC_MONETARY): Likewise. * locales/bs_BA (LC_MONETARY): Likewise. * locales/ce_RU (LC_MONETARY): Likewise. * locales/crh_UA (LC_MONETARY): Likewise. * locales/cs_CZ (LC_MONETARY): Likewise. * locales/cs_CZ (LC_NUMERIC): Likewise. * locales/cv_RU (LC_MONETARY): Likewise. * locales/de_AT (LC_MONETARY): Likewise. * locales/eo (LC_MONETARY): Likewise. * locales/es_CR (LC_MONETARY): Likewise. * locales/es_CR (LC_NUMERIC): Likewise. * locales/es_CU (LC_MONETARY): Likewise. * locales/et_EE (LC_MONETARY): Likewise. * locales/et_EE (LC_NUMERIC): Likewise. * locales/fi_FI (LC_MONETARY): Likewise. * locales/fi_FI (LC_NUMERIC): Likewise. * locales/fr_CA (LC_MONETARY): Likewise. * locales/fr_FR (LC_MONETARY): Likewise. * locales/fr_FR (LC_NUMERIC): Likewise. * locales/fr_LU (LC_MONETARY): Likewise. * locales/fr_LU (LC_NUMERIC): Likewise. * locales/hr_HR (LC_MONETARY): Likewise. * locales/ht_HT (LC_NUMERIC): Likewise. * locales/kk_KZ (LC_MONETARY): Likewise. * locales/kk_KZ (LC_NUMERIC): Likewise. * locales/ky_KG (LC_MONETARY): Likewise. * locales/ky_KG (LC_NUMERIC): Likewise. * locales/lv_LV (LC_MONETARY): Likewise. * locales/lv_LV (LC_NUMERIC): Likewise. * locales/mg_MG (LC_MONETARY): Likewise. * locales/mhr_RU (LC_MONETARY): Likewise. * locales/mk_MK (LC_MONETARY): Likewise. * locales/mk_MK (LC_NUMERIC): Likewise. * locales/mn_MN (LC_MONETARY): Likewise. * locales/nb_NO (LC_MONETARY): Likewise. * locales/nb_NO (LC_NUMERIC): Likewise. * locales/nl_AW (LC_MONETARY): Likewise. * locales/nl_NL (LC_MONETARY): Likewise. * locales/nn_NO (LC_MONETARY): Likewise. * locales/os_RU (LC_MONETARY): Likewise. * locales/pap_AW (LC_MONETARY): Likewise. * locales/pap_CW (LC_MONETARY): Likewise. * locales/ru_RU (LC_MONETARY): Likewise. * locales/ru_RU (LC_NUMERIC): Likewise. * locales/ru_UA (LC_MONETARY): Likewise. * locales/sk_SK (LC_MONETARY): Likewise. * locales/sk_SK (LC_NUMERIC): Likewise. * locales/sl_SI (LC_MONETARY): Likewise. * locales/sl_SI (LC_NUMERIC): Likewise. * locales/sq_MK (LC_MONETARY): Likewise. * locales/sv_SE (LC_MONETARY): Likewise. * locales/sv_SE (LC_NUMERIC): Likewise. * locales/tg_TJ (LC_MONETARY): Likewise. * locales/tt_RU (LC_MONETARY): Likewise. * locales/tt_RU@iqtelif (LC_MONETARY): Likewise. * locales/uk_UA (LC_MONETARY): Likewise. * locales/uk_UA (LC_NUMERIC): Likewise. * locales/unm_US (LC_MONETARY): Likewise. * locales/unm_US (LC_NUMERIC): Likewise. * locales/wo_SN (LC_MONETARY): Likewise.
* assert: Suppress pedantic warning caused by statement expressionFlorian Weimer2017-08-112-3/+16
|
* benchtests: Print json in memmove benchmarkSiddhesh Poyarekar2017-08-113-41/+91
| | | | | | | | | | Make the memmove benchmarks (bench-memmove and bench-memmove-large) print their output in JSON so that they can be evaluated using the compare_strings.py script. * benchtests/bench-memmove-large.c: Print output in JSON format. * benchtests/bench-memmove.c: Likewise.
* benchtests: Remove verification runs from benchmark testsSiddhesh Poyarekar2017-08-1110-154/+14
| | | | | | | | | | | | | | | The test run is unnecessary and interferes with the benchmark. The tests are done during make check, so they're unnecessary here. * benchtests/bench-memccpy.c (do_one_test): Remove checks. * benchtests/bench-memchr.c (do_one_test): Likewise. * benchtests/bench-memcpy-large.c (do_one_test): Likewise. * benchtests/bench-memcpy.c (do_one_test): Likewise. * benchtests/bench-memmove-large.c (do_one_test): Likewise. * benchtests/bench-memmove.c (do_one_test): Likewise. * benchtests/bench-memset-large.c (do_one_test): Likewise. * benchtests/bench-memset.c (do_one_test): Likewise. * benchtests/bench-string.h (test_init): Remove memsets.
* manual: Rewrite the section on widths of integer types.Rical Jasan2017-08-102-40/+48
| | | | | | | | | | | | | | | | The manual contradicted itself by saying the number of bits in an integer type needed to be computed, and then listing a number of macros that later standards provided for exactly that. The entire section has been reworked to provide those macros first, while preserving the documentation of CHAR_BIT and the associated examples within that context. * manual/lang.texi (Computing the Width of an Integer Data Type): Rename section to "Width of an Integer Type". Remove inaccurate statement regarding lack of C language facilities for determining width of integer types, and reorder content to improve flow and context of discussion.
* manual: Update @standards for [__]va_copy.Rical Jasan2017-08-102-6/+15
| | | | | | | | | | | | The ISO version in which va_copy was introduced is made explicit, and __va_copy is given @standards. The description is updated to be more clear about the origins of each macro, and the reader is informed these macros are now provided by the compiler (information previously embedded in a Texinfo @comment). * lang.texi (va_copy): Change standard from ISO to C99. (__va_copy): Add standard and header annotation. Update description for clarity of origins and current use.
* powerpc: Restrict xssqrtqp operands to Vector Registers (bug 21941)Gabriel F. T. Gomes2017-08-103-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | POWER ISA 3.0 introduces the xssqrtqp instructions, which expects operands to be in Vector Registers (Altivec/VMX), even though this instruction belongs to the Vector-Scalar Instruction Set. In GCC's Extended Assembly for POWER, the 'wq' register constraint is provided for use with IEEE 754 128-bit floating-point values. However, this constraint does not limit the register allocation to Vector Registers (Altivec/VMX) and could assign a Vector-Scalar Register (VSX) to the operands of the instruction. This patch changes the register constraint used in sqrtf128 from 'wq' to 'v', in order to request a Vector Register (Altivec/VMX) for use with the xssqrtqp instruction. Tested for powerpc64le and --with-cpu=power9. [BZ #21941] * sysdeps/powerpc/fpu/math_private.h (__ieee754_sqrtf128): Since xssqrtqp requires operands to be in Vector Registers (Altivec/VMX), replace the register constraint 'wq' with 'v'. * sysdeps/powerpc/powerpc64le/power9/fpu/e_sqrtf128.c (__ieee754_sqrtf128): Likewise.
* [AArch64] Optimized memcmp.Wilco Dijkstra2017-08-102-105/+76
| | | | | | | | | | | | | | | | | | | | This is an optimized memcmp for AArch64. This is a complete rewrite using a different algorithm. The previous version split into cases where both inputs were aligned, the inputs were mutually aligned and unaligned using a byte loop. The new version combines all these cases, while small inputs of less than 8 bytes are handled separately. This allows the main code to be sped up using unaligned loads since there are now at least 8 bytes to be compared. After the first 8 bytes, align the first input. This ensures each iteration does at most one unaligned access and mutually aligned inputs behave as aligned. After the main loop, process the last 8 bytes using unaligned accesses. This improves performance of (mutually) aligned cases by 25% and unaligned by >500% (yes >6 times faster) on large inputs. * sysdeps/aarch64/memcmp.S (memcmp): Rewrite of optimized memcmp.
* ld.so: Introduce struct dl_exceptionFlorian Weimer2017-08-1029-239/+529
| | | | | | This commit separates allocating and raising exceptions. This simplifies catching and re-raising them because it is no longer necessary to make a temporary, on-stack copy of the exception message.
* __inet6_scopeid_pton: Remove attribute_hidden, internal_functionFlorian Weimer2017-08-103-3/+9
| | | | | | | | The hidden attribute was overridden by libc_hidden_proto on GNU/Linux. It is incorrect because the function is used from nscd. internal_function is not supposed to be used across DSO boundaries, so this commit removes it (again, due to the use in nscd).
* malloc: Avoid optimizer warning with GCC 7 and -O3Florian Weimer2017-08-102-4/+21
|
* Fix stdlib/tst-strfmon_l.c test case to agree with the changes in Indian ↵Mike FABIAN2017-08-103-11/+18
| | | | | | | | | | | | | | | | | monetary formatting The test cases should expose non-standard grouping and the trailing space after the currency sign. After the changes to the Indian monetary formatting, the Indian formatting still shows the non-standard grouping. To test the trailing space after the currency sign I chose the hr_HR locale. See: commit 82b3124268bec0609b337dd993e771c93e44cbf2 Author: Akhilesh Kumar <akhilesh.k@samsung.com> Remove redundant data for LC_MONETARY for Indian locales
* Remove redundant data for LC_MONETARY for Indian localesAkhilesh Kumar2017-08-1021-342/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reference is taken from https://en.wikipedia.org/wiki/Indian_numbering_system https://en.wikipedia.org/wiki/Indian_rupee CLDR has the currency format pattern “¤#,##,##0.00”. [BZ #21836] * locales/ar_IN (LC_MONETARY) : copy "hi_IN" * locales/as_IN (LC_MONETARY) : copy "hi_IN" * locales/bhb_IN (LC_MONETARY): copy "hi_IN" * locales/bn_IN (LC_MONETARY) : copy "hi_IN" * locales/en_IN (LC_MONETARY) : copy "hi_IN" * locales/gu_IN (LC_MONETARY) : copy "hi_IN" * locales/hi_IN (LC_MONETARY) : Fix mon_grouping, p_sep_by_space and n_sep_by_space * locales/kn_IN (LC_MONETARY) : copy "hi_IN" * locales/kok_IN(LC_MONETARY) : copy "hi_IN" * locales/ks_IN (LC_MONETARY) : copy "hi_IN" * locales/ml_IN (LC_MONETARY) : copy "hi_IN" * locales/mr_IN (LC_MONETARY) : copy "hi_IN" * locales/or_IN (LC_MONETARY) : copy "hi_IN" * locales/pa_IN (LC_MONETARY) : copy "hi_IN" * locales/sa_IN (LC_MONETARY) : copy "hi_IN" * locales/sd_IN (LC_MONETARY) : copy "hi_IN" * locales/ta_IN (LC_MONETARY) : copy "hi_IN" * locales/tcy_IN(LC_MONETARY) : copy "hi_IN" * locales/te_IN (LC_MONETARY) : copy "hi_IN" * locales/ur_IN (LC_MONETARY) : copy "hi_IN"
* cmn_TW: add hanzi collationWei-Lun Chao2017-08-103-18/+70790
| | | | | | | | | | [BZ #17563] [BZ #16905] * locales/cmn_TW (LC_COLLATE): Use cns11643_stroke file for sorting. * locales/cmn_TW (LC_TIME): Improve time and date formats. * locales/cmn_TW (LC_MESSAGES): Add yesstr and nostr. * locales/cns11643_stroke: New file, stroke count collation for traditional Chinese.
* aarch64/sys/ptrace.h: fix typo in commentDmitry V. Levin2017-08-102-1/+4
| | | | | * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h (enum __ptrace_request): Fix typo in comment.
* sys/ptrace.h: remove obsolete Linux PTRACE_SEIZE_DEVEL constant [BZ #21928]Dmitry V. Levin2017-08-098-37/+13
| | | | | | | | | | | | | | | | | | | Remove enum __ptrace_flags along with the only constant it contains, PTRACE_SEIZE_DEVEL, from Linux's sys/ptrace.h files. This temporary development constant shouldn't have been added to sys/ptrace.h in the first place. It was introduced in Linux by commit v3.1-rc1~308^2~28 as a temporary part of new experimental PTRACE_SEIZE interface. Later, as PTRACE_SEIZE stabilized and lost its experimental status, this flag was removed from Linux by commit v3.4-rc1~109^2~20. * sysdeps/unix/sysv/linux/sys/ptrace.h (enum __ptrace_flags, PTRACE_SEIZE_DEVEL): Remove. * sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
* Remove __qaddr_t.Joseph Myers2017-08-092-1/+2
| | | | | | | | | | | | bits/types.h defines a type __qaddr_t that is not used anywhere in glibc. It doesn't appear to be widely used outside glibc either (judging by codesearch.debian.net, where hits are generally copies of definitions of this type, not uses), so it seems appropriate to remove this type, which this patch does. Tested for x86_64. * posix/bits/types.h (__qaddr_t): Remove.
* Fix uc_* namespace (bug 21457).Joseph Myers2017-08-0919-50/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The standard members of ucontext_t, in all standard versions with that type, are uc_link, uc_sigmask, uc_stack and uc_mcontext. The uc_* namespace is mostly reserved for additions to the structure. However, in XPG4.2, it's only reserved when <ucontext.h> is included, not when <signal.h> is included, while <signal.h> is required to define ucontext_t (but not allowed to make visible other symbols from <ucontext.h>). Thus, nonstandard members should avoid uc_* names. Some already do use __uc_*, but others don't; most architectures (all except ia64, I think) have a member uc_flags and some have additional members beyond that. This patch makes nonstandard members have an __ prefix unless __USE_MISC is defined. Members whose names indicate they are solely padding / reserved for future use are renamed unconditionally to use the __glibc_reserved1 naming convention. This is part of the preparation for a revised version of the mcontext_t / sigcontext patch to be able to eliminate all 13 of the miscellaneous XFAILs in conform/Makefile, rather than only 11 of them as at present (at least one further fix on top of this one will be needed for that as well). Tested for x86_64, and with build-many-glibcs.py. [BZ #21457] * sysdeps/arm/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/generic/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/i386/sys/ucontext.h (__ctx): Move undefine further down. (__ctxt): Likewise. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/m68k/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/mips/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/alpha/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/arm/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags and uc_regspace. * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/m68k/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. Rename uc_filler to __glibc_reserved1. * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/nios2/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags, uc_regs_ptr, uc_regs and uc_reg_space. Rename uc_pad to __glibc_reserved1. * sysdeps/unix/sysv/linux/s390/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/sh/sys/ucontext.h (__ctx): Move undefine further down. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/sparc/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/tile/sys/ucontext.h (__ctx): New macro. (ucontext_t): Use __ctx with uc_flags. * sysdeps/unix/sysv/linux/x86/sys/ucontext.h (ucontext_t): Use __ctx with uc_flags.
* nss: Call __resolv_context_put before early return in get*_r [BZ #21932]Florian Weimer2017-08-092-1/+15
| | | | | | This corrects an oversight introduced in commit 352f4ff9a268b81ef5d4b2413f582565806e4790 (resolv: Introduce struct resolv_context).
* Fix p_cs_precedes, n_cs_precedes, and n_sign_posn for mt_MTAkhilesh Kumar2017-08-092-3/+8
| | | | | | | | | | | | Positive Currency Format: €500.00 Negative Currency Format: -€500.00 References: http://www.kunsilltalmalti.gov.mt/filebank/documents/rapportdwarlismijiettalmunitaewropea.pdf, page 7, top right. CLDR has “¤#,##0.00” as the currency format pattern. [BZ #21920] * locales/mt_MT (LC_MONETARY): Fix p_cs_precedes/n_cs_precedes. * locales/mt_MT (LC_MONETARY): Fix n_sign_posn.