H.J. Lu [Fri, 4 Aug 2017 19:17:15 +0000 (12:17 -0700)]
Check linker support for INSERT in linker script
Since gold doesn't support INSERT in linker script:
https://sourceware.org/bugzilla/show_bug.cgi?id=21676
tst-split-dynreloc fails to link with gold. Check if linker supports
INSERT in linker script before using it.
* config.make.in (have-insert): New.
* configure.ac (libc_cv_insert): New. Set to yes if linker
supports INSERT in linker script.
(AC_SUBST(libc_cv_insert): New.
* configure: Regenerated.
* sysdeps/x86_64/Makefile (tests): Add tst-split-dynreloc only
if $(have-insert) == yes.
H.J. Lu [Fri, 4 Aug 2017 18:47:08 +0000 (11:47 -0700)]
Run vismain only if linker supports protected data symbol
Gold doesn't support protected data symbol:
configure:5672: checking linker support for protected data symbol
configure:5682: gcc -fuse-ld=gold -nostdlib -nostartfiles -fno-stack-protector -fPIC -shared conftest.c -o conftest.so
configure:5685: $? = 0
configure:5692: gcc -fuse-ld=gold -nostdlib -nostartfiles -fno-stack-protector conftest.c -o conftest conftest.so
/usr/local/bin/ld.gold: error: /tmp/ccXWoofs.o: cannot make copy relocation for protected symbol 'bar', defined in conftest.so
collect2: error: ld returned 1 exit status
Run vismain only if linker supports protected data symbol.
* elf/Makefile (tests): Add vismain only if
$(have-protected-data) == yes.
(tests-pie): Likewise.
H.J. Lu [Fri, 4 Aug 2017 18:14:19 +0000 (11:14 -0700)]
x86-64: Use _dl_runtime_resolve_opt only with AVX512F [BZ #21871]
On AVX machines with XGETBV (ECX == 1) like Skylake processors,
(gdb) disass _dl_runtime_resolve_avx_opt
Dump of assembler code for function _dl_runtime_resolve_avx_opt:
0x0000000000015890 <+0>: push %rax
0x0000000000015891 <+1>: push %rcx
0x0000000000015892 <+2>: push %rdx
0x0000000000015893 <+3>: mov $0x1,%ecx
0x0000000000015898 <+8>: xgetbv
0x000000000001589b <+11>: mov %eax,%r11d
0x000000000001589e <+14>: pop %rdx
0x000000000001589f <+15>: pop %rcx
0x00000000000158a0 <+16>: pop %rax
0x00000000000158a1 <+17>: and $0x4,%r11d
0x00000000000158a5 <+21>: bnd je 0x16200 <_dl_runtime_resolve_sse_vex>
End of assembler dump.
is slower than:
(gdb) disass _dl_runtime_resolve_avx_slow
Dump of assembler code for function _dl_runtime_resolve_avx_slow:
0x0000000000015850 <+0>: vorpd %ymm0,%ymm1,%ymm8
0x0000000000015854 <+4>: vorpd %ymm2,%ymm3,%ymm9
0x0000000000015858 <+8>: vorpd %ymm4,%ymm5,%ymm10
0x000000000001585c <+12>: vorpd %ymm6,%ymm7,%ymm11
0x0000000000015860 <+16>: vorpd %ymm8,%ymm9,%ymm9
0x0000000000015865 <+21>: vorpd %ymm10,%ymm11,%ymm10
0x000000000001586a <+26>: vpcmpeqd %xmm8,%xmm8,%xmm8
0x000000000001586f <+31>: vorpd %ymm9,%ymm10,%ymm10
0x0000000000015874 <+36>: vptest %ymm10,%ymm8
0x0000000000015879 <+41>: bnd jae 0x158b0 <_dl_runtime_resolve_avx>
0x000000000001587c <+44>: vzeroupper
0x000000000001587f <+47>: bnd jmpq 0x16200 <_dl_runtime_resolve_sse_vex>
End of assembler dump.
(gdb)
since xgetbv takes much more cycles than single cycle operations like
vpord/vvpcmpeq/ptest. _dl_runtime_resolve_opt should be used only with
AVX512 where AVX512 instructions lead to lower CPU frequency on Skylake
server.
[BZ #21871]
* sysdeps/x86/cpu-features.c (init_cpu_features): Set
bit_arch_Use_dl_runtime_resolve_opt only with AVX512F.
H.J. Lu [Fri, 4 Aug 2017 17:56:40 +0000 (10:56 -0700)]
x86: Remove __memset_zero_constant_len_parameter [BZ #21790]
__memset_zero_constant_len_parameter should be removed by
commit
61062f56304750c367c5c1533351621353c112a7
Author: Ulrich Drepper <drepper@redhat.com>
Date: Tue Mar 1 00:35:23 2005 +0000
2005-02-24 Roland McGrath <roland@redhat.com>
* debug/Versions (libc: GLIBC_2.4): Remove
__memset_zero_constant_len_parameter.
* sysdeps/generic/memset_chk.c: Remove alias and warning.
* misc/sys/cdefs.h (__warndecl): New macro.
* debug/warning-nop.c: New file.
* string/bits/string3.h (memset): Call __warn_memset_zero_len with no
arguments, instead of calling __memset_zero_constant_len_parameter.
Use __warndecl for __warn_memset_zero_len.
* debug/Makefile (routines): Add $(static-only-routines).
(static-only-routines): New variable.
This patch removes the last emaining pieces of it. Tested it on i586,
i686 and x86-64.
[BZ #21790]
* sysdeps/i386/i586/memset.S
(__memset_zero_constant_len_parameter): Removed.
* sysdeps/i386/i686/memset.S
(__memset_zero_constant_len_parameter): Likewise.
* sysdeps/i386/i686/multiarch/memset_chk.S
(__memset_zero_constant_len_parameter): Likewise.
* sysdeps/x86_64/memset.S (__memset_zero_constant_len_parameter):
Likewise.
Aurelien Jarno [Thu, 3 Aug 2017 22:35:48 +0000 (22:35 +0000)]
Fix the return type of the getentropy stub
The return type of the getentropy stub is wrongly defined as ssize_t,
while both the <sys/random.h> header and the Linux implementation
define it as int. This patch fixes that.
Changelog:
* stdlib/getentropy.c (getentropy): Change return type to int.
Aurelien Jarno [Thu, 3 Aug 2017 22:33:19 +0000 (22:33 +0000)]
i686/multiarch: Regenerate ulps
This comes from running “make regen-ulps” on an AMD Opteron 2378 CPU.
Changelog:
* sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Regenerated.
Joseph Myers [Thu, 3 Aug 2017 19:55:04 +0000 (19:55 +0000)]
Consistently use uintN_t not u_intN_t in libm.
This patch changes libm code to make consistent use of C99 uintN_t
types instead of sometimes using those and sometimes using the older
nonstandard u_intN_t names. This makes sense as a cleanup in its own
right, and also facilitates merges to GCC's libquadmath (which gets
the types from stdint.h and so may not have u_intN_t available at
all).
Tested for x86_64, and with build-many-glibcs.py.
* math/s_nextafter.c (__nextafter): Use uintN_t instead of
u_intN_t.
* math/s_nexttowardf.c (__nexttowardf): Likewise.
* sysdeps/generic/math_private.h (ieee_double_shape_type):
Likewise.
(ieee_float_shape_type): Likewise.
* sysdeps/i386/fpu/s_fpclassifyl.c (__fpclassifyl): Likewise.
* sysdeps/i386/fpu/s_isnanl.c (__isnanl): Likewise.
* sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Likewise.
* sysdeps/i386/fpu/s_nexttoward.c (__nexttoward): Likewise.
* sysdeps/i386/fpu/s_nexttowardf.c (__nexttowardf): Likewise.
* sysdeps/ieee754/dbl-64/e_acosh.c (__ieee754_acosh): Likewise.
* sysdeps/ieee754/dbl-64/e_cosh.c (__ieee754_cosh): Likewise.
* sysdeps/ieee754/dbl-64/e_fmod.c (__ieee754_fmod): Likewise.
* sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r):
Likewise.
* sysdeps/ieee754/dbl-64/e_hypot.c (__ieee754_hypot): Likewise.
* sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise.
(__ieee754_yn): Likewise.
* sysdeps/ieee754/dbl-64/e_log10.c (__ieee754_log10): Likewise.
* sysdeps/ieee754/dbl-64/e_log2.c (__ieee754_log2): Likewise.
* sysdeps/ieee754/dbl-64/e_rem_pio2.c (__ieee754_rem_pio2):
Likewise.
* sysdeps/ieee754/dbl-64/e_sinh.c (__ieee754_sinh): Likewise.
* sysdeps/ieee754/dbl-64/s_ceil.c (__ceil): Likewise.
* sysdeps/ieee754/dbl-64/s_copysign.c (__copysign): Likewise.
* sysdeps/ieee754/dbl-64/s_erf.c (__erf): Likewise.
(__erfc): Likewise.
* sysdeps/ieee754/dbl-64/s_expm1.c (__expm1): Likewise.
* sysdeps/ieee754/dbl-64/s_finite.c (FINITE): Likewise.
* sysdeps/ieee754/dbl-64/s_floor.c (__floor): Likewise.
* sysdeps/ieee754/dbl-64/s_fpclassify.c (__fpclassify): Likewise.
* sysdeps/ieee754/dbl-64/s_isnan.c (__isnan): Likewise.
* sysdeps/ieee754/dbl-64/s_issignaling.c (__issignaling):
Likewise.
* sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise.
* sysdeps/ieee754/dbl-64/s_llround.c (__llround): Likewise.
* sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
* sysdeps/ieee754/dbl-64/s_lround.c (__lround): Likewise.
* sysdeps/ieee754/dbl-64/s_modf.c (__modf): Likewise.
* sysdeps/ieee754/dbl-64/s_nextup.c (__nextup): Likewise.
* sysdeps/ieee754/dbl-64/s_remquo.c (__remquo): Likewise.
* sysdeps/ieee754/dbl-64/s_round.c (__round): Likewise.
* sysdeps/ieee754/dbl-64/s_trunc.c (__trunc): Likewise.
* sysdeps/ieee754/dbl-64/wordsize-64/s_issignaling.c
(__issignaling): Likewise.
* sysdeps/ieee754/flt-32/e_atan2f.c (__ieee754_atan2f): Likewise.
* sysdeps/ieee754/flt-32/e_fmodf.c (__ieee754_fmodf): Likewise.
* sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r):
Likewise.
* sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
* sysdeps/ieee754/flt-32/e_log10f.c (__ieee754_log10f): Likewise.
* sysdeps/ieee754/flt-32/e_powf.c (__ieee754_powf): Likewise.
* sysdeps/ieee754/flt-32/e_rem_pio2f.c (__ieee754_rem_pio2f):
Likewise.
* sysdeps/ieee754/flt-32/e_remainderf.c (__ieee754_remainderf):
Likewise.
* sysdeps/ieee754/flt-32/e_sqrtf.c (__ieee754_sqrtf): Likewise.
* sysdeps/ieee754/flt-32/s_ceilf.c (__ceilf): Likewise.
* sysdeps/ieee754/flt-32/s_copysignf.c (__copysignf): Likewise.
* sysdeps/ieee754/flt-32/s_erff.c (__erff): Likewise.
(__erfcf): Likewise.
* sysdeps/ieee754/flt-32/s_expm1f.c (__expm1f): Likewise.
* sysdeps/ieee754/flt-32/s_finitef.c (FINITEF): Likewise.
* sysdeps/ieee754/flt-32/s_floorf.c (__floorf): Likewise.
* sysdeps/ieee754/flt-32/s_fpclassifyf.c (__fpclassifyf):
Likewise.
* sysdeps/ieee754/flt-32/s_isnanf.c (__isnanf): Likewise.
* sysdeps/ieee754/flt-32/s_issignalingf.c (__issignalingf):
Likewise.
* sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
* sysdeps/ieee754/flt-32/s_llroundf.c (__llroundf): Likewise.
* sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
* sysdeps/ieee754/flt-32/s_lroundf.c (__lroundf): Likewise.
* sysdeps/ieee754/flt-32/s_modff.c (__modff): Likewise.
* sysdeps/ieee754/flt-32/s_remquof.c (__remquof): Likewise.
* sysdeps/ieee754/flt-32/s_roundf.c (__roundf): Likewise.
* sysdeps/ieee754/ldbl-128/e_acoshl.c (__ieee754_acoshl):
Likewise.
* sysdeps/ieee754/ldbl-128/e_atan2l.c (__ieee754_atan2l):
Likewise.
* sysdeps/ieee754/ldbl-128/e_atanhl.c (__ieee754_atanhl):
Likewise.
* sysdeps/ieee754/ldbl-128/e_fmodl.c (__ieee754_fmodl): Likewise.
* sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gammal_r):
Likewise.
* sysdeps/ieee754/ldbl-128/e_hypotl.c (__ieee754_hypotl):
Likewise.
* sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise.
(__ieee754_ynl): Likewise.
* sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Likewise.
* sysdeps/ieee754/ldbl-128/e_rem_pio2l.c (__ieee754_rem_pio2l):
Likewise.
* sysdeps/ieee754/ldbl-128/e_remainderl.c (__ieee754_remainderl):
Likewise.
* sysdeps/ieee754/ldbl-128/e_sinhl.c (__ieee754_sinhl): Likewise.
* sysdeps/ieee754/ldbl-128/k_cosl.c (__kernel_cosl): Likewise.
* sysdeps/ieee754/ldbl-128/k_sincosl.c (__kernel_sincosl):
Likewise.
* sysdeps/ieee754/ldbl-128/k_sinl.c (__kernel_sinl): Likewise.
* sysdeps/ieee754/ldbl-128/s_ceill.c (__ceill): Likewise.
* sysdeps/ieee754/ldbl-128/s_copysignl.c (__copysignl): Likewise.
* sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Likewise.
* sysdeps/ieee754/ldbl-128/s_fabsl.c (__fabsl): Likewise.
* sysdeps/ieee754/ldbl-128/s_finitel.c (__finitel): Likewise.
* sysdeps/ieee754/ldbl-128/s_floorl.c (__floorl): Likewise.
* sysdeps/ieee754/ldbl-128/s_fpclassifyl.c (__fpclassifyl):
Likewise.
* sysdeps/ieee754/ldbl-128/s_frexpl.c (__frexpl): Likewise.
* sysdeps/ieee754/ldbl-128/s_isnanl.c (__isnanl): Likewise.
* sysdeps/ieee754/ldbl-128/s_issignalingl.c (__issignalingl):
Likewise.
* sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
* sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Likewise.
* sysdeps/ieee754/ldbl-128/s_modfl.c (__modfl): Likewise.
* sysdeps/ieee754/ldbl-128/s_nearbyintl.c (__nearbyintl):
Likewise.
* sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl):
Likewise.
* sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward):
Likewise.
* sysdeps/ieee754/ldbl-128/s_nexttowardf.c (__nexttowardf):
Likewise.
* sysdeps/ieee754/ldbl-128/s_nextupl.c (__nextupl): Likewise.
* sysdeps/ieee754/ldbl-128/s_remquol.c (__remquol): Likewise.
* sysdeps/ieee754/ldbl-128/s_rintl.c (__rintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_roundl.c (__roundl): Likewise.
* sysdeps/ieee754/ldbl-128/s_tanhl.c (__tanhl): Likewise.
* sysdeps/ieee754/ldbl-128/s_truncl.c (__truncl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_fmodl.c (__ieee754_fmodl):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c (__ieee754_rem_pio2l):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
(__ieee754_remainderl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/k_cosl.c (__kernel_cosl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/k_sinl.c (__kernel_sinl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c (___fpclassifyl):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_modfl.c (__modfl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c (__nexttowardf):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_remquol.c (__remquol): Likewise.
* sysdeps/ieee754/ldbl-96/e_acoshl.c (__ieee754_acoshl): Likewise.
* sysdeps/ieee754/ldbl-96/e_asinl.c (__ieee754_asinl): Likewise.
* sysdeps/ieee754/ldbl-96/e_atanhl.c (__ieee754_atanhl): Likewise.
* sysdeps/ieee754/ldbl-96/e_coshl.c (__ieee754_coshl): Likewise.
* sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
Likewise.
* sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Likewise.
* sysdeps/ieee754/ldbl-96/e_j0l.c (__ieee754_j0l): Likewise.
(__ieee754_y0l): Likewise.
(pzero): Likewise.
(qzero): Likewise.
* sysdeps/ieee754/ldbl-96/e_j1l.c (__ieee754_j1l): Likewise.
(__ieee754_y1l): Likewise.
(pone): Likewise.
(qone): Likewise.
* sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise.
(__ieee754_ynl): Likewise.
* sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Likewise.
(__ieee754_lgammal_r): Likewise.
* sysdeps/ieee754/ldbl-96/e_rem_pio2l.c (__ieee754_rem_pio2l):
Likewise.
* sysdeps/ieee754/ldbl-96/e_sinhl.c (__ieee754_sinhl): Likewise.
* sysdeps/ieee754/ldbl-96/s_copysignl.c (__copysignl): Likewise.
* sysdeps/ieee754/ldbl-96/s_erfl.c (__erfl): Likewise.
(__erfcl): Likewise.
* sysdeps/ieee754/ldbl-96/s_frexpl.c (__frexpl): Likewise.
* sysdeps/ieee754/ldbl-96/s_issignalingl.c (__issignalingl):
Likewise.
* sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_llroundl.c (__llroundl): Likewise.
* sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Likewise.
* sysdeps/ieee754/ldbl-96/s_modfl.c (__modfl): Likewise.
* sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
* sysdeps/ieee754/ldbl-96/s_nexttowardf.c (__nexttowardf):
Likewise.
* sysdeps/ieee754/ldbl-96/s_nextupl.c (__nextupl): Likewise.
* sysdeps/ieee754/ldbl-96/s_remquol.c (__remquol): Likewise.
* sysdeps/ieee754/ldbl-96/s_roundl.c (__roundl): Likewise.
* sysdeps/ieee754/ldbl-96/s_tanhl.c (__tanhl): Likewise.
* sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c (__nldbl_nexttowardf):
Likewise.
* sysdeps/m68k/m680x0/fpu/e_pow.c (s(__ieee754_pow)): Likewise.
* sysdeps/m68k/m680x0/fpu/s_fpclassifyl.c (__fpclassifyl):
Likewise.
* sysdeps/m68k/m680x0/fpu/s_llrint.c (__llrint): Likewise.
* sysdeps/m68k/m680x0/fpu/s_llrintf.c (__llrintf): Likewise.
* sysdeps/m68k/m680x0/fpu/s_llrintl.c (__llrintl): Likewise.
* sysdeps/m68k/m680x0/fpu/s_nextafterl.c (__nextafterl): Likewise.
* sysdeps/x86/fpu/powl_helper.c (__powl_helper): Likewise.
Mike FABIAN [Thu, 3 Aug 2017 15:29:00 +0000 (17:29 +0200)]
Add yesstr and nostr for doi_IN, kok_IN, and sat_IN
For the locales doi_IN, kok_IN, and sat_IN, the words for
“yes” and “no” were apparently in yesexpr and noexpr.
Copy them from there to add yesstr and nostr.
Also make yesexpr and noexpr more readable by using
the POSIX portable character set.
* locales/doi_IN (LC_MESSAGES): Add yesstr and nostr.
* locales/kok_IN (LC_MESSAGES): Add yesstr and nostr.
* locales/sat_IN (LC_MESSAGES): Add yesstr and nostr.
Mike FABIAN [Thu, 3 Aug 2017 10:41:26 +0000 (12:41 +0200)]
Revert “Fix yesexpr in en_DK locale”
This reverts commit
8f75515080ee099030547ba5bcae59e800a2cc08
Revert “Fix yesexpr in en_DK locale”.
* locales/en_DK (LC_MESSAGES): Restore original yesexpr, noexpr,
yesstr, nostr. Convert them to ASCII and add a comment why
we want to have them like this.
Florian Weimer [Thu, 3 Aug 2017 10:33:00 +0000 (12:33 +0200)]
getaddrinfo: Release resolver context on error in gethosts [BZ #21885]
Mike FABIAN [Thu, 3 Aug 2017 09:46:45 +0000 (11:46 +0200)]
drop redundant ([eE][sS])? and [oO]? from yesexpr and noexpr in km_KH locale
* locales/km_KH (LC_MESSAGES): drop redundant ([eE][sS])? and [oO]?
from yesexpr and noexpr
Mike FABIAN [Thu, 3 Aug 2017 09:33:00 +0000 (11:33 +0200)]
Drop redundant .* from yesexpr and noexpr in agr_PE locale
And make the expressions more readable by using the POSIX portable character set
instead of Unicode code points.
* locales/agr_PE (LC_MESSAGES): drop .* from yesexpr and noexpr
Akhilesh Kumar [Fri, 28 Jul 2017 03:25:35 +0000 (08:55 +0530)]
Added new Locale bho_NP
Bhojpuri is one of the most common languages in Nepal and India.
http://codefornepal.org/en/2014/02/top-10-languages-spoken-as-mother-tongues-in-nepal/
https://en.wikipedia.org/wiki/Bhojpuri_language
Added "bho_NP" locale and Reference is taken form "bho_IN".
[BZ #21845]
* locales/bho_NP: New file, Bhojpuri locale for Nepal.
* SUPPORTED: Add bho_NP/UTF-8
Akhilesh Kumar [Mon, 31 Jul 2017 06:35:28 +0000 (12:05 +0530)]
Fix yesexpr in en_DK locale
[BZ #21867]
* locales/en_DK (LC_MESSAGES): Fix yesexpr
Akhilesh Kumar [Fri, 28 Jul 2017 04:10:45 +0000 (09:40 +0530)]
Fix abday in zh_SG
Make it the same as in zh_CN and zh_TW which agrees with "narrow" in CLDR.
[BZ #21853]
* locales/zh_SG (LC_TIME): Fix abday
Alan Modra [Thu, 3 Aug 2017 06:09:21 +0000 (15:39 +0930)]
tst-tlsopt-powerpc as a shared lib
This makes the __tls_get_addr_opt test run as a shared library, and so
actually test that DTPMOD64/DTPREL64 pairs are processed by ld.so to
support the __tls_get_adfr_opt call stub fast return. After a
2017-01-24 patch (binutils
f0158f4416) ld.bfd no longer emitted
unnecessary dynamic relocations against local thread variables,
instead setting up the __tls_index GOT entries for the call stub fast
return. This meant tst-tlsopt-powerpc passed but did not check ld.so
relocation support. After a 2017-07-16 patch (binutils
676ee2b5fa)
ld.bfd no longer set up the __tls_index GOT entries for the call stub
fast return, and tst-tlsopt-powerpc failed.
Compiling mod-tlsopt-powerpc.c with -DSHARED exposed a bug in
powerpc64/tls-macros.h, which defines a __TLS_GET_ADDR macro that
clashes with one defined in dl-tls.h. The tls-macros.h version is
only used in that file, so delete it and expand.
* sysdeps/powerpc/mod-tlsopt-powerpc.c: Extract from
tst-tlsopt-powerpc.c with function name change and no test harness.
* sysdeps/powerpc/tst-tlsopt-powerpc.c: Remove body of test.
Call tls_get_addr_opt_test.
* sysdeps/powerpc/Makefile (LDFLAGS-tst-tlsopt-powerpc): Don't define.
(modules-names): Add mod-tlsopt-powerpc.
(mod-tlsopt-powerpc.so-no-z-defs): Define.
(tst-tlsopt-powerpc): Depend on .so.
* sysdeps/powerpc/powerpc64/tls-macros.h (__TLS_GET_ADDR): Don't
define. Expand use in TLS_GD and TLS_LD.
Samuel Thibault [Wed, 2 Aug 2017 21:07:58 +0000 (23:07 +0200)]
Add missing include for pthread_setcancelstate
* sysdeps/posix/shm_open.c: Include <pthread.h>.
Samuel Thibault [Wed, 2 Aug 2017 21:29:57 +0000 (23:29 +0200)]
[hurd]: Add __libc_init_secure stub
csu/libc-start.c now insists on calling __libc_init_secure, while the Hurd
port already implements it "very early" in dl-sysdep.c and init-first.c
* sysdeps/mach/hurd/enbl-secure.c (__libc_init_secure): Define
function.
Joseph Myers [Wed, 2 Aug 2017 20:16:05 +0000 (20:16 +0000)]
Fix tgmath.h for __int128 (bug 21686).
When a tgmath.h macro is passed a double argument and an argument of
type __int128, it generates a call to a long double function (although
the result still gets converted to type double). __int128 is similar
enough to integer types that it should be handled consistently like
them, so always like double for these macros rather than sometimes
like double and sometimes like long double. This patch fixes the
logic accordingly and makes gen-tgmath-tests.py generate tests for
__int128.
Tested for x86_64 and x86.
[BZ #21686]
* math/tgmath.h (__TGMATH_BINARY_REAL_ONLY): Add arguments before
comparing size with that of double.
(__TGMATH_BINARY_REAL_STD_ONLY): Likewise.
(__TGMATH_BINARY_REAL_RET_ONLY): Likewise.
(__TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY): Likewise.
(__TGMATH_TERNARY_REAL_ONLY): Likewise.
(__TGMATH_BINARY_REAL_IMAG): Likewise.
* math/gen-tgmath-tests.py (Type.init_types): Create __int128 and
unsigned __int128 types.
Steve Ellcey [Wed, 2 Aug 2017 19:57:58 +0000 (12:57 -0700)]
Remove CFLAG settings that turn off warning (no longer needed).
2017-08-02 Steve Ellcey <sellcey@cavium.com>
* localedata/Makefile (CFLAGS-tst_iswalnum.c, CFLAGS-tst_iswalpha.c
CFLAGS-tst_iswcntrl.c, CFLAGS-tst_iswdigit.c, CFLAGS-tst_iswgraph.c,
CFLAGS-tst_iswlower.c, CFLAGS-tst_iswprint.c, CFLAGS-tst_iswpunct.c,
CFLAGS-tst_iswspace.c, CFLAGS-tst_iswupper.c, CFLAGS-tst_iswxdigit.c,
CFLAGS-tst_towlower.c, CFLAGS-tst_towupper.c): Remove.
H.J. Lu [Wed, 2 Aug 2017 17:27:14 +0000 (10:27 -0700)]
x86-64: Check PIC instead of SHARED in start.S
Since start.o may be compiled as PIC, we should check PIC instead of
SHARED.
* sysdeps/x86_64/start.S (_start): Check PIC instead of SHARED.
H.J. Lu [Wed, 2 Aug 2017 17:25:11 +0000 (10:25 -0700)]
i386: Check PIC to enable PIC setups in multiarch functions
Check PIC, instead of SHARED, to enable PIC setups.
* sysdeps/i386/i686/multiarch/memcmp-sse4.S: Check PIC instead
of SHARED.
* sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: Likewise.
* sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Likewise.
* sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise.
* sysdeps/i386/i686/multiarch/memset-sse2-rep.S: Likewise.
* sysdeps/i386/i686/multiarch/memset-sse2.S: Likewise.
* sysdeps/i386/i686/multiarch/strcat-sse2.S: Likewise.
* sysdeps/i386/i686/multiarch/strcpy-sse2.S: Likewise.
Joseph Myers [Wed, 2 Aug 2017 16:09:01 +0000 (16:09 +0000)]
Fix tgmath.h for bit-fields (bug 21685).
The tgmath.h macros produce errors for bit-field arguments, because
they apply sizeof and typeof to the arguments. This patch fixes them
to use unary + systematically before using sizeof or typeof on
arguments that might be bit-fields (note that __real__ of a bit-field
is still a bit-field for this purpose, since it's an lvalue).
gen-tgmath-tests.py is extended to add tests for this case.
Tested for x86_64.
[BZ #21685]
* math/tgmath.h (__tgmath_real_type): Use unary + on potentially
bit-field expressions passed to sizeof or typeof.
[__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)]
(__TGMATH_F128): Likewise.
[__HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT)]
(__TGMATH_CF128): Likewise.
(__TGMATH_UNARY_REAL_ONLY): Likewise.
(__TGMATH_UNARY_REAL_RET_ONLY): Likewise.
(__TGMATH_BINARY_FIRST_REAL_ONLY): Likewise.
(__TGMATH_BINARY_FIRST_REAL_STD_ONLY): Likewise.
(__TGMATH_BINARY_REAL_ONLY): Likewise.
(__TGMATH_BINARY_REAL_STD_ONLY): Likewise.
(__TGMATH_BINARY_REAL_RET_ONLY): Likewise.
(__TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY): Likewise.
(__TGMATH_TERNARY_REAL_ONLY): Likewise.
(__TGMATH_TERNARY_FIRST_REAL_RET_ONLY): Likewise.
(__TGMATH_UNARY_REAL_IMAG): Likewise.
(__TGMATH_UNARY_IMAG): Likewise.
(__TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
(__TGMATH_BINARY_REAL_IMAG): Likewise.
* math/gen-tgmath-tests.py (Type.init_types): Create bit_field
type.
(define_vars_for_type): Handle bit_field type specially.
(Tests.__init__): Declare structure with bit-field element.
H.J. Lu [Wed, 2 Aug 2017 15:32:00 +0000 (08:32 -0700)]
i386: Don't define multiarch __memmove_chk in libc.a [BZ #21791]
There is no need to define multiarch __memmove_chk in libc.a since they
aren't used at all.
[BZ #21791]
* sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S
(MEMCPY_CHK): Define only if SHARED is defined.
* sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S (MEMCPY_CHK):
Likewise.
* sysdeps/i386/i686/multiarch/memcpy-ssse3.S (MEMCPY_CHK):
Likewise.
Siddhesh Poyarekar [Wed, 2 Aug 2017 15:27:34 +0000 (20:57 +0530)]
Rotate ChangeLog correctly
I incorrectly assumed that the ChangeLog numbers (.1, .2, etc.) are in
order. They're not and the latest non-current ChangeLog is the one
with the highest number. Fixed.
Siddhesh Poyarekar [Wed, 2 Aug 2017 15:15:20 +0000 (20:45 +0530)]
Rotate ChangeLog
Siddhesh Poyarekar [Wed, 2 Aug 2017 13:53:16 +0000 (19:23 +0530)]
Open master for development
Siddhesh Poyarekar [Wed, 2 Aug 2017 12:57:16 +0000 (18:27 +0530)]
Update for 2.26 release
Siddhesh Poyarekar [Wed, 2 Aug 2017 12:52:58 +0000 (18:22 +0530)]
Update contributors and latest gcc and binutils versions
Siddhesh Poyarekar [Wed, 2 Aug 2017 08:04:13 +0000 (13:34 +0530)]
Fix up ChangeLog formatting
Siddhesh Poyarekar [Wed, 2 Aug 2017 02:56:45 +0000 (08:26 +0530)]
Add list of bugs fixed in 2.26
Siddhesh Poyarekar [Wed, 2 Aug 2017 02:37:58 +0000 (08:07 +0530)]
Update translations
Siddhesh Poyarekar [Wed, 2 Aug 2017 02:37:16 +0000 (08:07 +0530)]
Update NEWS
Siddhesh Poyarekar [Sun, 30 Jul 2017 18:43:08 +0000 (00:13 +0530)]
Update translations
Carlos O'Donell [Sat, 29 Jul 2017 04:02:03 +0000 (00:02 -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.
Nathan Rossi [Fri, 28 Jul 2017 12:21:14 +0000 (09:21 -0300)]
microblaze: Resolve non-relocatable branch in pt-vfork.S (BZ#21779)
The relative branch directly to __libc_vfork results in an relocation
that cannot be resolved. Specifically a R_MICROBLAZE_64_PCREL relocation
is created for this branch, however for MicroBlaze R_MICROBLAZE_64_PCREL
type relocations symbols are not resolved. Additionally due to the
branch being located in the .text section the instruction cannot be
rewritten as the section is not writable, and causes a segfault at
runtime when loading libpthread.
To resolve this issue, ensure the branch is done using PLT. This removes
the need to modify the instruction and trades the R_MICROBLAZE_64_PCREL
for a more common R_MICROBLAZE_JUMP via the PLT.
[BZ #21779]
* sysdeps/unix/sysv/linux/microblaze/pt-vfork.S: Branch using PLT.
Nathan Rossi [Fri, 28 Jul 2017 12:19:40 +0000 (09:19 -0300)]
Update Microblaze libm-test-ulps
* sysdeps/microblaze/libm-test-ulps: Update.
Chung-Lin Tang [Fri, 28 Jul 2017 10:54:35 +0000 (03:54 -0700)]
Update Nios II ULPs file.
Carlos O'Donell [Fri, 28 Jul 2017 04:22:44 +0000 (00:22 -0400)]
rwlock: Fix explicit hand-over (bug 21298)
Without this fix, the rwlock can fail to execute the explicit hand-over
in certain cases (e.g., empty critical sections that switch quickly between
read and write phases). This can then lead to errors in how __wrphase_futex
is accessed, which in turn can lead to deadlocks.
Adhemerval Zanella [Thu, 27 Jul 2017 17:21:28 +0000 (14:21 -0300)]
Update Alpha libm-test-ulps
* sysdeps/alpha/fpu/libm-test-ulps: Update.
Akhilesh Kumar [Thu, 27 Jul 2017 10:29:25 +0000 (15:59 +0530)]
Fix country name in title of mai_NP locale
[BZ #21848]
* locales/mai_NP (LC_IDENTIFICATION): Fix country name in title.
Ihar Hrachyshka [Thu, 27 Jul 2017 09:44:40 +0000 (11:44 +0200)]
Improve country_name in be_BY@latin
Mike FABIAN [Thu, 27 Jul 2017 09:04:38 +0000 (11:04 +0200)]
Minor improvements to new az_IR locale
* locales/az_IR (LC_MESSAGES): Improve yesexpr and noexpr.
* locales/az_IR (LC_ADDRESS): Fix typo in comment and
use the individual iso-639-3 code for South Azerbaijani
"azb" in lang_term.
* locales/az_IR (LC_NAME): Improve readability of name_fmt in source.
Mousa Moradi [Thu, 27 Jul 2017 08:41:21 +0000 (10:41 +0200)]
Add new az_IR locale
[BZ #14172]
* locales/az_IR: New file.
Akhilesh Kumar [Thu, 27 Jul 2017 08:10:57 +0000 (10:10 +0200)]
Fix wrong monetary system used in ta_LK locale
[BZ #21839]
* locales/ta_LK (LC_MONETARY): copy "si_LK"
Rical Jasan [Tue, 20 Jun 2017 13:39:27 +0000 (06:39 -0700)]
manual: Refactor documentation of CHAR_BIT.
This single-@item @table is better defined with @deftypevr, since the
CHAR_BIT macro has @standards (being declared in a header), and @items
in @tables are not considered annotatable. Using @deftypevr
automatically includes the macro in the Variable and Constant Macro
Index and ensures its inclusion the Summary of Library Facilities.
@deftypevr is used to record the type of the macro so that it also
appears in the Summary.
The description is updated to mention a later POSIX requirement that
this macro have the value 8.
* manual/lang.texi (CHAR_BIT): Convert from an @table to an
@deftypevr. Change standard from ISO to C90. Mention the
POSIX.1-2001 requirement of the value 8.
Rical Jasan [Thu, 27 Jul 2017 10:16:46 +0000 (03:16 -0700)]
manual: Complete @standards in creature.texi.
* manual/creature.texi (_REENTRANT): Annotate as obsolete.
(_THREAD_SAFE): Likewise.
Mike FABIAN [Thu, 27 Jul 2017 07:33:56 +0000 (09:33 +0200)]
Fix country_name in nds_NL
Akhilesh Kumar [Thu, 27 Jul 2017 03:18:04 +0000 (08:48 +0530)]
Fix Latin characters and month sequence in mai_IN
Fixes [BZ #21822] with commit id
832f8e048773da9aac99cd1ee57f2ccbd40860f6
[BZ #21844]
* locales/mai_IN (LC_TIME): Fix Latin characters and month sequence.
Mike FABIAN [Wed, 26 Jul 2017 18:53:38 +0000 (20:53 +0200)]
Revert "Remove redundant data for LC_MONETARY for Indian locales"
This reverts commit
480af555f35201a646531cfd7c68a58905edba90.
Revert:
2017-07-26 Akhilesh Kumar <akhilesh.k@samsung.com>
Remove redundant data for LC_MONETARY
[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/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"
Mike FABIAN [Wed, 26 Jul 2017 14:46:26 +0000 (16:46 +0200)]
Remove erroneous spaces from some strings in locale files
* locales/hif_FJ (LC_TIME): Remove erroneous spaces from d_t_fmt.
* locales/km_KH (LC_TIME): Remove erroneous space from d_t_fmt.
* locales/sm_WS (LC_TIME): Remove erroneous spaces from day.
Mike FABIAN [Wed, 26 Jul 2017 12:47:18 +0000 (14:47 +0200)]
Remove erroneous tabs from some strings in locale files
* locales/et_EE (LC_ADDRESS): Remove tabs in postal_fmt.
* locales/hif_FJ (LC_TIME): Remove tabs in t_fmt_ampm.
* locales/hif_FJ (LC_NAME): Remove tabs in name_fmt.
Mike FABIAN [Wed, 26 Jul 2017 12:30:08 +0000 (14:30 +0200)]
Fix inappropriate characters in LC_IDENTIFICATION in several locales
Found using the script check-localedef.py by Zack Weinberg.
* locales/agr_PE (LC_IDENTIFICATION): Fix inappropriate character.
* locales/an_ES (LC_IDENTIFICATION): Fix inappropriate character.
* locales/gv_GB (LC_IDENTIFICATION): Fix inappropriate character.
* locales/kw_GB (LC_IDENTIFICATION): Fix inappropriate character.
* locales/ln_CD (LC_IDENTIFICATION): Fix inappropriate character.
* locales/nb_NO (LC_IDENTIFICATION): Fix inappropriate character.
* locales/pap_CW (LC_IDENTIFICATION): Fix inappropriate character.
* locales/se_NO (LC_IDENTIFICATION): Fix inappropriate character.
* locales/sgs_LT (LC_IDENTIFICATION): Fix inappropriate character.
Mike FABIAN [Wed, 26 Jul 2017 11:37:17 +0000 (13:37 +0200)]
Fix inappropriate escape sequences in LC_IDENTIFICATION in several locales
Found using the script check-localedef.py by Zack Weinberg.
* locales/aa_DJ (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/aa_ER (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/aa_ET (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/ak_GH (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/bn_BD (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/de_IT (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/es_CU (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/gd_GB (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/gl_ES (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/he_IL (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/hr_HR (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/ht_HT (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/hy_AM (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/lg_UG (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/mai_IN (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/mg_MG (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/pl_PL (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/quz_PE (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/se_NO (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/sl_SI (LC_IDENTIFICATION): Fix inappropriate escape sequence.
* locales/ta_LK (LC_IDENTIFICATION): Fix inappropriate escape sequence.
Rafal Luzynski [Tue, 25 Jul 2017 23:44:02 +0000 (01:44 +0200)]
Indian scripts: More fixes after the recent import.
After the recent import of month names from CLDRv31 (bug 21217,
commit c853f14) an import of abbreviated month names is also needed
to make sure they match the full forms.
In case of kok_IN CLDR does not provide the abbreviated month names
explicitly but uses full month names in such cases so abmon section
has been copied from mon.
* localedata/locales/as_IN (abmon): Update from CLDR.
* localedata/locales/bn_BD (abmon): Likewise.
* localedata/locales/bn_IN (abmon): Likewise.
* localedata/locales/gu_IN (abmon): Likewise.
* localedata/locales/hi_IN (abmon): Likewise.
* localedata/locales/kn_IN (abmon): Likewise.
* localedata/locales/ml_IN (abmon): Likewise.
* localedata/locales/mr_IN (abmon): Likewise.
* localedata/locales/ne_NP (abmon): Likewise.
* localedata/locales/or_IN (abmon): Likewise.
* localedata/locales/pa_IN (abmon): Likewise.
* localedata/locales/ta_IN (abmon): Likewise.
* localedata/locales/te_IN (abmon): Likewise.
* localedata/locales/kok_IN (abmon): Likewise but copied from mon.
Siddhesh Poyarekar [Wed, 26 Jul 2017 12:57:41 +0000 (18:27 +0530)]
Update translations
* po/bg.po: Update translations.
* po/cs.po: Likewise.
* po/de.po: Likewise.
* po/pl.po: Likewise.
* po/uk.po: Likewise.
* po/vi.po: Likewise.
Mike FABIAN [Wed, 26 Jul 2017 10:24:07 +0000 (12:24 +0200)]
Use POSIX Portable Character Set in the new mai_NP locale source file instead of <Uxxxx>
* localedata/locales/mai_NP: Use POSIX Portable Character Set.
Akhilesh Kumar [Wed, 26 Jul 2017 03:51:32 +0000 (09:21 +0530)]
Added New Locale mai_NP
Maithili which is an official language not only in India but in Nepal as well.
https://en.wikipedia.org/wiki/Maithili_language
Reference is taken form mai_IN.
[BZ #21835]
* localedata/locales/mai_NP: New file.
* localedata/SUPPORTED: Add mai_NP/UTF-8.
Akhilesh Kumar [Wed, 26 Jul 2017 08:13:59 +0000 (13:43 +0530)]
Removed redundant data for the_NP locale
[BZ #21838]
* locales/the_NP (LC_CTYPE): copy "ne_NP"
* locales/the_NP (LC_COLLATE): copy "ne_NP"
* locales/the_NP (LC_MONETARY): copy "ne_NP"
* locales/the_NP (LC_TELEPHONE): copy "ne_NP"
Mike FABIAN [Wed, 26 Jul 2017 09:09:13 +0000 (11:09 +0200)]
Remove redundant data for LC_MONETARY in sd_IN@devanagari
Akhilesh Kumar [Wed, 26 Jul 2017 07:49:14 +0000 (13:19 +0530)]
Remove redundant data for LC_MONETARY for Indian locales
[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/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"
Mike FABIAN [Wed, 26 Jul 2017 06:20:20 +0000 (08:20 +0200)]
Add [BZ #21828] to ChangeLog
Mike FABIAN [Wed, 26 Jul 2017 06:15:01 +0000 (08:15 +0200)]
Mention in NEWS that the Unicode 10.0.0 update causes user visible changes
Siddhesh Poyarekar [Wed, 26 Jul 2017 01:39:50 +0000 (07:09 +0530)]
sv: Update translation
Akhilesh Kumar [Thu, 20 Jul 2017 07:05:29 +0000 (12:35 +0530)]
Fix inconsistency in country_isbn and missing prefixes
[BZ #21797]
* locales/et_EE (LC_ADDRESS): Fix country_isbn.
* locales/hy_AM (LC_ADDRESS): Fix country_isbn.
Mike FABIAN [Mon, 24 Jul 2017 12:52:09 +0000 (14:52 +0200)]
Add country_name to several locales
* locales/an_ES (LC_ADDRESS): Add country_name.
* locales/ayc_PE (LC_ADDRESS): Add country_name.
* locales/be_BY@latin (LC_ADDRESS): Add country_name.
* locales/dv_MV (LC_ADDRESS): Add country_name,
country_ab2, and country_ab3
* locales/ia_FR (LC_ADDRESS): Add country_name.
* locales/ik_CA (LC_ADDRESS): Add country_name.
* locales/lij_IT (LC_ADDRESS): Add country_name.
* locales/mi_NZ (LC_ADDRESS): Add country_name.
* locales/nds_DE (LC_ADDRESS): Add country_name.
* locales/nds_NL (LC_ADDRESS): Add country_name.
* locales/oc_FR (LC_ADDRESS): Add country_name.
* locales/sa_IN (LC_ADDRESS): Add country_name.
* locales/sc_IT (LC_ADDRESS): Add country_name.
* locales/sd_IN (LC_ADDRESS): Add country_name.
* locales/tcy_IN (LC_ADDRESS): Add country_name.
* locales/tg_TJ (LC_ADDRESS): Add country_name.
* locales/tl_PH (LC_ADDRESS): Add country_name.
* locales/tt_RU (LC_ADDRESS): Add country_name.
* locales/wo_SN (LC_ADDRESS): Add country_name.
* locales/zh_SG (LC_ADDRESS): Add country_name.
Akhilesh Kumar [Mon, 24 Jul 2017 12:10:26 +0000 (17:40 +0530)]
Fix name_mrs for mag_IN
[BZ #21825]
* locales/mag_IN(LC_NAME): Fix name_mrs.
Akhilesh Kumar [Mon, 24 Jul 2017 07:13:47 +0000 (12:43 +0530)]
Added yesstr/nostr for sa_IN
[BZ #21823]
* locales/sa_IN (LC_MESSAGES): Add yesstr,nostr
Akhilesh Kumar [Mon, 24 Jul 2017 06:56:11 +0000 (12:26 +0530)]
Fix LC_TIME for mai_IN
[BZ #21822]
* locales/mai_IN (LC_TIME): Fix abday, day, mon etc...
Siddhesh Poyarekar [Tue, 25 Jul 2017 07:04:14 +0000 (12:34 +0530)]
zic: Use PRIdMAX to print line numbers
The PRIdLINENUM abstraction is unnecessary and breaks libc.pot
generation.
* timezone.zic (PRIdLINENO): Remove.
(verror): Use PRIdMAX.
* po/libc.pot: Regenerate.
Adhemerval Zanella [Mon, 17 Jul 2017 21:11:12 +0000 (18:11 -0300)]
tunables: Use direct syscall for access (BZ#21744)
The function maybe_enable_malloc_check, which is called by
__tunables_init, calls __access_noerrno. It isn't problem when
symbol is is in ld.so, which has a special version of __access_noerrno
without stack protector. But when glibc is built with stack protector,
maybe_enable_malloc_check in libc.a can't call the regular version of
__access_noerrno with stack protector.
This patch changes how Linux defines the __access_noerrno to be an
inline call instead and thus preventing defining different build
rules for ld/static and shared.
H.J. Lu <hongjiu.lu@intel.com>
Adhemerval Zanella <adhemerval.zanella@linaro.org>
[BZ #21744]
* elf/dl-tunables.c: Include not-errno.h header.
* include/unistd.h (__access_noerrno): Remove definition.
* sysdeps/unix/sysv/linux/access.c (__access_noerrno): Likewise.
* sysdeps/generic/not-errno.h: New file.
* sysdeps/unix/sysv/linux/not-errno.h: Likewise.
H.J. Lu [Mon, 24 Jul 2017 13:06:08 +0000 (06:06 -0700)]
Avoid accessing corrupted stack from __stack_chk_fail [BZ #21752]
__libc_argv[0] points to address on stack and __libc_secure_getenv
accesses environment variables which are on stack. We should avoid
accessing stack when stack is corrupted.
This patch also renames function argument in __fortify_fail_abort
from do_backtrace to need_backtrace to avoid confusion with do_backtrace
from enum __libc_message_action.
[BZ #21752]
* debug/fortify_fail.c (__fortify_fail_abort): Don't pass down
__libc_argv[0] if we aren't doing backtrace. Rename do_backtrace
to need_backtrace.
* sysdeps/posix/libc_fatal.c (__libc_message): Don't call
__libc_secure_getenv if we aren't doing backtrace.
Andreas Schwab [Mon, 24 Jul 2017 09:06:19 +0000 (11:06 +0200)]
Remove extra semicolons in struct pthread_mutex (bug 21804)
Akhilesh Kumar [Mon, 24 Jul 2017 03:47:37 +0000 (09:17 +0530)]
Added country_name in mai_IN
[BZ #21821]
* locales/mai_IN (LC_ADDRESS): Add country_name.
Akhilesh Kumar [Fri, 21 Jul 2017 09:27:01 +0000 (14:57 +0530)]
Added country_isbn for Republic of Korea
[BZ #21796]
* locales/ko_KR (LC_ADDRESS): Add country_isbn.
Akhilesh Kumar [Fri, 21 Jul 2017 09:16:42 +0000 (14:46 +0530)]
Added country_isbn for Italy
[BZ #21794]
* locales/ca_IT (LC_ADDRESS): Add country_isbn.
* locales/de_IT (LC_ADDRESS): Add country_isbn.
* locales/fur_IT (LC_ADDRESS): Add country_isbn.
* locales/it_IT (LC_ADDRESS): Add country_isbn.
* locales/lij_IT (LC_ADDRESS): Add country_isbn.
* locales/sc_IT (LC_ADDRESS): Add country_isbn.
Dmitry V. Levin [Sun, 23 Jul 2017 23:22:53 +0000 (23:22 +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.
John David Anglin [Sun, 23 Jul 2017 16:50:44 +0000 (12:50 -0400)]
[BZ 19170]
Revise comment in sysdeps/hppa/dl-trampoline.S
DJ Delorie [Fri, 21 Jul 2017 23:50:21 +0000 (19:50 -0400)]
Correct nss/tst-nss-test5 configuration
The configuration was cloned from test4, but test5 does not
have data for a second module.
Steve Ellcey [Fri, 21 Jul 2017 17:33:30 +0000 (10:33 -0700)]
Fix localedata test builds with latest GCC
* localedata/Makefile (CFLAGS-tst_iswalnum.c, CFLAGS-tst_iswalpha.c
CFLAGS-tst_iswcntrl.c, CFLAGS-tst_iswdigit.c, CFLAGS-tst_iswgraph.c,
CFLAGS-tst_iswlower.c, CFLAGS-tst_iswprint.c, CFLAGS-tst_iswpunct.c,
CFLAGS-tst_iswspace.c, CFLAGS-tst_iswupper.c, CFLAGS-tst_iswxdigit.c,
CFLAGS-tst_towlower.c, CFLAGS-tst_towupper.c): New macros.
Steve Ellcey [Fri, 21 Jul 2017 16:56:13 +0000 (09:56 -0700)]
Fix nss/nss_test1.c compile with latest GCC.
* nss/nss_test1.c (default_npwd_data): Fix definition.
Steve Ellcey [Fri, 21 Jul 2017 16:47:57 +0000 (09:47 -0700)]
Fix cexpl when compiled with latest GCC
* sysdeps/ieee754/ldbl-128/e_expl.c (__ieee754_expl): Call
math_force_eval.
Massimeddu Cireddu [Fri, 21 Jul 2017 09:01:51 +0000 (11:01 +0200)]
Fix misspelled yesexpr/day/abday/mon/abmon/date_fmt fields in sc_IT
[BZ #12068]
* locales/sc_IT (LC_MESSAGES): Fix yesexpr and add yesstr and nostr.
* locales/sc_IT (LC_TIME): Fix mispelled day/abday/mon/abmon and
fix date_fmt.
Rafal Luzynski [Fri, 21 Jul 2017 08:29:06 +0000 (10:29 +0200)]
localedata/locales/lg_UG: Fix some comments.
After the recent update of int_select the comment needed an update, too.
While at this, all comments in LC_TELEPHONE were moved above their
respective values because this looks better. Some minor typos fixed.
[BZ #21783]
* localedata/locales/lg_UG (LC_TELEPHONE): Move all comments
above the values, correct some of them.
Akhilesh Kumar [Thu, 20 Jul 2017 06:26:24 +0000 (11:56 +0530)]
Add/Fix country_isbn for France
[BZ #21795]
* locales/br_FR (LC_ADDRESS): Add country_isbn.
* locales/ca_FR (LC_ADDRESS): Add country_isbn.
* locales/fr_FR (LC_ADDRESS): Add country_isbn.
* locales/ia_FR (LC_ADDRESS): Fix country_isbn.
* locales/oc_FR (LC_ADDRESS): Fix country_isbn.
Akhilesh Kumar [Fri, 21 Jul 2017 07:09:55 +0000 (09:09 +0200)]
Add country_name and country_post, and country_isbn for pap_AW and pap_CW
[BZ #21807]
[BZ #21808]
* locales/pap_AW (LC_ADDRESS): Add country_name and country_post.
* locales/pap_CW (LC_ADDRESS): Add country_name, country_post,
and country_isbn.
Mike FABIAN [Thu, 20 Jul 2017 15:05:21 +0000 (17:05 +0200)]
Add int_select to many locales
* locales/ar_JO (LC_TELEPHONE): Add int_select.
* locales/ar_LB (LC_TELEPHONE): Add int_select.
* locales/ar_MA (LC_TELEPHONE): Add int_select.
* locales/ar_OM (LC_TELEPHONE): Add int_select.
* locales/ber_DZ (LC_TELEPHONE): Add int_select.
* locales/ber_MA (LC_TELEPHONE): Add int_select.
* locales/ca_ES (LC_TELEPHONE): Add int_select.
* locales/crh_UA (LC_TELEPHONE): Add int_select.
* locales/de_CH (LC_TELEPHONE): Add int_select.
* locales/de_LI (LC_TELEPHONE): Add int_select.
* locales/de_LU (LC_TELEPHONE): Add int_select.
* locales/dz_BT (LC_TELEPHONE): Add int_select.
* locales/en_HK (LC_TELEPHONE): Add int_select.
* locales/en_IE (LC_TELEPHONE): Add int_select.
* locales/en_NZ (LC_TELEPHONE): Add int_select.
* locales/en_PH (LC_TELEPHONE): Add int_select.
* locales/en_SG (LC_TELEPHONE): Add int_select.
* locales/es_ES (LC_TELEPHONE): Add int_select.
* locales/es_PA (LC_TELEPHONE): Add int_select.
* locales/es_US (LC_TELEPHONE): Add int_select.
* locales/es_UY (LC_TELEPHONE): Add int_select.
* locales/eu_ES (LC_TELEPHONE): Add int_select.
* locales/he_IL (LC_TELEPHONE): Add int_select.
* locales/id_ID (LC_TELEPHONE): Add int_select.
* locales/it_CH (LC_TELEPHONE): Add int_select.
* locales/it_CH (LC_TELEPHONE): Add int_select.
* locales/it_IT (LC_TELEPHONE): Add int_select.
* locales/kl_GL (LC_TELEPHONE): Add int_select.
* locales/ko_KR (LC_TELEPHONE): Add int_select.
* locales/kw_GB (LC_TELEPHONE): Add int_select.
* locales/ky_KG (LC_TELEPHONE): Add int_select.
* locales/lij_IT (LC_TELEPHONE): Add int_select.
* locales/lt_LT (LC_TELEPHONE): Add int_select.
* locales/lv_LV (LC_TELEPHONE): Add int_select.
* locales/mi_NZ (LC_TELEPHONE): Add int_select.
* locales/ms_MY (LC_TELEPHONE): Add int_select.
* locales/mt_MT (LC_TELEPHONE): Add int_select.
* locales/ne_NP (LC_TELEPHONE): Add int_select.
* locales/niu_NU (LC_TELEPHONE): Add int_select.
* locales/nl_NL (LC_TELEPHONE): Add int_select.
* locales/pl_PL (LC_TELEPHONE): Add int_select.
* locales/ro_RO (LC_TELEPHONE): Add int_select.
* locales/ru_UA (LC_TELEPHONE): Add int_select.
* locales/rw_RW (LC_TELEPHONE): Add int_select.
* locales/sk_SK (LC_TELEPHONE): Add int_select.
* locales/sl_SI (LC_TELEPHONE): Add int_select.
* locales/so_SO (LC_TELEPHONE): Add int_select.
* locales/the_NP (LC_TELEPHONE): Add int_select.
* locales/tk_TM (LC_TELEPHONE): Add int_select.
* locales/uz_UZ (LC_TELEPHONE): Add int_select.
* locales/uz_UZ@cyrillic (LC_TELEPHONE): Add int_select.
* locales/zh_SG (LC_TELEPHONE): Add int_select.
Akhilesh Kumar [Thu, 20 Jul 2017 09:34:31 +0000 (15:04 +0530)]
Added int_select international_call_prefixes
[BZ # 21801]
* locales/es_NI (LC_TELEPHONE): Add int_select.
* locales/es_PE (LC_TELEPHONE): Add int_select.
* locales/es_PR (LC_TELEPHONE): Add int_select.
* locales/es_PY (LC_TELEPHONE): Add int_select.
* locales/es_VE (LC_TELEPHONE): Add int_select.
* locales/fo_FO (LC_TELEPHONE): Add int_select.
* locales/fr_CH (LC_TELEPHONE): Add int_select.
* locales/fr_LU (LC_TELEPHONE): Add int_select.
* locales/ga_IE (LC_TELEPHONE): Add int_select.
* locales/gl_ES (LC_TELEPHONE): Add int_select.
* locales/gv_GB (LC_TELEPHONE): Add int_select.
Akhilesh Kumar [Thu, 20 Jul 2017 08:01:14 +0000 (13:31 +0530)]
Fix int_select international_call_prefixes
[BZ #21799]
* locales/ar_KW (LC_TELEPHONE): Add int_select.
* locales/ar_LY (LC_TELEPHONE): Add int_select.
* locales/ar_QA (LC_TELEPHONE): Add int_select.
* locales/ar_SA (LC_TELEPHONE): Add int_select.
* locales/ar_SS (LC_TELEPHONE): Add int_select.
* locales/ar_SY (LC_TELEPHONE): Add int_select.
* locales/ar_TN (LC_TELEPHONE): Add int_select.
* locales/ar_YE (LC_TELEPHONE): Add int_select.
* locales/ca_AD (LC_TELEPHONE): Add int_select.
* locales/es_MX (LC_TELEPHONE): Add int_select.
Adhemerval Zanella [Wed, 19 Jul 2017 18:56:02 +0000 (15:56 -0300)]
Update sparc ulps
* sysdeps/sparc/fpu/libm-test-ulps: Update.
Adhemerval Zanella [Wed, 19 Jul 2017 14:45:37 +0000 (11:45 -0300)]
alpha: Fix clone exit syscall argument passing (BZ#21512)
This patch fixes the argument passing for exit syscall after
the clone function returns on hppa. This fixes misc/tst-clone2
on alpha-linux-gnu.
Checked misc/tst-clone2 on alpha-linux-gnu.
[BZ #21512]
* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Fix argument
passing to syscall exit.
DJ Delorie [Wed, 19 Jul 2017 17:14:34 +0000 (13:14 -0400)]
Fix cast-after-dereference
Original code was dereferencing a char*, then casting the value
to size_t. Should cast the pointer to size_t* then deference.
Mike FABIAN [Wed, 19 Jul 2017 15:21:21 +0000 (17:21 +0200)]
Add country_name to iu_CA locale
* locales/iu_CA (LC_ADDRESS): Add country_name
Akhilesh Kumar [Wed, 19 Jul 2017 07:27:36 +0000 (12:57 +0530)]
Fix country_post "Country Postal Abbreviations"
[BZ #21788]
* locales/cy_GB (LC_ADDRESS): Add country_post.
* locales/hy_AM (LC_ADDRESS): Add country_post.
* locales/iu_CA (LC_ADDRESS): Add country_post.
* locales/nan_TW@latin (LC_ADDRESS): Add country_post.
* locales/ps_AF (LC_ADDRESS): Add country_post.
* locales/sr_RS (LC_ADDRESS): Fix country_post.
* locales/sr_RS@latin (LC_ADDRESS): Fix country_post.
* locales/zh_TW (LC_ADDRESS): Fix country_post.
Akhilesh Kumar [Wed, 19 Jul 2017 06:17:01 +0000 (11:47 +0530)]
Fix consistency in country_isbn in various locales and add comment to country_num in nr_ZA
[BZ #21784]
* locales/bo_CN (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/fa_IR (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/nan_TW@latin (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/nr_ZA (LC_ADDRESS): Add country_num.
* locales/sr_RS (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/sr_RS@latin (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/ug_CN (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/yue_HK (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/zh_CN (LC_ADDRESS): Fix inconsistency in country_isbn.
* locales/zh_TW (LC_ADDRESS): Fix inconsistency in country_isbn.
H.J. Lu [Wed, 19 Jul 2017 15:39:18 +0000 (08:39 -0700)]
i386: Test memmove_chk and memset_chk only in libc.so [BZ #21741]
Since there are no multiarch versions of memmove_chk and memset_chk,
test multiarch versions of memmove_chk and memset_chk only in libc.so.
[BZ #21741]
* sysdeps/i386/i686/multiarch/ifunc-impl-list.c
(__libc_ifunc_impl_list): Test memmove_chk and memset_chk only
in libc.so.
H.J. Lu [Wed, 19 Jul 2017 15:21:27 +0000 (08:21 -0700)]
Don't add stack_chk_fail_local.o to libc.a [BZ #21740]
commit
524a8ef2ad76af8ac049293d993a1856b0d888fb
Author: Nick Alcock <nick.alcock@oracle.com>
Date: Mon Dec 26 10:08:57 2016 +0100
PLT avoidance for __stack_chk_fail [BZ #7065]
Add a hidden __stack_chk_fail_local alias to libc.so,
and make sure that on targets which use __stack_chk_fail,
this does not introduce a local PLT reference into libc.so.
which unconditionally added
strong_alias (__stack_chk_fail, __stack_chk_fail_local)
defines __stack_chk_fail_local as an alias of __stack_chk_fail in libc.a.
There is no need to add stack_chk_fail_local.o to libc.a. We only need
to add stack_chk_fail_local.oS to libc_nonshared.a.
Tested on x86-64:
[hjl@gnu-skl-1 build-x86_64-linux]$ nm libc.a | grep __stack_chk_fail
0000000000000000 T __stack_chk_fail
0000000000000000 T __stack_chk_fail_local
[hjl@gnu-skl-1 build-x86_64-linux]$ nm libc_nonshared.a | grep __stack_chk_fail_local
0000000000000000 T __stack_chk_fail_local
[hjl@gnu-skl-1 build-x86_64-linux]$
[BZ #21740]
* debug/Makefile (elide-routines.o): New.
Szabolcs Nagy [Tue, 18 Jul 2017 10:15:12 +0000 (11:15 +0100)]
[AArch64] Update dl-procinfo for new HWCAP flags in Linux 4.12
Follow up to commit
512d245bc30cca893db6979f42f058e734f345c3.
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c:
(_dl_aarch64_cap_flags): Update.
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h
(_DL_HWCAP_COUNT, _DL_HWCAP_LAST): Update.
Akhilesh Kumar [Tue, 18 Jul 2017 06:21:48 +0000 (11:51 +0530)]
Fix or add int_select international_call_prefixes
[BZ #21783 ]
* locales/ar_AE (LC_TELEPHONE): Add int_select.
* locales/ar_BH (LC_TELEPHONE): Fix int_select.
* locales/ar_IQ (LC_TELEPHONE): Add int_select.
* locales/es_CU (LC_TELEPHONE): Add int_select.
* locales/ja_JP (LC_TELEPHONE): Add int_select.
* locales/lg_UG (LC_TELEPHONE): Fix int_select.
* locales/mn_MN (LC_TELEPHONE): Fix int_select.
* locales/om_KE (LC_TELEPHONE): Add int_select.
* locales/sm_WS (LC_TELEPHONE): Fix int_select.
Szabolcs Nagy [Mon, 17 Jul 2017 08:58:29 +0000 (09:58 +0100)]
[AArch64] Fix out of bound array access regression
Partially revert
ea01a4da219011f4a4db97eef3c5bfc2f6e8fc6b
"aarch64: Add hwcap string routines" because _dl_procinfo cannot
be future proof and avoid oob access in _dl_hwcap_string.