Age | Commit message (Collapse) | Author | Files | Lines |
|
FMA optimized e_expf improves performance by more than 50% on Skylake.
[BZ #21912]
* sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines):
Add 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.
(cherry picked from commit 24a2e6588d2e0c91b4003878b0625d4a9360e8f3)
|
|
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.
(cherry picked from commit f59f7adb4a00b7784cab1becdf257366104587b7)
|
|
This patch adds multiarch functions optimized with -mfma -mavx2 to libm.
e_pow-fma.c is compiled with $(config-cflags-nofma) due to PR 19003.
* sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines):
Add e_exp-fma, e_log-fma, e_pow-fma, s_atan-fma, e_asin-fma,
e_atan2-fma, s_sin-fma, s_tan-fma, mplog-fma, mpa-fma,
slowexp-fma, slowpow-fma, sincos32-fma, doasin-fma, dosincos-fma,
halfulp-fma, mpexp-fma, mpatan2-fma, mpatan-fma, mpsqrt-fma,
and mptan-fma.
(CFLAGS-doasin-fma.c): New.
(CFLAGS-dosincos-fma.c): Likewise.
(CFLAGS-e_asin-fma.c): Likewise.
(CFLAGS-e_atan2-fma.c): Likewise.
(CFLAGS-e_exp-fma.c): Likewise.
(CFLAGS-e_log-fma.c): Likewise.
(CFLAGS-e_pow-fma.c): Likewise.
(CFLAGS-halfulp-fma.c): Likewise.
(CFLAGS-mpa-fma.c): Likewise.
(CFLAGS-mpatan-fma.c): Likewise.
(CFLAGS-mpatan2-fma.c): Likewise.
(CFLAGS-mpexp-fma.c): Likewise.
(CFLAGS-mplog-fma.c): Likewise.
(CFLAGS-mpsqrt-fma.c): Likewise.
(CFLAGS-mptan-fma.c): Likewise.
(CFLAGS-s_atan-fma.c): Likewise.
(CFLAGS-sincos32-fma.c): Likewise.
(CFLAGS-slowexp-fma.c): Likewise.
(CFLAGS-slowpow-fma.c): Likewise.
(CFLAGS-s_sin-fma.c): Likewise.
(CFLAGS-s_tan-fma.c): Likewise.
* sysdeps/x86_64/fpu/multiarch/doasin-fma.c: New file.
* sysdeps/x86_64/fpu/multiarch/dosincos-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_asin-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_atan2-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_exp-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_log-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_pow-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/halfulp-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/ifunc-avx-fma4.h: Likewise.
* sysdeps/x86_64/fpu/multiarch/ifunc-fma4.h: Likewise.
* sysdeps/x86_64/fpu/multiarch/mpa-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mpatan-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mpatan2-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mpexp-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mplog-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mpsqrt-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/mptan-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_atan-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_sin-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_tan-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/sincos32-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/slowpow-fma.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_asin.c: Rewrite.
* sysdeps/x86_64/fpu/multiarch/e_atan2.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_exp.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_log.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/e_pow.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_atan.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_sin.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_tan.c: Likewise.
(cherry picked from commit 57a72fa3502673754d14707da02c7c44e83b8d20)
|
|
(cherry picked from commit 8b2c63e4e2ad1fd161f80004ed30624f2a37b57b)
|
|
(cherry picked from commit eac43cbb8d808a40004aa0a4a286f5c5155beccb)
|
|
This corrects an oversight introduced in commit
352f4ff9a268b81ef5d4b2413f582565806e4790 (resolv: Introduce struct
resolv_context).
(cherry picked from commit 3016149819268b14660f791b971910ccc2cc13e5)
|
|
Different than other architectures hppa-linux-gnu define different values
for ENOTSUP and EOPNOTSUPP, where the later is a Linux specific one.
This leads to tst-preadwritev{64}v2 tests failures:
$ ./testrun.sh misc/tst-preadvwritev2
error: tst-preadvwritev2-common.c:35: preadv2 failure did not set errno to ENOTSUP (223)
error: 1 test failures
The straightforward fix is to return the POSIX defined ENOTSUP on all
p{read,write}v{64}v2 implementations instead of Linux specific one.
Checked on x86_64-linux-gnu and the tst-preadwritev{64}v2 on
hppa-linux-gnu (although due the installed kernel on my testing system
the pwritev{64}v2 with an invalid flag still fails due a known kernel
issue [1]).
[BZ #21780]
* sysdeps/posix/preadv2.c (preadv2): Use ENOTSUP instead of
EOPNOTSUPP.
* sysdeps/posix/preadv64v2.c (preadv64v2): Likewise.
* sysdeps/posix/pwritev2.c (pwritev2): Likewise.
* sysdeps/posix/pwritev64v2.c (pwritev64v2): Likewise.
* sysdeps/unix/sysv/linux/preadv2.c (preadv2): Likewise.
* sysdeps/unix/sysv/linux/preadv64v2.c (preadv64v2): Likewise.
* sysdeps/unix/sysv/linux/pwritev2.c (pwritev2): Likewise.
* sysdeps/unix/sysv/linux/pwritev64v2.c (pwritev64v2): Likewise.
[1] https://sourceware.org/ml/libc-alpha/2017-06/msg00726.html
Cherry-pick of 852d63120783fae5bf85a067320dc4ba1ed59f11
|
|
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.
(cherry picked from commit d2cf37c0a2a375cf2fde69f1afbcc49e45368fc4)
|
|
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.
(cherry picked from commit 2b34e2716f1e84b2c3457ffc868c3dc775b55845)
|
|
This comes from running “make regen-ulps” on an AMD Opteron 2378 CPU.
Changelog:
* sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Regenerated.
(cherry picked from commit 144bdab050bdd78c327d98a79b15c5b164e1d56f)
|
|
(cherry picked from commit 964263bb8d650f1681665c55704fb01a8e725621)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
* sysdeps/microblaze/libm-test-ulps: Update.
|
|
|
|
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.
|
|
* sysdeps/alpha/fpu/libm-test-ulps: Update.
|
|
[BZ #21848]
* locales/mai_NP (LC_IDENTIFICATION): Fix country name in title.
|
|
|
|
* 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.
|
|
[BZ #14172]
* locales/az_IR: New file.
|
|
[BZ #21839]
* locales/ta_LK (LC_MONETARY): copy "si_LK"
|
|
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.
|
|
* manual/creature.texi (_REENTRANT): Annotate as obsolete.
(_THREAD_SAFE): Likewise.
|
|
|
|
Fixes [BZ #21822] with commit id 832f8e048773da9aac99cd1ee57f2ccbd40860f6
[BZ #21844]
* locales/mai_IN (LC_TIME): Fix Latin characters and month sequence.
|
|
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"
|
|
* 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.
|
|
* 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.
|
|
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.
|
|
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.
|
|
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.
|
|
* 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.
|
|
instead of <Uxxxx>
* localedata/locales/mai_NP: Use POSIX Portable Character Set.
|
|
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.
|
|
[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"
|
|
|
|
[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"
|
|
|
|
|
|
|
|
[BZ #21797]
* locales/et_EE (LC_ADDRESS): Fix country_isbn.
* locales/hy_AM (LC_ADDRESS): Fix country_isbn.
|
|
* 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.
|