1995-05-18 17:00:09 +08:00
/ *
Update.
1997-08-24 12:24 Ulrich Drepper <drepper@cygnus.com>
* configure.in (INSTALL): Quote `$'.
* libc.map: Add __xpg_basename.
* csu/Makefile (initfini.s): Disable optimization.
* elf/dl-deps.c: Implement handling of DL_FILTER.
* elf/dl-load.c (_dl_init_paths): Add error check.
* intl/finddomain.c (_nl_find_domain): Correct comment.
* intl/localealias.c: Include <bits/libc-lock.h> not <libc-lock.h>.
* libio/stdio.h: Make {,v}snprintf available if __USE_BSD.
Change extern inline functions to work correctly in C++.
* locale/iso-4217.def: Update for more recent ISO 4217 version.
* locale/loadlocale.c (_nl_load_locale): Add cast.
* manual/message.texi: Finish gettext section.
* posix/getopt_init.c: Don't use relative #include path.
(__getopt_clean_environment): Change function to take pointer to
environment as argument. Optimize generation of test string a bit.
* sysdeps/unix/sysv/linux/init-first.c: Call __getopt_clean_environment
with additional argument.
* poisx/glob.c: Add prototype for next_brace_sub.
* sysdeps/generic/dl-sysdep.c: Recognize AT_BASE value on auxiliary
vector.
* sysdeps/i386/dl-machine.h (elf_machine_load_address): Rewrite
to not generate relocation entry. Suggested by Richard Henderson.
(ELF_MACHINE_BEFORE_RTLD_RELOC): Removed.
(elf_machine_runtime_setup): Add .aligns.
* sysdeps/i386/fpu/fraiseexcpt.c: Add volatile to asms.
* sysdeps/i386/fpu/bits/mathinline.h: Partially undo change of
1997-08-14 03:14. gcc 2.7.2* is really broken in some aspects.
* sysdeps/standalone/i386/i386.h: Clean up asm statements a bit.
* sysdeps/standalone/i960/i960ca.h: Likewise.
1997-08-22 19:04 Richard Henderson <rth@cygnus.com>
* elf/rtld.c (_dl_start): Init _dl_rtld_map.l_opencount due to
undocumented test addition in _dl_map_object.
Support ET_EXEC versions of ld.so, for debugging at least:
* elf/dl-load.c (_dl_map_object): Add_name_to_object could get
called despite the DT_SONAME != NULL test, segfaulting. Simplify
the code here as well.
* elf/dl-lookup.c (do_lookup): Skip objects with no symtab.
(_dl_setup_hash): Likewise for hash tables.
* elf/dl-version.c (_dl_check_map_versions): Likewise for strtabs.
* elf/rtld.c (_dl_start): Likewise for rpath.
(_dl_rtld_libname2): New variable.
(dl_main): Use it to add an soname for ourselves when we don't have
one of our own. Base it on the target's .interp.
(dl_main): Again, skip printing of objects that don't have strtabs.
Sparc 32 merge:
* elf/dl-runtime.c (ELF_FIXUP_RETURN_VALUE): Provide default value.
(fixup): Simplify code. Use ELF_FIXUP_RETURN_VALUE.
(profile_fixup): Likewise, though this still needs fixing for
Sparc32 and PPC.
* sysdeps/powerpc/dl-machine.h: Transmute ELF_FIXUP_RETURNS_ADDRESS
to ELF_FIXUP_RETURN_VALUE.
* sysdeps/sparc/sparc32/dl-machine.h: Implement lazy relocation.
Fix up _dl_start_user to handle _dl_skip_args properly.
Use _dl_hwcap to determine if "flush" is available/needed.
* sysdeps/sparc/configure.in: Remove. It doesn't actually do
anything anymore, and what it did do is done somewhere else.
* sysdeps/sparc/configure: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h (FP_ILOGB0, FP_ILOGBNAN): New.
* sysdeps/sparc/fpu/fraiseexcpt.c: Rearrange for smaller code.
* sysdeps/sparc/sparc32/Makefile: Fix sparc->sparc/sparc32 bits
in divrem expansions.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (END, LOC): New
definitions for assembly syntax differences.
* sysdeps/sparc/sparc32/__longjmp.S: %g6,%g7 are reserved to the
"system". Use %g2,%g3 instead. Use new local label macro.
* sysdeps/sparc/sparc32/add_n.S: Use <sysdep.h> and ENTRY, END,
and LOC for proper assembly headers/footers.
* sysdeps/sparc/sparc32/addmul_1.S: Likewise.
* sysdeps/sparc/sparc32/alloca.S: Likewise.
* sysdeps/sparc/sparc32/dotmul.S: Likewise.
* sysdeps/sparc/sparc32/lshift.S: Likewise.
* sysdeps/sparc/sparc32/mul_1.S: Likewise.
* sysdeps/sparc/sparc32/rshift.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/addmul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/mul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/submul_1.S: Likewise.
* sysdeps/sparc/sparc32/sparcv8/udiv_qrnnd.S: Likewise.
* sysdeps/sparc/sparc32/sub_n.S: Likewise.
* sysdeps/sparc/sparc32/submul_1.S: Likewise.
* sysdeps/sparc/sparc32/udiv_qrnnd.S: Likewise.
* sysdeps/sparc/sparc32/umul.S: Likewise.
* sysdeps/sparc/sparc32/divrem.m4: Likewise.
* sysdeps/sparc/sparc32/rem.S: Regenerate.
* sysdeps/sparc/sparc32/sdiv.S: Regenerate.
* sysdeps/sparc/sparc32/udiv.S: Regenerate.
* sysdeps/sparc/sparc32/urem.S: Regenerate.
* sysdeps/sparc/sparc32/sparcv8/dotmul.S: New file.
* sysdeps/sparc/sparc32/sparcv8/rem.S: New file.
* sysdeps/sparc/sparc32/sparcv8/sdiv.S: New file.
* sysdeps/sparc/sparc32/sparcv8/udiv.S: New file.
* sysdeps/sparc/sparc32/sparcv8/umul.S: New file.
* sysdeps/sparc/sparc32/sparcv8/urem.S: New file.
* sysdeps/sparc/sparc32/bsd-_setjmp.S: Dike out.
* sysdeps/sparc/sparc32/bsd-setjmp.S: Likewise.
* sysdeps/sparc/sparc32/setjmp.S: Add _setjmp and setjmp entry points.
* sysdeps/unix/sysv/linux/sparc/sparc32/__sigtrampoline.S:
Clean up PIC code.
* sysdeps/sparc/sparc32/elf/start.S: New file, slightly modified
from the sparc64 version.
* sysdeps/sparc/sparc32/elf/start.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc32/init-first.h: Rewrite in
assembly based on the sparc64 version.
* sysdeps/sparc/sparc32/fpu/bits/fenv.h: Duh. Use proper syntax
for manipulating %fsr.
* sysdeps/sparc/sparc32/fpu/fpu_control.h: Make IEEE conformance
be the default.
* elf/elf.h (HWCAP_SPARC_*): New definitions.
* elf/rtld.c (_dl_hwcap): New variable.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Record AT_HWCAP.
* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: New file.
Attempt to get hold of the page size based on what we might have
been told at startup time in _dl_pagesize. This will be obsolete
when I finish the kernel hooks for a proper sysconf(), stay tuned.
Sparc 64 merge:
* sysdeps/sparc/sparc64/dl-machine.h (ELF_FIXUP_RETURN_VALUE): New.
Figure out the right thing to return based on the .plt format.
* sysdeps/sparc/sparc64/fpu/fpu_control.h: Update comment.
* sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h (__dev_t):
Should have been 64-bits wide.
* sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: sll->sllx,
optimize for branch delay slot usage.
1997-08-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* csu/Makefile ($(objpfx)crt%.o): Fix a missing *.so -> *.os
change.
1997-08-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (identities): Change epsilon.
* sysdeps/i386/fpu/bits/mathinline.h: Correct arguments to fabs,
fabsf, fabsl, __fabsl.
* sysdeps/libm-i387/e_remainderl.S: Pop extra value from FPU stack.
* sysdeps/libm-ieee754/s_csinhl.c: Include <fenv.h>.
1997-08-24 18:55:18 +08:00
* Defines the valid international currency symbols according to ISO 4217 .
1995-05-18 17:00:09 +08:00
* This is used in monetary . c ( monetary_check ) .
*
2004-08-10 13:10:38 +08:00
* If you find something missing or wrong , please go to the URL
* http : / / www . gnu . org / software / libc / bugs . html and follow
* instructions there to file a bug report .
1996-07-20 19:26:09 +08:00
*
1995-05-18 17:00:09 +08:00
* ! ! ! The list has to be sorted ! ! !
* /
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "AED" ) /* United Arab Emirates Dirham */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "AFN" ) /* Afghanistan Afgani */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "ALL" ) /* Albanian Lek */
DEFINE_INT_CURR ( "AMD" ) /* Armenia Dram */
DEFINE_INT_CURR ( "ANG" ) /* Netherlands Antilles */
DEFINE_INT_CURR ( "AOA" ) /* Angolan Kwanza */
DEFINE_INT_CURR ( "ARS" ) /* Argentine Peso */
DEFINE_INT_CURR ( "AUD" ) /* Australian Dollar */
DEFINE_INT_CURR ( "AWG" ) /* Aruba Guilder */
DEFINE_INT_CURR ( "AZM" ) /* Azerbaijan Manat */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "BAM" ) /* Bosnian and Herzegovina Convertible Mark */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "BBD" ) /* Barbados Dollar */
DEFINE_INT_CURR ( "BDT" ) /* Bangladesh Taka */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "BGN" ) /* Bulgarian Lev */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "BHD" ) /* Bahraini Dinar */
DEFINE_INT_CURR ( "BIF" ) /* Burundi Franc */
DEFINE_INT_CURR ( "BMD" ) /* Burmudian Dollar */
DEFINE_INT_CURR ( "BND" ) /* Brunei Dollar */
DEFINE_INT_CURR ( "BOB" ) /* Bolivian Boliviano */
DEFINE_INT_CURR ( "BRL" ) /* Brazil Cruzeiro */
DEFINE_INT_CURR ( "BSD" ) /* Bahamas Dollar */
DEFINE_INT_CURR ( "BTN" ) /* Bhutan Ngultrum */
DEFINE_INT_CURR ( "BWP" ) /* Botswana Pula */
DEFINE_INT_CURR ( "BYR" ) /* Belarus Ruble */
DEFINE_INT_CURR ( "BZD" ) /* Belize Dollar */
DEFINE_INT_CURR ( "CAD" ) /* Canadian Dollar */
DEFINE_INT_CURR ( "CDF" ) /* Congo Dem.Rep. Franc */
DEFINE_INT_CURR ( "CHF" ) /* Swiss Franc (Liechtenstein) */
DEFINE_INT_CURR ( "CLP" ) /* Chilean Peso */
DEFINE_INT_CURR ( "CNY" ) /* China Yuan Renminbi */
DEFINE_INT_CURR ( "COP" ) /* Colombian Peso */
DEFINE_INT_CURR ( "CRC" ) /* Costa Rican Colon */
DEFINE_INT_CURR ( "CUP" ) /* Cuban Peso */
DEFINE_INT_CURR ( "CVE" ) /* Cape Verde Escudo */
DEFINE_INT_CURR ( "CYP" ) /* Cypriot Pound */
DEFINE_INT_CURR ( "CZK" ) /* Czech Koruna */
DEFINE_INT_CURR ( "DJF" ) /* Djibouti Franc */
DEFINE_INT_CURR ( "DKK" ) /* Danish Krone (Faroe Islands, Greenland) */
DEFINE_INT_CURR ( "DOP" ) /* Dominican Republic */
DEFINE_INT_CURR ( "DZD" ) /* Algerian Dinar */
DEFINE_INT_CURR ( "EEK" ) /* Estonian Kroon */
DEFINE_INT_CURR ( "EGP" ) /* Egyptian Pound */
DEFINE_INT_CURR ( "ERN" ) /* Eritrean Nakfa */
DEFINE_INT_CURR ( "ETB" ) /* Ethiopian Birr */
DEFINE_INT_CURR ( "EUR" ) /* European Union Euro */
DEFINE_INT_CURR ( "FJD" ) /* Fiji Dollar */
DEFINE_INT_CURR ( "FKP" ) /* Falkland Islands Pound (Malvinas) */
DEFINE_INT_CURR ( "GBP" ) /* British Pound */
DEFINE_INT_CURR ( "GEL" ) /* Georgia Lari */
DEFINE_INT_CURR ( "GHC" ) /* Ghana Cedi */
DEFINE_INT_CURR ( "GIP" ) /* Gibraltar Pound */
DEFINE_INT_CURR ( "GMD" ) /* Gambian Dalasi */
DEFINE_INT_CURR ( "GNF" ) /* Guinea Franc */
DEFINE_INT_CURR ( "GTQ" ) /* Guatemala Quetzal */
DEFINE_INT_CURR ( "GYD" ) /* Guyana Dollar */
DEFINE_INT_CURR ( "HKD" ) /* Hong Kong Dollar */
DEFINE_INT_CURR ( "HNL" ) /* Honduras Lempira */
DEFINE_INT_CURR ( "HRK" ) /* Croatia Kuna */
DEFINE_INT_CURR ( "HTG" ) /* Haiti Gourde */
DEFINE_INT_CURR ( "HUF" ) /* Hungarian Forint */
DEFINE_INT_CURR ( "IDR" ) /* Indonesia Rupiah */
DEFINE_INT_CURR ( "ILS" ) /* Israeli Shekel */
DEFINE_INT_CURR ( "IMP" ) /* Isle of Man Pounds */
DEFINE_INT_CURR ( "INR" ) /* Indian Rupee (Bhutan) */
DEFINE_INT_CURR ( "IQD" ) /* Iraqi Dinar */
DEFINE_INT_CURR ( "IRR" ) /* Iranian Rial */
DEFINE_INT_CURR ( "ISK" ) /* Iceland Krona */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "JEP" ) /* Jersey Pound */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "JMD" ) /* Jamaican Dollar */
DEFINE_INT_CURR ( "JOD" ) /* Jordanian Dinar */
DEFINE_INT_CURR ( "JPY" ) /* Japanese Yen */
DEFINE_INT_CURR ( "KES" ) /* Kenyan Shilling */
DEFINE_INT_CURR ( "KGS" ) /* Kyrgyzstan Som */
DEFINE_INT_CURR ( "KHR" ) /* Democratic Kampuchea Riel */
DEFINE_INT_CURR ( "KMF" ) /* Comoros Franc */
DEFINE_INT_CURR ( "KPW" ) /* Democratic People's of Korea Won */
DEFINE_INT_CURR ( "KRW" ) /* Republic of Korea Won */
DEFINE_INT_CURR ( "KWD" ) /* Kuwaiti Dinar */
DEFINE_INT_CURR ( "KYD" ) /* Cayman Islands */
DEFINE_INT_CURR ( "KZT" ) /* Kazakhstan Tenge */
DEFINE_INT_CURR ( "LAK" ) /* Lao People's Democratic Republic New Kip */
DEFINE_INT_CURR ( "LBP" ) /* Lebanese Pound */
DEFINE_INT_CURR ( "LKR" ) /* Sri Lankan Rupee */
DEFINE_INT_CURR ( "LRD" ) /* Liberian Dollar */
DEFINE_INT_CURR ( "LSL" ) /* Lesotho Maloti */
DEFINE_INT_CURR ( "LTL" ) /* Lithuanian Litas */
DEFINE_INT_CURR ( "LVL" ) /* Latvia Lat */
DEFINE_INT_CURR ( "LYD" ) /* Libyan Arab Jamahiriya Dinar */
DEFINE_INT_CURR ( "MAD" ) /* Moroccan Dirham */
DEFINE_INT_CURR ( "MDL" ) /* Moldova Lei */
2005-09-24 03:09:00 +08:00
DEFINE_INT_CURR ( "MGA" ) /* Madagasy Ariary */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "MKD" ) /* Macedonia Denar */
DEFINE_INT_CURR ( "MMK" ) /* Myanmar Kyat */
DEFINE_INT_CURR ( "MNT" ) /* Mongolia Tugrik */
DEFINE_INT_CURR ( "MOP" ) /* Macau Pataca */
DEFINE_INT_CURR ( "MRO" ) /* Mauritania Ouguiya */
DEFINE_INT_CURR ( "MTL" ) /* Maltese Lira */
DEFINE_INT_CURR ( "MUR" ) /* Mauritius Rupee */
DEFINE_INT_CURR ( "MVR" ) /* Maldives Rupee */
DEFINE_INT_CURR ( "MWK" ) /* Malawi Kwacha */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "MXN" ) /* Mexican Peso */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "MYR" ) /* Malaysian Ringgit */
DEFINE_INT_CURR ( "MZM" ) /* Mozambique Metical */
DEFINE_INT_CURR ( "NAD" ) /* Namibia Dollar */
DEFINE_INT_CURR ( "NGN" ) /* Nigeria Naira */
DEFINE_INT_CURR ( "NIO" ) /* Nicaragua Cordoba Oro */
DEFINE_INT_CURR ( "NOK" ) /* Norwegian Krone */
DEFINE_INT_CURR ( "NPR" ) /* Nepalese Rupee */
DEFINE_INT_CURR ( "NZD" ) /* New Zealand Dollar */
DEFINE_INT_CURR ( "OMR" ) /* Omani Rial */
DEFINE_INT_CURR ( "PAB" ) /* Panamaniam Balboa */
DEFINE_INT_CURR ( "PEN" ) /* Peruvian New Sol */
DEFINE_INT_CURR ( "PGK" ) /* Papau New Guinea Kina */
DEFINE_INT_CURR ( "PHP" ) /* Philippines Peso */
DEFINE_INT_CURR ( "PKR" ) /* Pakistan Rupee */
DEFINE_INT_CURR ( "PLN" ) /* Polish Zloty */
DEFINE_INT_CURR ( "PYG" ) /* Paraguay Guarani */
DEFINE_INT_CURR ( "QAR" ) /* Qatar Rial */
DEFINE_INT_CURR ( "ROL" ) /* Romanian Leu */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "RON" ) /* Romanian New Leu */
2007-02-17 15:56:58 +08:00
DEFINE_INT_CURR ( "RSD" ) /* Serbian Dinars */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "RUB" ) /* Russian Ruble */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "RWF" ) /* Rwanda Franc */
DEFINE_INT_CURR ( "SAR" ) /* Saudi Arabia Riyal */
DEFINE_INT_CURR ( "SBD" ) /* Solomon Islands Dollar */
DEFINE_INT_CURR ( "SCR" ) /* Seychelles Rupee */
DEFINE_INT_CURR ( "SDD" ) /* Sudanese Dinars */
DEFINE_INT_CURR ( "SEK" ) /* Swedish Krona */
DEFINE_INT_CURR ( "SGD" ) /* Singapore Dollar */
DEFINE_INT_CURR ( "SHP" ) /* St. Helena Pound */
DEFINE_INT_CURR ( "SIT" ) /* Slovenian Tolar */
DEFINE_INT_CURR ( "SKK" ) /* Slovakian Koruna */
DEFINE_INT_CURR ( "SLL" ) /* Sierra Leone Leone */
DEFINE_INT_CURR ( "SOS" ) /* Somalia Schilling */
DEFINE_INT_CURR ( "SPL" ) /* Seborga Luigini */
DEFINE_INT_CURR ( "SRG" ) /* Suriname Guilder */
DEFINE_INT_CURR ( "STD" ) /* Sao Tome and Principe Dobra */
DEFINE_INT_CURR ( "SVC" ) /* El Salvador Colon */
DEFINE_INT_CURR ( "SYP" ) /* Syrian Arab Republic Pound */
DEFINE_INT_CURR ( "SZL" ) /* Swaziland Lilangeni */
DEFINE_INT_CURR ( "THB" ) /* Thai Baht */
2006-04-26 15:21:15 +08:00
DEFINE_INT_CURR ( "TJS" ) /* Tajikistani Somoni */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "TMM" ) /* Turkmenistan Manet */
DEFINE_INT_CURR ( "TND" ) /* Tunisian Dinar */
DEFINE_INT_CURR ( "TOP" ) /* Tonga Pa'Anga */
2005-09-23 01:31:29 +08:00
DEFINE_INT_CURR ( "TRY" ) /* New Turkish Lira */
2003-11-26 15:40:32 +08:00
DEFINE_INT_CURR ( "TTD" ) /* Trinidad and Tobago */
DEFINE_INT_CURR ( "TVD" ) /* Tuvalu Dollars */
DEFINE_INT_CURR ( "TWD" ) /* Taiwan, Province of China Dollar */
DEFINE_INT_CURR ( "TZS" ) /* United Republic of Tanzania Shilling */
DEFINE_INT_CURR ( "UAH" ) /* Ukraine Hryvna */
DEFINE_INT_CURR ( "UGX" ) /* Ugandan Shilling */
DEFINE_INT_CURR ( "USD" ) /* United States Dollar */
DEFINE_INT_CURR ( "UYU" ) /* Uruguay Peso Uruguayo */
DEFINE_INT_CURR ( "UZS" ) /* Uzbekistan Sum */
DEFINE_INT_CURR ( "VEB" ) /* Venezuelan Bolivar */
DEFINE_INT_CURR ( "VND" ) /* Viet Nam Dong */
DEFINE_INT_CURR ( "VUV" ) /* Vanuatu Vatu */
DEFINE_INT_CURR ( "WST" ) /* Samoa Tala */
DEFINE_INT_CURR ( "XAF" ) /* Central African Franc (United Republic of Cameroon, Central African Republic, Chad, Congo, Gabon) */
DEFINE_INT_CURR ( "XCD" ) /* East Caribbean Dollar (Antiqua, Dominica, Grenada, Montserrat, St. Kitts-Nevis-Anguilla, Saint Lucia, Saint Vincent and the Grenadines) */
DEFINE_INT_CURR ( "XDR" ) /* International Monetary Fund */
DEFINE_INT_CURR ( "XOF" ) /* West African Franc (Benin, Ivory Coast, Niger, Senegal, Togo, Upper Volta) */
DEFINE_INT_CURR ( "XPF" ) /* French polynesia, New Caledonia, Wallis and Futuna Islands */
DEFINE_INT_CURR ( "YER" ) /* Yemeni Rial */
DEFINE_INT_CURR ( "ZAR" ) /* South Africa Rand (Lesotho, Namibia) */
DEFINE_INT_CURR ( "ZMK" ) /* Zambian Kwacha */
DEFINE_INT_CURR ( "ZWD" ) /* Zimbabwe Dollar */