summaryrefslogtreecommitdiffstats
path: root/newlib/libc
Commit message (Collapse)AuthorAgeFilesLines
* 2009-04-22 Anthony Green <green@moxielogic.com>Jeff Johnston2009-04-2210-14/+5513
| | | | | | | | | | | | | | * configure.host: Add moxie support. * libc/machine/configure.in: Add moxie support. * libc/machine/configure: Rebuilt. * libc/machine/moxie/aclocal.m4: New file. * libc/machine/moxie/configure: New file. * libc/machine/moxie/configure.in: New file. * libc/machine/moxie/Makefile.am: New file. * libc/machine/moxie/Makefile.in: New file. * libc/machine/moxie/setjmp.S: New file. * libc/include/machine/setjmp.h (_JBLEN): Define for moxie. * libc/include/machine/ieeefp.h: Add moxie support.
* * libc/stdio/local.h (__chclass, __state_table, __action_table):Corinna Vinschen2009-04-222-5/+5
| | | | | Add extern to the declarations. * libc/stdlib/local.h (__iso_8859_conv, __cp_conv): Likewise.
* * libc/ctype/ctype_.c (_CTYPE_DATA_128_255): Rename fromCorinna Vinschen2009-04-213-190/+338
| | | | | | | | | _CTYPE_DATA_128_256. * libc/ctype/ctype_cp.h: Split off all character class values for character 255 from the rest of the definitions. (__ctype_cp): Use the new definitions. Make sure that the table always contains 0 for EOF (-1). * libc/ctype/ctype_iso.h: Ditto.
* 2009-04-21 Sandra Loosemore <sandra@codesourcery.com>Jeff Johnston2009-04-211-0/+11
| | | | | * libc/reent/impure.c (__sf_fake_stdin, __sf_fake_stdout) (__sf_fake_stderr): Declare locally with weak attribute.
* 2009-04-21 Mark Mitchell <mark@codesourcery.com>Jeff Johnston2009-04-212-25/+36
| | | | | | | | | | | | | | * libc/include/_ansi.h: Move C++ defines to top of file. (_NOTHROW): New macro. (_EXFUN_NOTHROW): Likewise. * libc/include/stdlib.h (calloc): Declare with _EXFUN_NOTHROW. (free): Likewise. (malloc): Likewise. (realloc): Likewise. (_malloc_r): Likewise. (_callor_r): Likewise. (_free_r): Likewise. (_realloc_r): Likewise.
* 2009-04-20 Jeff johnston <jjohnstn@redhat.com>Jeff Johnston2009-04-202-7/+7
| | | | | | | * libc/include/math.h: Change _LDBL_EQ_DBL flag usage to be _HAVE_LDBL_MATH. * libc/include/stdlib.h: Change _LDBL_EQ_DBL flag usage to be _HAVE_LDBL_STDLIB.
* 2009-04-17 Jeff johnston <jjohnstn@redhat.com>Jeff Johnston2009-04-174-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/machine/ieeefp.h (_LDBL_EQ_DBL): Remove. * libc/stdlib/local.h (_LDBL_EQ_DBL): Add. * libc/stdlib/strtold.c: Include local.h. * libc/stdlib/wcstold.c: Likewise. * libm/common/atanl.c: Likewise. * libm/common/cosl.c: Likewise. * libm/common/sinl.c: Likewise. * libm/common/modfl.c: Likewise. * libm/common/frexpl.c: Likewise. * libm/common/tanhl.c: Likewise. * libm/common/tanl.c: Likewise. * libm/common/expm1l.c: Likewise. * libm/common/log1pl.c: Likewise. * libm/common/ceill.c: Likewise. * libm/common/fabsl.c: Likewise. * libm/common/floorl.c: Likewise. * libm/common/acosl.c: Likewise. * libm/common/asinl.c: Likewise. * libm/common/atan2l.c: Likewise. * libm/common/coshl.c: Likewise. * libm/common/expl.c: Likewise. * libm/common/fmodl.c: Likewise. * libm/common/hypotl.c: Likewise. * libm/common/ldexpl.c: Likewise. * libm/common/log10l.c: Likewise. * libm/common/logl.c: Likewise. * libm/common/powl.c: Likewise. * libm/common/sqrtl.c: Likewise. * libm/common/copysignl.c: Likewise. * libm/common/ilogbl.c: Likewise. * libm/common/nanl.c: Likewise. * libm/common/cbrtl.c: Likewise. * libm/common/asinhl.c: Likewise. * libm/common/nextafterl.c: Likewise. * libm/common/rintl.c: Likewise. * libm/common/scalbnl.c: Likewise. * libm/common/exp2l.c: Likewise. * libm/common/fdiml.c: Likewise. * libm/common/fmal.c: Likewise. * libm/common/fmaxl.c: Likewise. * libm/common/fminl.c: Likewise. * libm/common/lrintl.c: Likewise. * libm/common/lroundl.c: Likewise. * libm/common/nearbyintl.c: Likewise. * libm/common/remquol.c: Likewise. * libm/common/roundl.c: Likewise. * libm/common/scalblnl.c: Likewise. * libm/common/truncl.c: Likewise. * libm/common/acoshl.c: Likewise. * libm/common/atanhl.c: Likewise. * libm/common/erfcl.c: Likewise. * libm/common/erfl.c: Likewise. * libm/common/lgammal.c: Likewise. * libm/common/remainderl.c: Likewise. * libm/common/tgammal.c: Likewise. * libm/common/sinhl.c: Likewise. * libm/common/llroundl.c: Likewise. * libm/common/llrintl.c: Likewise. * libm/common/local.h: New file with _LDBL_EQ_DBL macro.
* 2009-04-17 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-172-3/+4
| | | | | | | | * libc/include/machine/ieeefp.h: _LDBL_EQ_DBL check fixed. * libc/include/math.h (llrintl): Declare. * libm/common/llrintl.c: New File. * libm/common/Makefile.am: New File added. * libm/common/Makefile.in: Regenerate.
* 2009-04-17 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-172-65/+48
| | | | | | * libc/configure.in: Change AC_TRY_COMPILE to AC_TRY_COMMAND to avoid executable test. * libc/configure: Regenerate.
* 2009-04-17 Jeff johnston <jjohnstn@redhat.com>Jeff Johnston2009-04-171-6/+2
| | | | | | | | | | * configure.in: Remove _HAVE_ARRAY_ALIASING check. * configure: Regenerated. * newlib.hin: Remove _HAVE_ARRAY_ALIASING flag. * libc/ctype/ctype_.c: Do not check for _HAVE_ARRAY_ALIASING. * libm/configure.in: Change AC_TRY_COMPILE to AC_TRY_COMMAND to avoid executable test. * libm/configure: Regenerated.
* 2009-04-16 Jeff johnston <jjohnstn@redhat.com>Jeff Johnston2009-04-161-2/+2
| | | | | * libc/misc/init.c (__libc_fini_array): Process fini_array in reverse order as compliant with the ELF specification.
* 2009-04-16 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-163-4/+55
| | | | | | * libc/machine/spu/Makefile.am: Add new File. * libc/machine/spu/Makefile.in: Regenerate. * libc/machine/spu/fdopen.c: New file.
* 2009-04-16 Hans-Peter Nilsson <hp@axis.com>Jeff Johnston2009-04-161-0/+6
| | | | * libc/include/stdint.h (INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX): Define.
* 2009-04-16 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-169-97/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libm/libm.texinfo: Add long double function support chapter. * libc/include/machine/ieeefp.h: Add _LDBL_EQ_DBL define. * libc/include/stdlib.h: Include <machine/ieeefp.h>. (strtold, wcstold): Declare. * libc/stdlib/strtold.c: New File. * libc/stdlib/wcstold.c: Likewise. * libc/configure.in: Add long double check. * libc/configure: Regenerate. * libc/stdlib/Makefile.am: Add strtold.c and wcstold.c. * libc/stdlib/Makefile.in: Regenerate. * libc/include/math.h (atanl, cosl, sinl, tanl, tanhl): Declare. (frexpl, modfl, ceill, fabsl, floorl, log1pl, expm1l, acosl): Ditto. (asinl, atan2l, coshl, sinhl, expl, ldexpl, logl, log10l, powl): Ditto. (sqrtl, fmodl, hypotl, copysignl, nanl, ilogbl, asinhl, cbrt): Ditto. (nextafterl, rintl, scalbnl, exp2l, scalblnl, tgammal): Ditto. (nearbyintl, lrintl, llrintl, roundl, lroundl, llround): Ditto. (llroundl, truncl, remquol, fdiml, fmaxl, fminl, fmal, acoshl): Ditto. (atanhl, remainderl, lgammal, erfl, erfcl): Ditto. * libm/common/atanl.c: New File. * libm/common/cosl.c: Likewise. * libm/common/sinl.c: Likewise. * libm/common/modfl.c: Likewise. * libm/common/frexpl.c: Likewise. * libm/common/tanhl.c: Likewise. * libm/common/tanl.c: Likewise. * libm/common/expm1l.c: Likewise. * libm/common/log1pl.c: Likewise. * libm/common/ceill.c: Likewise. * libm/common/fabsl.c: Likewise. * libm/common/floorl.c: Likewise. * libm/common/acosl.c: Likewise. * libm/common/asinl.c: Likewise. * libm/common/atan2l.c: Likewise. * libm/common/coshl.c: Likewise. * libm/common/expl.c: Likewise. * libm/common/fmodl.c: Likewise. * libm/common/hypotl.c: Likewise. * libm/common/ldexpl.c: Likewise. * libm/common/log10l.c: Likewise. * libm/common/logl.c: Likewise. * libm/common/powl.c: Likewise. * libm/common/sqrtl.c: Likewise. * libm/common/copysignl.c: Likewise. * libm/common/ilogbl.c: Likewise. * libm/common/nanl.c: Likewise. * libm/common/cbrtl.c: Likewise. * libm/common/asinhl.c: Likewise. * libm/common/nextafterl.c: Likewise. * libm/common/rintl.c: Likewise. * libm/common/scalbnl.c: Likewise. * libm/common/exp2l.c: Likewise. * libm/common/fdiml.c: Likewise. * libm/common/fmal.c: Likewise. * libm/common/fmaxl.c: Likewise. * libm/common/fminl.c: Likewise. * libm/common/lrintl.c: Likewise. * libm/common/lroundl.c: Likewise. * libm/common/nearbyintl.c: Likewise. * libm/common/remquol.c: Likewise. * libm/common/roundl.c: Likewise. * libm/common/scalblnl.c: Likewise. * libm/common/truncl.c: Likewise. * libm/common/acoshl.c: Likewise. * libm/common/atanhl.c: Likewise. * libm/common/erfcl.c: Likewise. * libm/common/erfl.c: Likewise. * libm/common/lgammal.c: Likewise. * libm/common/remainderl.c: Likewise. * libm/common/tgammal.c: Likewise. * libm/common/sinhl.c: Likewise. * libm/common/llroundl.c: Likewise. * libm/configure.in: Add long double check. * libm/configure: Regenerate. * libm/common/Makefile.am: Add new files. * libm/common/Makefile.in: Regenerate.
* * libc/ctype/ctype_.c (_CTYPE_DATA_0_127): Remove _B flag from TAB.Corinna Vinschen2009-04-097-92/+94
| | | | | | | | | | | | | | | * libc/ctype/ctype_cp.h: Mark non-cased letters in tables for codepages 720, 862, 874, 1255, and 1256 to _U|_L. Fix a couple of incorrect class mappings. * libc/ctype/ctype_iso.h: Mark non-cased letters in ISO-8859 tables 6, 8, and 11 to _U|_L. Fix a couple of incorrect class mappings. * libc/ctype/isblank.c (isblank): Special case TAB. * libc/ctype/islower.c (islower): Check explicitely for _L flag only in (_U|_L). * libc/ctype/isupper.c (isupper): Ditto, but check for _U flag. * libc/include/ctype.h (islower): Same in macro. (isupper): Ditto. (isblank): Special case TAB. Redefine macro for GCC only.
* * libc/stdlib/local.h (__mbtowc): Declare extern.Corinna Vinschen2009-04-091-3/+4
| | | | (__wctomb): Ditto.
* * libc/stdlib/mbctype.h (_iseucjp1): Like _iseucjp, but alsoCorinna Vinschen2009-04-093-5/+39
| | | | | | | | | recognizes 0x8e and 0x8f lead bytes. (_iseucjp2): Rename from _iseucjp. * libc/stdlib/mbtowc_r.c (__eucjp_mbtowc): Convert JIS-X-0212 triplebyte sequences as well. * libc/stdlib/wctomb_r.c (__eucjp_wctomb): Convert to JIS-X-0212 triplebyte sequences as well.
* 2009-04-06 Mike Burgess <wizardsguild@earthlink.net>Jeff Johnston2009-04-061-10/+9
| | | | * libc/string/strncasecmp.c: Optimized rewrite.
* 2009-04-06 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-062-5/+5
| | | | | * libc/include/sys/features.h: Undefine _POSIX_TIMERS for spu. * libc/include/machine/time.h (nanosleep): Declare.
* * libc/locale/locale.c (loadlocale): Set mbc_max to 3 for EUCJP.Corinna Vinschen2009-04-061-1/+1
|
* * libc/stdlib/wcstombs.c: Fix datatypes in documentation.Corinna Vinschen2009-04-041-3/+3
|
* * libc/include/stdio.h (_ELIDABLE_INLINE): Move definition from here...Corinna Vinschen2009-04-042-22/+22
| | | | * libc/include/_ansi.h (_ELIDABLE_INLINE): ..to here.
* 2009-04-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>Jeff Johnston2009-04-031-0/+2
| | | | | * libc/include/stdio.h [__SCLE] (__sgetc_r): Prototype before define to avoid a warning with -Wmissing-prototypes.
* 2009-04-03 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-031-2/+7
| | | | * libc/machine/spu/mmap_ea.c (mmap_ea): Check length argument.
* 2009-04-03 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-031-3/+10
| | | | | * libc/machine/spu/sys/linux_syscalls.h: include <sys/types.h> (linux_getpid, linux_gettid): Declare.
* 2009-04-03 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-031-8/+29
| | | | | * libc/machine/spu/spu-gmon.c: Tweaks to support simultaneous SPU profiling.
* 2009-04-03 Ken Werner <ken.werner@de.ibm.com>Jeff Johnston2009-04-031-3/+3
| | | | | * libc/include/math.h: Remove duplicate copysign prototype. Fix __math_68881 define typo. Guard functions of the rint family.
* * libc/ctype/ctype_c.c: Move inclusion of ctype_iso.h andCorinna Vinschen2009-04-022-11/+35
| | | | | | | | | ctype_cp.h out of ALLOW_NEGATIVE_CTYPE_INDEX case. (__ctype_ptr__): Constify in !_MB_CAPABLE case. Otherwise, de-constify in !ALLOW_NEGATIVE_CTYPE_INDEX case, too. Add comment. (__set_ctype): Set __ctype_ptr__ pointer according to definition of ALLOW_NEGATIVE_CTYPE_INDEX. * libc/include/ctype.h (__ctype_ptr__): Constify in !_MB_CAPABLE case.
* * libc/ctype/Makefile.am: Remove _tolower.c and _toupper.cCorinna Vinschen2009-03-3112-91/+1106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | source files. Add a dependency rule for ctype_o to note changes in ctype_iso.h and ctype_cp.h. * libc/ctype/Makefile.in: Regenerate. * libc/ctype/_tolower.c: Remove file. * libc/ctype/_toupper.c: Remove file. * libc/ctype/ctype_.c: Make sure ALLOW_NEGATIVE_CTYPE_INDEX is always defined on Cygwin. (_ctype_b): Don't make `static const' on Cygwin. (ctype_iso.h): Include if _MB_EXTENDED_CHARSETS_ISO is set. (ctype_cp.h): Include if _MB_EXTENDED_CHARSETS_WINDOWS is set. (__ctype_ptr): Drop definition. (__ctype_ptr__): De-constify. Mark as __EXPORT symbol. (_ctype_): Add Cygwin-specifc asm define. (__set_ctype): New function to set __ctype_ptr__ according to current charset. * libc/ctype/ctype_cp.h: New file containing Windows codepage specific character class tables. * libc/ctype/ctype_iso.h: New file containing ISO-8859-x specific character class tables. * libc/ctype/tolower.c (tolower): Reimplement to support any singlebyte charset if one of the extended charsets is enabled. * libc/ctype/toupper.c (toupper): Ditto. * libc/include/ctype.h (_tolower): Define as macro per POSIX. (_toupper): Ditto. (__ctype_ptr__): De-constify. (toupper): Disable macro on systems supporting extended charsets. (tolower): Ditto. * libc/include/sys/config.h (__EXPORT): Define empty if not defined. * libc/locale/locale.c (__mb_cur_max): Mark as __EXPORT symbol. (__set_ctype): Declare unconditionally. (loadlocale): Remove __CYGWIN__ guard around __set_ctype call.
* * libc/locale/locale.c (loadlocale): Revert to charset "GBK" insteadCorinna Vinschen2009-03-261-2/+2
| | | | of "GB2312". Fix documentation accordingly.
* Revert erroneously checked in files.Corinna Vinschen2009-03-263-36/+23
|
* * libc/ctype/ctype_.c (_CTYPE_DATA_0_127): Mark TAB as blank character.Corinna Vinschen2009-03-263-2/+6
| | | | | | * libc/ctype/isblank.c: Replace hardcoded test with test for having _B marker in ctype array. * libc/include/ctype.h (isblank): Add macro.
* 2009-03-25 Craig Howland <howland@LGSInnovations.com>Jeff Johnston2009-03-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libc/include/math.h: (llround, llroundf): Declare. * libm/common/s_llround.c: New file, implementing llround(). * libm/common/sf_llround.c: New file, implementing llroundf(). * libm/common/sf_lround.c: Remove spurious cast in _DOUBLE_IS_32BITS version of function. * libm/common/sf_lrint.c: Ditto. * libm/common/sf_logb.c: Corrected return for subnormal argument by replacing existing function with a version created from sf_ilogb.c. * libm/common/s_logb.c: Ditto, except starting point s_ilogb.c. Also added documentation for logb() and logbf(). * libm/common/s_signbit.c: Add signbit() documentation. * libm/common/s_log2.c: Update return values to match what w_log2.c has, since log2 uses log(); add note about being derived instead of direct. * libm/common/sf_fma.c: Add casts to attempt to get correct results, as well as comments pointing out problems with the implementation. * libm/common/s_fma.c: Add fma() and fmaf() documentation. * libm/common/sf_remquo.c: Incorrect quotient returns for large values corrected by discarding existing function and replacing with Sun verion, with some enhancements. * libm/common/s_remquo.c: Ditto. Add remquo() and remquof() documentation. * libm/common/s_fmax.c: Add fmax() and fmaxf() documentation. * libm/common/s_fmin.c: Add fmin() and fminf() documentation. * libm/common/s_fdim.c: Return NAN for NAN arg, add fdim() and fdimf() documentation. * libm/common/sf_fdim.c: Return NAN for NAN arg, HUGE_VALF for inf arg. * libm/common/s_trunc.c: Add trunc() and truncf() documentation. * libm/common/s_rint.c: Add rint() and rintf() documentation. * libm/common/s_round.c: Add round() and roundf() documentation. * libm/common/s_scalbn.c: Add scalbln() and scalblnf() documentation. * libm/common/s_infinity.c: Add infinity() and infinityf() documentation. * libm/common/s_lround.c: Add lround(), lroundf(), llround(), and llroundf() documentation. * libm/common/s_lrint.c: Add lrint(), lrintf(), llrint(), and llrintf() documentation. * libm/common/isgreater.c: New file for documenting math.h function-like macros isgreater(), isgreaterequal(), isless(), islessequal(), islessgreater(), and isunordered(). * libm/common/s_isnan.c: Add documentation for function-like macros fpclassify(), isfinite(), isinf(), isnan(), and isnormal(). * libm/common/s_nearbyint.c: Add nearbyint() and nearbyintf() documentation. * libm/common/Makefile.am: Add s_llround.c (src); sf_llround.c (fsrc); s_fdim.def, s_fma.def, s_fmax.def, s_fmin.def, s_logb.def, s_lrint.def, s_lround.def, s_nearbyint.def, s_remquo.def, s_rint.def, s_round.def, s_signbit.def, s_trunc.def, and isgreater.def (chobj); re-name all existing chew files (chobj) to match source file base names (put in underscores), delete all special targets for chew files (leaving all to be generated by rule). * libm/common/Makefile.in: regenerate. * libm/math/w_exp2.c: Add "base 2" to documentation description (and delete TRAD_SYNOPSIS). * libm/math/w_gamma.c: Add tgamma() and tgammaf() documentation, along with some history behind the function names. * libm/math/math.tex: Add includes for newly-added documentation (see .def additions to common/Makefile.am and math/Makefile.am in this ChangeLog list), adjusted existing .def file names to match source file base names (added underscores); add mention of HUGE_VALF; rename "Version of library" section to "Error Handling" and add some text about floating-point exception; added section "Standards Compliance And Portability". * libm/math/Makefile.am: Add w_exp2.def (chobj); re-name all existing chew files (chobj) to match source file base names, delete all special targets for chew files (leaving all to be generated by rule). * libm/math/Makefile.in: regenerated * doc/makedoc.c: Change silent ignoring of commands < 5 characters to a failure when reading macro file for commands < 4 characters; add -v (verbose) option for printing some debugging information; get rid of spurious translation of "@*" to "*" (no source files used @*, so no existing doc pages were affected); clean up some compiler warnings. * doc/doc.str: add BUGS and SEEALSO sections (to match texi2pod.pl which has them); Remove ITEM command (redundant with makedoc built-in "o", not used in any present source file so nothing is lost, anyway). * HOWTO: New file to hold information for maintainers regarding how to do things. Initial sections on documentation and ELIX levels.
* 2009-03-25 Richard Earnshaw <rearnsha@arm.com>Jeff Johnston2009-03-251-6/+28
| | | | | * libc/machine/arm/strcmp.c (strcmp_unaligned): Correctly detect the nul-byte in a big-endian string.
* 2009-03-25 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2009-03-253-15/+19
| | | | | | | * libc/string/wcsdup.c: Fix documentation error. * libc/string/Makefile.am: Fix CHEWOUT files to contain wcsdup.def rather than wcsdup. * libc/string/Makefile.in: Regenerated.
* * libc/locale/locale.c (loadlocale): Only change __wctomb and __mbtowcCorinna Vinschen2009-03-251-24/+31
| | | | pointers if category is LC_CTYPE.
* * libc/locale/locale.c (loadlocale): Rename charset "GBK" toCorinna Vinschen2009-03-251-3/+3
| | | | "GB2312". Fix documentation accordingly.
* * libc/locale/locale.c (loadlocale): Rename charset "CP949" toCorinna Vinschen2009-03-241-24/+30
| | | | "eucKR". Fix documentation accordingly.
* * libc/locale/locale.c (loadlocale): Allow charset starting with 'e'Corinna Vinschen2009-03-241-0/+1
| | | | for "eucJP" charset support.
* 2009-03-24 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2009-03-241-1/+1
| | | | | * libc/include/sys/errno.h: Move EFTYPE to general usage because it is used in libc/search.
* * libc/ctype/iswalpha.c: Handle all wchar_t as unicode onCorinna Vinschen2009-03-2421-2196/+3299
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _MB_CAPABLE systems. * libc/ctype/iswblank.c: Ditto. * libc/ctype/iswcntrl.c: Ditto. * libc/ctype/iswprint.c: Ditto. * libc/ctype/iswpunct.c: Ditto. * libc/ctype/iswspace.c: Ditto. * libc/ctype/jp2uc.c (__jp2uc): On Cygwin, just return c. Explain why. * libc/ctype/towlower.c: Ditto. * libc/ctype/towupper.c: Ditto. * libc/include/sys/config.h: Define _MB_EXTENDED_CHARSETS_ISO and _MB_EXTENDED_CHARSETS_WINDOWS if _MB_EXTENDED_CHARSETS_ALL is defined. Define _MB_EXTENDED_CHARSETS_ALL on Cygwin only for now. * libc/include/sys/reent.h (struct _reent): Mark _current_category and _current_locale as unused. * libc/locale/locale.c: Add new charset support to documentation. Include ../stdio/local.h from here. (lc_ctype_charset): Set to "ASCII" by default. (lc_message_charset): Ditto. (_setlocale_r): Don't set _current_category and _current_locale. (loadlocale): Add Cygwin codepage support. On _MB_CAPABLE systems, set __mbtowc and __wctomb function pointers to function corresponding with current charset. Don't allow non-existant ISO-8859-12 charset. Add support for Windows singlebyte codepages. On Cygwin, add support for GBK, CP949, and BIG5. On Cygwin, call __set_ctype() in case the catorgy is LC_CTYPE. Don't set _current_category and _current_locale. * libc/stdlib/Makefile.am (GENERAL_SOURCES): Add sb_charsets.c. * libc/stdlib/Makefile.in: Regenerate. * libc/stdlib/local.h: Add prototype for __locale_charset. Add prototypes for __mbtowc and __wctomb pointers. Add prototypes for charset-specific _wctomb_r and _mbtowc_r functions. Declare tables and functions from sb_charsets.c. * libc/stdlib/mbtowc_r.c (__mbtowc): Define. Set to __ascii_mbtowc by default. (_mbtowc_r): Just call __mbtowc from here. (__ascii_mbtowc): New function. (__iso_mbtowc): New function. (__cp_mbtowc): New function. (__utf8_mbtowc): New function. (__sjis_mbtowc): New function. Disable on Cygwin. (__eucjp_mbtowc): New function. Disable on Cygwin. (__jis_mbtowc): New function. Disable on Cygwin. * libc/stdlib/sb_charsets.c: New file, adding singlebyte to UTF conversion tables for all ISO and CP charsets. (__iso_8859_index): New function. (__cp_index): New function. * libc/stdlib/wctomb_r.c (__wctomb): Define. Set to __ascii_wctomb by default. (_wctomb_r): Just call __wctomb from here. (__ascii_wctomb): New function. (__utf8_wctomb): New function. (__sjis_wctomb): New function. Disable on Cygwin. (__eucjp_wctomb): New function. Disable on Cygwin. (__jis_wctomb): New function. Disable on Cygwin. (__iso_wctomb): New function. (__cp_wctomb): New function.
* 2009-03-23 Richard Earnshaw <rearnsha@arm.com>Jeff Johnston2009-03-231-1/+20
| | | | * libc/machine/arm/strcmp.c (strcmp): Treat char as unsigned.
* * libc/locale/locale.c (loadlocale): Fix typo in language andCorinna Vinschen2009-03-231-4/+4
| | | | territory evaluation.
* 2009-03-20 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2009-03-202-3/+33
| | | | | | | * libc/include/sys/errno.h: Protect various non-standard errnos with either __LINUX_ERRNO_EXTENSIONS__ or __CYGWIN__. * libc/include/sys/config.h[__CYGWIN__]: Define __LINUX_ERRNO_EXTENSIONS__.
* * libc/stdlib/mbtowc_r.c (_mbtowc_r): Return EILSEQ in case of anCorinna Vinschen2009-03-192-16/+61
| | | | | | | | invalid character sequence. * libc/stdlib/mbtowc_r.c (_mbtowc_r): Fix compiler warning due to missing declaration of __locale_charset. * libc/stdlib/wctomb_r.c (_wctomb_r): Ditto.
* 2009-03-18 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>Jeff Johnston2009-03-181-0/+2
| | | | | | | | * libm/common/s_log2.c: New file. * libm/common/sf_log2.c: Ditto. * libm/common/Makefile.am: Add s_log2.c and sf_log2.c. * libm/common/Makefile.in: Regenerated. * libc/include/math.h: Add log2 and log2f function prototypes.
* * libc/stdlib/mbstowcs_r.c (_mbstowcs_r): Handle NULL destinationCorinna Vinschen2009-03-171-8/+12
| | | | string correctly.
* 2009-03-16 Mark Mitchell <mark@codesourcery.com>Jeff Johnston2009-03-163-17/+20
| | | | | | | | | | | * libc/machine/arm/strlen.c (strlen): Fix defect in Thumb-2 mode. 2009-03-16 Richard Earnshaw <rearnsha@arm.com> * libc/machine/arm/strlen.c (strlen): Correctly detect end-of-string. * libc/machine/arm/strcpy.c (strcpy): Likewise. * libc/machine/arm/strcmp.c (strcmp, strcmp_unaligned): Likewise.
* * libc/include/sys/errno.h (ESTRPIPE): Define.Corinna Vinschen2009-03-152-0/+9
| | | | * libc/string/strerror.c (strerror): Decode it.
* * libc/include/wchar.h (wcsdup, _wcsdup_r): Declare.Corinna Vinschen2009-03-155-6/+83
| | | | | | | * libc/string/Makefile.am: Add wcsdup.c. * libc/string/Makefile.in: Regenerate. * libc/string/strings.tex: Add wcsdup documentation reference. * libc/string/wcsdup.c: New file.