Commit Graph

1283 Commits

Author SHA1 Message Date
Jeff Johnston cbeb458829 2008-08-27 Sandra Loosemore <sandra@codesourcery.com>
* libc/libc.texinfo: Remove "LOCAL KLUGE" that prevents it
        from building pdfs.
        * libm/libm.texinfo: Likewise.
2008-08-27 21:32:02 +00:00
Jeff Johnston 2d8d8175f1 2008-08-27 Corinna Vinschen <corinna@vinschen.de>
* libc/stdlib/wcsrtombs.c (_wcsrtombs_r): Fix condition for
        accepting a converted character and continuing the loop.
2008-08-27 18:31:04 +00:00
Jeff Johnston 410c1d122d 2008-07-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/ctype.h (_ctype_): Restore for C++ backward
        compatability only.
2008-07-24 17:55:26 +00:00
Jeff Johnston fa914bf8ab 2008-07-21 Jeff Johnston <jjohnstn@redhat.com>
* libc/ctype/ctype_.c: Add new pointer __ctype_ptr__ which is one
        less than the old __ctype_ptr.
        * libc/ctype/isalnum.c: Use __ctype_ptr__.
        * libc/ctype/isalpha.c: Ditto.
        * libc/ctype/iscntrl.c: Ditto.
        * libc/ctype/isdigit.c: Ditto.
        * libc/ctype/islower.c: Ditto.
        * libc/ctype/isprint.c: Ditto.
        * libc/ctype/ispunct.c: Ditto.
        * libc/ctype/isspace.c: Ditto.
        * libc/ctype/isupper.c: Ditto.
        * libc/ctype/isxdigit.c: Ditto.
        * libc/include/ctype.h: Change ctype macros to use new __ctype_ptr__
        and add declaration of __ctype_ptr__.  Remove older ctype table pointers
        from here even though they can still work.
2008-07-21 21:28:34 +00:00
Jeff Johnston b47d83c645 2008-07-18 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/strcpy.h: Fix error in previous patch.
2008-07-18 16:36:22 +00:00
Jeff Johnston d2af9effc5 2008-07-17 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/assert.h (__ASSERT_FUNC): Define to __FUNCTION__ when
        __STDC_VERSION__ < 199901L and __GNUC__ >= 2.
2008-07-17 20:56:51 +00:00
Jeff Johnston eb19b8f95a 2008-07-17 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/strcpy.h: Pad null bytes if necessary.
2008-07-17 19:00:44 +00:00
Jeff Johnston 17bfd1e083 2008-07-08 Kenji Tanaka <tanaka.ken2@jp.panasonic.com>
* libc/machine/mn10300/memset.S: Fix bug where return value is
        incorrectly set if number of bytes set is a multiple of 4.
2008-07-08 20:36:27 +00:00
Jeff Johnston 2adedff8b3 2008-07-07 Hans-Peter Nilsson <hp@axis.com>
* libc/machine/mips/strncpy.c: Include stdint.h to get uintptr_t.
        (strncpy): Cast src to uintptr_t before checking alignment with "&".
2008-07-07 15:51:55 +00:00
Jeff Johnston 18a635e315 2008-07-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/argz/argz_count.c: Include stddef.h to get size_t.
        * libc/argz/argz_extract.c: Ditto.
        * libc/argz/argz_stringify.c: Ditto.
        * libc/search/hash.h: Ditto.
        * libc/sys/linux/include/sched.h: Ditto.
        * libc/sys/linux/sys/types.h: Ditto.
2008-07-02 18:38:45 +00:00
Jeff Johnston a9f7d0a7a7 2008-07-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/mips/strncpy.c (strncpy): Fix logic so unaligned
        source data is taken care of before loop unrolling.
2008-07-02 18:17:48 +00:00
Hans-Peter Nilsson 5592f939b4 Fix strict-aliasing issues with _strtod_r and Storeinc.
* libc/stdlib/strtod.c (_strtod_r): Change local variables aadj,
	rv, rv0 from double to type U.  Use accessor macros dval, dword0
	and dword1 for all accesses except for the ULtod call, where rv.i
	replaces the pointer cast.
	* libc/stdlib/mprec.h (U): Rename member L to i for easier re-use
	of access macros.  Tweak comment.
	Remove #ifdef'd YES_ALIAS code.
	(dword0, dword1, dval): Define in terms of uncast union member
	access.  Ditto for _DOUBLE_IS_32BITS variants.
	(Storeinc): Replace aliasing-flawed microoptimized definition with
	alternative suggested in comment.  Remove now stale comment.
2008-06-25 01:45:02 +00:00
Corinna Vinschen eb3f08acf8 * libc/include/machine/setjmp.h (_longjmp): Define as function on
Cygwin.
	(_setjmp): Ditto.
2008-06-21 18:48:45 +00:00
Eric Blake 8fa475e4b1 Per Posix, strsignal returns non-const char*.
* libc/include/string.h (strsignal): Fix return type.
2008-06-18 15:27:41 +00:00
Jeff Johnston 12b0cae7d0 2008-06-17 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/linux_syscalls.h: New file to add Linux syscall
        support.
2008-06-17 17:28:20 +00:00
Jeff Johnston 4e73927b06 2008-06-16 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/dirent.h: Add extern "C" specifier if C++.
	* libc/machine/spu/sys/sched.h: Likewise.
	* libc/machine/spu/sys/syscall.h: Likewise.
2008-06-16 18:54:17 +00:00
Jeff Johnston b243d287e4 2008-06-16 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/mk_syscalls: Provide .type and .size directives
	in generated assembler files.
	* libc/machine/spu/fprintf.S: Regenerate.
	* libc/machine/spu/fscanf.S: Regenerate.
	* libc/machine/spu/printf.S: Regenerate.
	* libc/machine/spu/scanf.S: Regenerate.
	* libc/machine/spu/snprintf.S: Regenerate.
	* libc/machine/spu/sprintf.S: Regenerate.
	* libc/machine/spu/sscanf.S: Regenerate.
	* libc/machine/spu/stack_reg_va.S (__stack_reg_va): Provide .type
	and .size directives.
	* libc/machine/spu/setjmp.S (setjmp): Likewise.
	(longjmp): Likewise.
2008-06-16 18:51:10 +00:00
Jeff Johnston 2b4c1b417f 2008-06-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/machine/_default_types.h: Fix GNUC check to
        handle 4.0 and greater.
2008-06-11 22:14:54 +00:00
Jeff Johnston a0496b5e4f 2008-06-09 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/Makefile.am: Add new files.
	* libc/machine/spu/Makefile.in: Likewise.
	* libc/machine/spu/include/spu_timer.h: New file to add timer support
        using interrupts.
	* libc/machine/spu/spu_clock_stop.c: Likewise.
	* libc/machine/spu/spu_clock_svcs.c: Likewise.
	* libc/machine/spu/spu_timer_flih.S: Likewise.
	* libc/machine/spu/spu_timer_free.c: Likewise.
	* libc/machine/spu/spu_timer_internal.h: Likewise.
	* libc/machine/spu/spu_timer_slih.c: Likewise.
	* libc/machine/spu/spu_timer_slih_reg.c: Likewise.
	* libc/machine/spu/spu_timer_stop.c: Likewise.
	* libc/machine/spu/spu_timer_svcs.c: Likewise.
2008-06-10 02:13:22 +00:00
Jeff Johnston 3da06ba822 2008-06-09 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/strcat.c: Return value fixed.
        * libc/machine/spu/strncat.c: Likewise.
2008-06-09 17:26:30 +00:00
Eric Blake 2dd1fb6ff5 Fix bug in previous patch.
* libc/machine/i386/memset.S (memset): Mask second arg correctly.
2008-05-28 14:00:39 +00:00
Jeff Johnston 676ae29038 2008-05-27 Jeff Johnston <jjohnstn@redhat.com>
* libc/string/memset.c: Fix documented prototype to remove
        erroneous const attribute on first parameter.
2008-05-27 18:44:40 +00:00
Jeff Johnston 70bff2d503 2008-05-26 Eric Blake <ebb9@byu.net>
Optimize the generic and x86 memchr.
        * libc/string/memchr.c (memchr) [!__OPTIMIZE_SIZE__]:
        Pre-align pointer so unaligned searches aren't penalized.
        * libc/machine/i386/memchr.S (memchr) [!__OPTIMIZE_SIZE__]: Word
        operations are faster than repnz byte searches.
2008-05-26 23:31:08 +00:00
Jeff Johnston a6bd72a278 2008-05-26 Eric Blake <ebb9@byu.net>
Optimize the generic and x86 memset.
        * libc/string/memset.c (memset) [!__OPTIMIZE_SIZE__]:
        Pre-align pointer so unaligned stores aren't penalized.
        * libc/machine/i386/memset.S (memset): [!__OPTIMIZE_SIZE__]:
        Pre-align pointer so unaligned stores aren't penalized.  Prefer
        8-byte over 4-byte alignment.  Reduce register pressure.
2008-05-26 23:23:15 +00:00
Jeff Johnston cae28869c1 2008-05-26 Eric Blake <ebb9@byu.net>
Optimize the generic and x86 strlen.
        * libc/string/strlen.c (strlen) [!__OPTIMIZE_SIZE__]: Pre-align
        data so unaligned searches aren't penalized.
        * libc/machine/i386/strlen.S (strlen) [!__OPTIMIZE_SIZE__]:
        Word operations are faster than repnz byte searches.
2008-05-26 22:56:14 +00:00
Corinna Vinschen 1fc3031588 * libc/include/sys/_default_fcntl.h: Include <sys/time.h> on Cygwin. 2008-05-23 12:33:50 +00:00
Jeff Johnston 3c77dcff9e 2008-05-22 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/reent.h: Add _h_errno field.
	* libc/sys/linux/libc-symbols.h: Add default stubs for new libc macros
	now used in net directory.
	* libc/sys/linux/bits/libc-lock.h: Always define _IO_MTSAFE_IO.
	* libc/sys/linux/include/hesiod.h: Add needed macros for new code
	in net directory.
	* libc/sys/linux/include/netdb.h: Ditto.
	* libc/sys/linux/include/resolv.h: Ditto.
	* libc/sys/linux/include/stdint.h: Ditto.
	* libc/sys/linux/include/arpa/nameser.h: Ditto.
	* libc/sys/linux/include/net/ethernet.h: Ditto.
	* libc/sys/linux/include/net/if_ppp.h: Ditto.
	* libc/sys/linux/include/netinet/if_ether.h: Ditto.
	* libc/sys/linux/machine/i386/get_clockfreq.c: Remove static memmem.
	* libc/sys/linux/machine/i386/include/endian.h: Protect macros with
	flags to avoid duplicate definition.
	* libc/sys/linux/machine/i386/include/param.h: Ditto.
	* libc/sys/linux/net/Makefile.am: Modified to account for removed and
	added files.
	* libc/sys/linux/net/Makefile.in: Regenerated.
	* libc/sys/linux/net/base64.c: Replaced with glibc version of code.
	* libc/sys/linux/net/getaddrinfo.c: Ditto.
	* libc/sys/linux/net/getnameinfo.c: Ditto.
	* libc/sys/linux/net/getproto.c: Ditto.
	* libc/sys/linux/net/getservent.c: Ditto.
	* libc/sys/linux/net/inet_netof.c: Ditto.
	* libc/sys/linux/net/inet_lnaof.c: Ditto.
	* libc/sys/linux/net/ns_name.c: Ditto.
	* libc/sys/linux/net/ns_netint.c: Ditto.
	* libc/sys/linux/net/inet_ntoa.c: Ditto.
	* libc/sys/linux/net/ns_parse.c: Ditto.
	* libc/sys/linux/net/ns_print.c: Ditto.
	* libc/sys/linux/net/ns_ttl.c: Ditto.
	* libc/sys/linux/net/nsap_addr.c: Ditto.
	* libc/sys/linux/net/rcmd.c: Ditto.
	* libc/sys/linux/net/res_comp.c: Ditto.
	* libc/sys/linux/net/res_data.c: Ditto.
	* libc/sys/linux/net/res_debug.c: Ditto.
	* libc/sys/linux/net/res_init.c: Ditto.
	* libc/sys/linux/net/res_mkquery.c: Ditto.
	* libc/sys/linux/net/res_query.c: Ditto.
	* libc/sys/linux/net/res_send.c: Ditto.
	* libc/sys/linux/net/send.c: Ditto.
	* libc/sys/linux/stdlib/collate.c: Ditto.
	* libc/sys/linux/sys/ioctl.h: Ditto.
	* libc/sys/linux/sys/socket.h: Ditto.
	* libc/sys/linux/sys/unistd.h: Ditto.
	* libc/sys/linux/iconv/iconvconfig.c: Removed either because no longer
	used or because licensing includes advertising clause that cannot be
	ignored.
	* libc/sys/linux/iconv/strtab.c: Ditto.
	* libc/sys/linux/include/libc_private.h: Ditto.
	* libc/sys/linux/include/nsswitch.h: Ditto.
	* libc/sys/linux/include/net/if_atm.h: Ditto.
	* libc/sys/linux/include/net/if_media.h: Ditto.
	* libc/sys/linux/include/net/if_pppvar.h: Ditto.
	* libc/sys/linux/include/netinet/if_atm.h: Ditto.
	* libc/sys/linux/include/netinet/ip_flow.h: Ditto.
	* libc/sys/linux/intl/locale.alias: Ditto.
	* libc/sys/linux/net/addr2ascii.3: Ditto.
	* libc/sys/linux/net/bindresvport.c: Ditto.
	* libc/sys/linux/net/byteorder.3: Ditto.
	* libc/sys/linux/net/res_config.h: Ditto.
	* libc/sys/linux/net/ether_addr.c: Ditto.
	* libc/sys/linux/net/ethers.3: Ditto.
	* libc/sys/linux/net/getaddrinfo.3: Ditto.
	* libc/sys/linux/net/gethostbydns.c: Ditto.
	* libc/sys/linux/net/gethostbyht.c: Ditto.
	* libc/sys/linux/net/gethostbyname.3: Ditto.
	* libc/sys/linux/net/gethostbynis.c: Ditto.
	* libc/sys/linux/net/gethostnamadr.c: Ditto.
	* libc/sys/linux/net/getifaddrs.3: Ditto.
	* libc/sys/linux/net/getifaddrs.c: Ditto.
	* libc/sys/linux/net/getipnodebyname.3: Ditto.
	* libc/sys/linux/net/getnameinfo.3: Ditto.
	* libc/sys/linux/net/getnetbydns.c: Ditto.
	* libc/sys/linux/net/getnetbyht.c: Ditto.
	* libc/sys/linux/net/getnetbynis.c: Ditto.
	* libc/sys/linux/net/getnetent.3: Ditto.
	* libc/sys/linux/net/getnetnamadr.c: Ditto.
	* libc/sys/linux/net/getprotoent.3: Ditto.
	* libc/sys/linux/net/getprotoent.c: Ditto.
	* libc/sys/linux/net/getprotoname.c: Ditto.
	* libc/sys/linux/net/getservbyname.c: Ditto.
	* libc/sys/linux/net/getservbyport.c: Ditto.
	* libc/sys/linux/net/getservent.3: Ditto.
	* libc/sys/linux/net/herror.c: Ditto.
	* libc/sys/linux/net/hesiod.3: Ditto.
	* libc/sys/linux/net/hesiod.c: Ditto.
	* libc/sys/linux/net/if_indextoname.3: Ditto.
	* libc/sys/linux/net/inet.3: Ditto.
	* libc/sys/linux/net/inet6_option_space.3: Ditto.
	* libc/sys/linux/net/inet6_rthdr_space.3: Ditto.
	* libc/sys/linux/net/inet_makeaddr.c: Ditto.
	* libc/sys/linux/net/inet_net.3: Ditto.
	* libc/sys/linux/net/inet_network.c: Ditto.
	* libc/sys/linux/net/innetgr-stub.c: Ditto.
	* libc/sys/linux/net/ip6opt.c: Ditto.
	* libc/sys/linux/net/iso_addr.3: Ditto.
	* libc/sys/linux/net/iso_addr.c: Ditto.
	* libc/sys/linux/net/linkaddr.3: Ditto.
	* libc/sys/linux/net/linkaddr.c: Ditto.
	* libc/sys/linux/net/map_v4v6.c: Ditto.
	* libc/sys/linux/net/name6.c: Ditto.
	* libc/sys/linux/net/namespace.h: Ditto.
	* libc/sys/linux/net/ns.3: Ditto.
	* libc/sys/linux/net/ns_addr.c: Ditto.
	* libc/sys/linux/net/ns_ntoa.c: Ditto.
	* libc/sys/linux/net/nsdispatch.3: Ditto.
	* libc/sys/linux/net/nsdispatch.c: Ditto.
	* libc/sys/linux/net/nslexer.c: Ditto.
	* libc/sys/linux/net/nslexer.l: Ditto.
	* libc/sys/linux/net/nsparser.c: Ditto.
	* libc/sys/linux/net/nsparser.h: Ditto.
	* libc/sys/linux/net/nsparser.y: Ditto.
	* libc/sys/linux/net/rcmd.3: Ditto.
	* libc/sys/linux/net/rcmdsh.3: Ditto.
	* libc/sys/linux/net/res_mkupdate.c: Ditto.
	* libc/sys/linux/net/res_update.c: Ditto.
	* libc/sys/linux/net/resolver.3: Ditto.
	* libc/sys/linux/net/rthdr.c: Ditto.
	* libc/sys/linux/net/vars.c: Ditto.
	* libc/sys/linux/shlib-compat.h: New file.
	* libc/sys/linux/machine/i386/atomic.h: Ditto.
	* libc/sys/linux/net/XXX-lookup.c: Ditto.
	* libc/sys/linux/net/alias-lookup.c: Ditto.
	* libc/sys/linux/net/res_libc.c: Ditto.
	* libc/sys/linux/net/aliases.h: Ditto.
	* libc/sys/linux/net/check_pf.c: Ditto.
	* libc/sys/linux/net/databases.def: Ditto.
	* libc/sys/linux/net/digits_dots.c: Ditto.
	* libc/sys/linux/net/ether_aton.c: Ditto.
	* libc/sys/linux/net/ether_aton_r.c: Ditto.
	* libc/sys/linux/net/ether_hton.c: Ditto.
	* libc/sys/linux/net/ether_line.c: Ditto.
	* libc/sys/linux/net/ether_ntoa.c: Ditto.
	* libc/sys/linux/net/ether_ntoa_r.c: Ditto.
	* libc/sys/linux/net/ether_ntoh.c: Ditto.
	* libc/sys/linux/net/etherent.h: Ditto.
	* libc/sys/linux/net/ethers-lookup.c: Ditto.
	* libc/sys/linux/net/function.def: Ditto.
	* libc/sys/linux/net/getXXbyYY.c: Ditto.
	* libc/sys/linux/net/getXXbyYY_r.c: Ditto.
	* libc/sys/linux/net/getXXent.c: Ditto.
	* libc/sys/linux/net/getXXent_r.c: Ditto.
	* libc/sys/linux/net/getaliasent.c: Ditto.
	* libc/sys/linux/net/getaliasent_r.c: Ditto.
	* libc/sys/linux/net/getaliasname.c: Ditto.
	* libc/sys/linux/net/getaliasname_r.c: Ditto.
	* libc/sys/linux/net/gethstbyad.c: Ditto.
	* libc/sys/linux/net/gethstbyad_r.c: Ditto.
	* libc/sys/linux/net/gethstbynm.c: Ditto.
	* libc/sys/linux/net/gethstbynm2.c: Ditto.
	* libc/sys/linux/net/gethstbynm2_r.c: Ditto.
	* libc/sys/linux/net/gethstbynm_r.c: Ditto.
	* libc/sys/linux/net/gethstent.c: Ditto.
	* libc/sys/linux/net/gethstent_r.c: Ditto.
	* libc/sys/linux/net/getnetbyad.c: Ditto.
	* libc/sys/linux/net/getnetbyad_r.c: Ditto.
	* libc/sys/linux/net/getnetbynm.c: Ditto.
	* libc/sys/linux/net/getnetbynm_r.c: Ditto.
	* libc/sys/linux/net/getnetent.c: Ditto.
	* libc/sys/linux/net/getnetent_r.c: Ditto.
	* libc/sys/linux/net/getnetgrent.c: Ditto.
	* libc/sys/linux/net/getnetgrent_r.c: Ditto.
	* libc/sys/linux/net/getnssent.c: Ditto.
	* libc/sys/linux/net/getnssent_r.c: Ditto.
	* libc/sys/linux/net/getproto_r.c: Ditto.
	* libc/sys/linux/net/getprtent.c: Ditto.
	* libc/sys/linux/net/getprtent_r.c: Ditto.
	* libc/sys/linux/net/getprtname.c: Ditto.
	* libc/sys/linux/net/getprtname_r.c: Ditto.
	* libc/sys/linux/net/getrpcbyname.c: Ditto.
	* libc/sys/linux/net/getrpcbyname_r.c: Ditto.
	* libc/sys/linux/net/getrpcbynumber.c: Ditto.
	* libc/sys/linux/net/getrpcbynumber_r.c: Ditto.
	* libc/sys/linux/net/getrpcent.c: Ditto.
	* libc/sys/linux/net/getrpcent_r.c: Ditto.
	* libc/sys/linux/net/getservent_r.c: Ditto.
	* libc/sys/linux/net/getsrvbynm.c: Ditto.
	* libc/sys/linux/net/getsrvbynm_r.c: Ditto.
	* libc/sys/linux/net/getsrvbypt.c: Ditto.
	* libc/sys/linux/net/getsrvbypt_r.c: Ditto.
	* libc/sys/linux/net/grp-lookup.c: Ditto.
	* libc/sys/linux/net/herrno.c: Ditto.
	* libc/sys/linux/net/hosts-lookup.c: Ditto.
	* libc/sys/linux/net/ifaddrs.h: Ditto.
	* libc/sys/linux/net/ifreq.c: Ditto.
	* libc/sys/linux/net/ifreq.h: Ditto.
	* libc/sys/linux/net/in6_addr.c: Ditto.
	* libc/sys/linux/net/inet6_option.c: Ditto.
	* libc/sys/linux/net/inet_mkadr.c: Ditto.
	* libc/sys/linux/net/inet_net.c: Ditto.
	* libc/sys/linux/net/key-lookup.c: Ditto.
	* libc/sys/linux/net/local.h: Ditto.
	* libc/sys/linux/net/netgroup.h: Ditto.
	* libc/sys/linux/net/netgrp-lookup.c: Ditto.
	* libc/sys/linux/net/network-lookup.c: Ditto.
	* libc/sys/linux/net/not-cancel.h: Ditto.
	* libc/sys/linux/net/ns_samedomain.c: Ditto.
	* libc/sys/linux/net/nscd-types.h: Ditto.
	* libc/sys/linux/net/nss.h: Ditto.
	* libc/sys/linux/net/nsswitch.c: Ditto.
	* libc/sys/linux/net/nsswitch.h: Ditto.
	* libc/sys/linux/net/opensock.c: Ditto.
	* libc/sys/linux/net/proto-lookup.c: Ditto.
	* libc/sys/linux/net/pwd-lookup.c: Ditto.
	* libc/sys/linux/net/res_debug.h: Ditto.
	* libc/sys/linux/net/res_hconf.c: Ditto.
	* libc/sys/linux/net/res_hconf.h: Ditto.
	* libc/sys/linux/net/rexec.c: Ditto.
	* libc/sys/linux/net/rpc-lookup.c: Ditto.
	* libc/sys/linux/net/ruserpass.c: Ditto.
	* libc/sys/linux/net/service-lookup.c: Ditto.
	* libc/sys/linux/net/spwd-lookup.c: Ditto.
	* libc/sys/linux/net/nscd/nscd-client.h: Ditto.
	* libc/sys/linux/net/nscd/nscd_proto.h: Ditto.
2008-05-22 21:30:28 +00:00
Eric Blake ae47b14a12 Optimize the generic strchr.
* libc/string/strchr.c (strchr) [!__OPTIMIZE_SIZE__]: Pre-align
data so unaligned searches aren't penalized.  Special-case
searching for 0.
2008-05-22 02:31:46 +00:00
Eric Blake 4962a9453a Optimize strchr for x86.
* libc/machine/i386/strchr.S (strchr): Pre-align data so unaligned
searches aren't penalized.  Special-case searching for 0.
2008-05-21 21:46:04 +00:00
Nick Clifton cb1f8161c1 * libc/sys/sysnecv850/crt0.S (___dso_handle): Define (weak).
* iq2000/crt0.S (__dso_handle): Define (weak).
        * frv/crt0.S (__dso_handle): Define (weak).
        * mn10300/crt0.S (___dso_handle): Define (weak).
2008-05-21 07:44:32 +00:00
Jeff Johnston a9309ff5b6 2008-05-20 DJ Delorie <dj@redhat.com>
* libc/sys/sysnecv850/isatty.c (_isatty): Renamed from isatty.
2008-05-20 18:00:12 +00:00
Jeff Johnston 26432b0bb5 2008-05-14 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/reent.h: Change _REENT_INIT... macros to
        access macro parameter with parentheses around it.
2008-05-14 22:09:10 +00:00
Mark Mitchell df93e6f193 * libc/include/stdint.h (SIZE_MIN): Remove.
(SIZE_MAX): Define.
	* testsuite/newlib.stdlib/stdlib.exp: New.
	* testsuite/newlib.stdlib/size_max.c: Likewise.
2008-05-02 14:52:56 +00:00
Eric Blake f77a1a8848 Fix 2008-04-14 regression in asprintf(ptr,"").
* libc/stdio/asnprintf.c (asnprintf, _asnprintf_r): Avoid stdio
baggage.
* libc/stdio/asniprintf.c (asniprintf, _asniprintf_r): Likewise.
* libc/stdio/asiprintf.c (asiprintf, _asiprintf_r): Likewise.
* libc/stdio/vasniprintf.c (_vasniprintf_r): Likewise.
* libc/stdio/vsnprintf.c (_vsnprintf_r): Likewise.
* libc/stdio/vfprintf.c (_VFPRINTF_R) [STRING_ONLY]: Always malloc
an initial buffer for asprintf.
2008-04-30 02:47:14 +00:00
Corinna Vinschen 78970a51f3 * libc/include/sys/stat.h: Guard at-functions with !__INSIDE_CYGWIN__.
(fstatat): Fix type of third parameter.
2008-04-26 07:49:39 +00:00
Nick Clifton 026f9d290f * libc/machine/arm/setjmp.S: Fix thumb2 support.
* arm/crt0.S: Allow assembly under ARMv7 ISA.  Support for
            initializing stack pointers for interrupt modes is still pending.
2008-04-25 09:02:40 +00:00
Nick Clifton 51bef6a9c6 * libc/include/machine/ieeefp.h: Fix typo: _DOUBLE_IS_32_BITS
should be _DOUBLE_IS_32BITS.
2008-04-24 11:26:41 +00:00
Corinna Vinschen 0d02384a48 * libc/include/sys/stat.h (UTIME_NOW): Define for Cygwin.
(UTIME_OMIT): Ditto.
	(utimensat): Declare for Cygwin.
	(futimens): Ditto.
2008-04-24 09:39:21 +00:00
Jeff Johnston e2af45bfd1 2008-04-23 Ken Werner <ken.werner@de.ibm.com>
* libc/include/_ansi.h: _LONG_LONG renamed to _LONG_LONG_TYPE.
        * libc/include/math.h: Likewise.
2008-04-23 23:10:54 +00:00
Corinna Vinschen ca48eb65e9 * libc/include/stdio.h (renameat): Declare for Cygwin.
(symlinkat): Ditto.
	* libc/include/sys/unistd.h (readlink): Align declaration to POSIX.
	(faccessat): Declare for Cygwin.
	(fchownat): Ditto.
	(linkat): Ditto.
	(readlinkat): Ditto.
	* libc/include/sys/_default_fcntl.h (AT_FDCWD): Define for Cygwin.
	(AT_EACCESS): Ditto.
	(AT_SYMLINK_NOFOLLOW): Ditto.
	(AT_SYMLINK_FOLLOW): Ditto.
	(AT_REMOVEDIR): Ditto.
	(futimesat): Declare for Cygwin.
	(openat): Ditto.
	(unlinkat): Ditto.
	* libc/include/sys/stat.h (fchmodat): Ditto.
	(fstatat): Ditto.
	(mkdirat): Ditto.
	(mkfifoat): Ditto.
	(mknodat): Ditto.
2008-04-23 11:13:24 +00:00
Jeff Johnston e950505015 2008-04-16 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/sys/errno.h: Use _impure_data, not _reent_data.
2008-04-16 20:04:08 +00:00
Jeff Johnston c2bd84bc27 2008-04-16 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/impure.c: Add missing underscore to impure_data.
2008-04-16 18:46:20 +00:00
Jeff Johnston 45b142890d 2008-04-14 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/impure.c: New file, supply a non-static _impure_data.
        * libc/machine/spu/Makefile.am: Add new file impure.c.
        * libc/machine/spu/Makefile.in: Regenerate.
        * libc/machine/spu/sys/errno.h: Define errno to be _reent_data._errno.
2008-04-15 19:57:48 +00:00
Jeff Johnston eabd7de028 2008-04-14 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/Makefile.am: Build vfprintf.c and vfscanf.c with
        -DSTRING_ONLY defined with and without -DINTEGER_ONLY defined
        to build special versions for sprintf/sscanf family functions.
        * libc/stdio/Makefile.in: Regenerated.
        * libc/stdio/vfprintf.c[STRING_ONLY][INTEGER_ONLY](_VFPRINTF_R):
        Redefine to be _svfiprintf_r which is optimized to work with siprintf
        family of functions (i.e. no I/O) and does not support floating-point.
        [STRING_ONLY][!INTEGER_ONLY](_VFPRINTF_R): Redefine to be
        _svfprintf_r which is optimized to work with sprintf family of
        functions and not use I/O.
        [STRING_ONLY](__sprint_r): New string only version of static function.
        designed to work with sprintf family of functions.
        * libc/stdio/vfscanf.c[STRING_ONLY][INTEGER_ONLY](_SVFSCANF_R):
        Redefine to be _ssvfiscanf_r which is optimized to work with siscanf
        family of functions (i.e. no I/O) and no float-point support.
        [STRING_ONLY][!INTEGER_ONLY](_SVFSCANF_R): Redefine to be
        __ssvfscanf_r which is optimized to work with sscanf family of
        functions and does not require I/O functions.
        * libc/stdio/asprintf.c: Call _svfprintf_r instead of _vfprintf_r.
        * libc/stdio/snprintf.c: Ditto.
        * libc/stdio/sprintf.c: Ditto.
        * libc/stdio/vasnprintf.c: Ditto.
        * libc/stdio/vasprintf.c: Ditto.
        * libc/stdio/siprintf.c: Call _svfiprintf_r instead of _vfiprintf_r.
        * libc/stdio/sniprintf.c: Ditto.
        * libc/stdio/vasiprintf.c: Ditto.
        * libc/stdio/vsiprintf.c: Ditto.
        * libc/stdio/vsniprintf.c: Ditto.
        * libc/stdio/vsprintf.c: Ditto.
        * libc/stdio/local.h: Add prototypes for _svfprintf_r, _svfiprintf_r,
        _ssvfscanf_r, and _ssvfiscanf_r.
        * libc/stdio/sscanf.c: Call _ssvfscanf_r instead of _svfscanf_r.
        * libc/stdio/vsscanf.c: Ditto.
        * libc/stdio/siscanf.c: Call _ssvfiscanf_r instead of _svfiscanf_r.
        * libc/stdio/vsiscanf.c: Ditto.
2008-04-14 21:14:55 +00:00
DJ Delorie 6f810581fb [newlib]
* libm/machine/spu/configure: Regenerate with autoconf 2.61.
	* libc/sys/configure: Regenerate with autoconf 2.61.
	* libc/machine/configure: Regenerate with autoconf 2.61.
[libgloss]
	* hp74x/configure: Regenerate with autoconf 2.61.
	* fr30/configure: Regenerate with autoconf 2.61.
	* mips/configure: Regenerate with autoconf 2.61.
	* xstormy16/configure: Regenerate with autoconf 2.61.
	* rs6000/configure: Regenerate with autoconf 2.61.
	* d30v/configure: Regenerate with autoconf 2.61.
	* i386/configure: Regenerate with autoconf 2.61.
	* configure: Regenerate with autoconf 2.61.
	* wince/configure: Regenerate with autoconf 2.61.
	* pa/configure: Regenerate with autoconf 2.61.
	* m32r/configure: Regenerate with autoconf 2.61.
	* mn10200/configure: Regenerate with autoconf 2.61.
	* iq2000/configure: Regenerate with autoconf 2.61.
	* cris/configure: Regenerate with autoconf 2.61.
	* m68k/configure: Regenerate with autoconf 2.61.
	* spu/configure: Regenerate with autoconf 2.61.
	* m32c/configure: Regenerate with autoconf 2.61.
	* mn10300/configure: Regenerate with autoconf 2.61.
	* i960/configure: Regenerate with autoconf 2.61.
	* arm/configure: Regenerate with autoconf 2.61.
	* libnosys/configure: Regenerate with autoconf 2.61.
	* m68hc11/configure: Regenerate with autoconf 2.61.
	* bfin/configure: Regenerate with autoconf 2.61.
	* crx/configure: Regenerate with autoconf 2.61.
	* mt/configure: Regenerate with autoconf 2.61.
	* sparc/configure: Regenerate with autoconf 2.61.
	* sparc/libsys/configure: Regenerate with autoconf 2.61.
	* mcore/configure: Regenerate with autoconf 2.61.
	* mep/configure: Regenerate with autoconf 2.61.
	* frv/configure: Regenerate with autoconf 2.61.
	* doc/configure: Regenerate with autoconf 2.61.
2008-04-04 21:52:01 +00:00
Jeff Johnston bd6e30d59a 2008-04-01 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/memcmp.c: New file for SPU optimized memcmp.
        * libc/machine/spu/strncmp.h: New file supply _strncmp_internal.
        * libc/machine/spu/Makefile.am: Add memcmp.c.
        * libc/machine/spu/Makefile.in: Rebuild.
        * libc/machine/spu/strncmp.c: Use _strncmp_internal.
2008-04-01 19:02:16 +00:00
Jeff Johnston 71f3a8f566 2008-04-01 Patrick Mansfield <patmans@us.ibm.com>
* configure.host: Build SPU with -DREENTRANT_SYSCALLS_PROVIDED and
          -DMISSING_SYSCALL_NAMES.
2008-04-01 18:58:07 +00:00
Jeff Johnston 1d4a4944e5 2008-03-27 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/Makefile.am: Add assert.c.
	* libc/machine/spu/Makefile.in: Regenerate.
	* libc/machine/spu/assert.c: New file.
2008-04-01 18:53:41 +00:00
Jeff Johnston 3ab380aaa8 2008-03-27 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/reent.h: Define _func_r functions in this file to
        func if REENTRANT_SYSCALLS_PROVIDED and MISSING_SYSCALL_NAMES are
        defined.
2008-03-27 23:28:17 +00:00
Corinna Vinschen 4af0c5e8f3 * libc/include/sys/unistd.h: Declare lockf(2) and define lockf
constants when building for Cygwin.
2008-03-27 09:55:05 +00:00
Jeff Johnston d84985f794 2008-03-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/rgetc.c (__srget_r): Invoke CHECK_INIT to ensure
        stdin gets resolved properly before refilling.
2008-03-11 19:13:30 +00:00
Jeff Johnston 88348faf5b 2008-03-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/rgetc.c (__srget): Invoke CHECK_INIT to ensure
        stdin gets resolved properly before refilling.
2008-03-11 19:08:39 +00:00
Jeff Johnston c622842865 2008-03-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/getopt.h: Hide newlib extensions under
        the __need_getopt_newlib flag.
        * libc/stdlib/getopt.c: #define __need_getopt_newlib before including
        getopt.h.  Put entire code under !HAVE_GETOPT to support platforms
        with their own getopt implementation.
        * configure.host: Specify HAVE_GETOPT for x86-linux.
2008-03-07 18:16:35 +00:00
Jeff Johnston 0382d26727 2008-03-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/reent.h(_REENT_SMALL_CHECK_INIT): Specify
        this macro completely instead of referring to CHECK_STD_INIT which
        is only found in libc/stdio/local.h.
        * libc/stdio/dprintf.c: Add include of local.h.
        * libc/stdio/vdprintf.c: Ditto.
        * libc/stdio/vdiprintf.c: Ditto.
2008-03-07 16:45:04 +00:00
Eric Blake beb0ab6466 Fix strtod("nan()", ptr).
* libc/stdlib/gdtoa-hexnan.c (hexnan): When the optional
n-char-sequence is omitted, still parse the ().
-------------------------------------------------------------------
2008-03-04 18:27:01 +00:00
Eric Blake 9ae00e9e07 Fix ftell bug after ungetc.
* libc/stdio/ftell.c (_ftell_r): Don't flush ungetc buffer on
ftell.
* libc/stdio64/ftello64.c (_ftello64_r): Likewise.
* libc/stdio/fflush.c (_fflush_r): Clear unget buffer when
repositioning underlying fd offset.
-------------------------------------------------------------------
2008-03-04 02:22:36 +00:00
Jeff Johnston be62101c60 2008-03-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/getopt.h (no_argument): Added for glibc compatibility.
        (required_argument, optional_argument): Ditto.
2008-03-03 19:47:59 +00:00
Jeff Johnston 76ff710cfa 2008-02-29 Gregory Pietsch <gpietsch@comcast.net>
* libc/stdlib/getopt.c (getopt_internal): Rewrite to accept
        data area so as to support reentrant calls.  Change all callers
        to fill in data area with global values and restore any changes
        to the global values after call.
        (__getopt_r, __getopt_long_r, __getopt_long_only_r): New routines
        to support reentrancy that add a data area argument.
        * libc/include/getopt.h: Add new _r routines and provide macros
        so they can be called with using double-underscores.
2008-02-29 21:11:57 +00:00
Eric Blake 7a44c13ecb Fix strtod("-0x", NULL).
* libc/stdlib/strtod.c (_strtod_r): Fall back to 0 if hex parse
fails.
2008-02-21 17:14:14 +00:00
Jeff Johnston de20111eba 2008-02-12 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/powerpc/vfprintf.c (_VFPRINTF_R): Prepare
        for user specifying --disable-newlib-io-long-long on configure.
        Call _fflush_r instead of fflush.  For _mbtowc_r, pass the
        reentrant pointer passed in rather than _REENT.
2008-02-12 18:07:55 +00:00
Jeff Johnston f46f40b54e 2008-02-12 Peter Rosin <peda@lysator.liu.se>
* libc/stdlib/getopt.c (getopt_internal): Handle optional
        arguments better for long options and short options not
        appearing as the first option in a sequence.
2008-02-12 17:20:09 +00:00
Jeff Johnston 74d928bf7a 2008-02-11 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/straddr.h: New file, supplies _straddr.
        * libc/machine/spu/strcat.c: Use _straddr and _strcpy.
        * libc/machine/spu/strcpy.c: Use _strcpy.
        * libc/machine/spu/strcpy.h: Supply _strcpy for optimized SPU
        str[n]cpy and str[n]cat.
        * libc/machine/spu/strncat.c: Use _straddr and _strcpy.
        * libc/machine/spu/strncpy.c: Use _strcpy.
2008-02-11 22:19:59 +00:00
Jeff Johnston 9b924fc304 2008-02-11 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/strlen.c: Remove the len variable and unneeded
        calculation of its value.
2008-02-11 22:14:46 +00:00
Brian Ford 17bccd4120 Remove conflict marker as obvious. 2008-01-30 18:49:59 +00:00
Hans-Peter Nilsson 77ec26b04a * libc/sys/mmixware/isatty.c (_isatty): Renamed from isatty.
Make ISO C.
2008-01-25 04:31:11 +00:00
DJ Delorie 226f5a32da * libc/sys/sh/syscalls.c (_isatty): New. 2008-01-22 00:24:45 +00:00
Jeff Johnston cece11c511 2008-01-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (crt1.o): Use correct source.
        * Makefile.in: Regenerated.
2008-01-21 18:29:17 +00:00
Eric Blake dc26a86fbb * libc/string/Makefile.am (ELIX_2_SOURCES): Fix definition.
* libc/string/Makefile: Regenerate.
2008-01-15 13:35:33 +00:00
Corinna Vinschen 12df8a5b53 * libc/include/machine/setjmp.h (__SIGMASK_FUNC): Define as
pthread_sigmask or sigprocmask depending on _POSIX_THREADS.
	(sigsetjmp): Use __SIGMASK_FUNC.
	(siglongjmp): Ditto.
	(_setjmp): Define as macro.
	(_longjmp): Ditto.
2008-01-15 09:41:06 +00:00
Eric Blake 40617efc8b Make strstr and strcasestr O(n), not O(n^2); add memmem.
* libc/string/str-two-way.h: New file.
* libc/string/memmem.c (memmem): New file.
* libc/include/string.h (memmem): Declare for all platforms.
* libc/string/strstr.c (strstr): Provide O(n) implementation when
not optimizing for space.
* libc/string/strcasestr.c (strcasestr): Likewise.
* libc/string/Makefile.am (ELIX_SOURCES): Rename to...
(ELIX_2_SOURCES): ...this.
(ELIX_4_SOURCES): New category, for memmem.
(lib_a_SOURCES, libstring_la_SOURCES): Build new file.
(CHEWOUT_FILES): Build documentation for memmem.
* libc/string/strings.tex: Include new docs.
2008-01-12 04:25:55 +00:00
Jeff Johnston ceb32a183c 2008-01-08 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/m68k/memcpy.S: Remove % from register references
        as this is already handled by m68kasm.h.
        * libc/machine/m68k/memset.S: Ditto.
2008-01-08 21:48:06 +00:00
Jeff Johnston a32113705f 2008-01-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/m68k/m68kasm.h: New file.
        * libc/machine/m68k/setjmp.S: Remove common definitions and
        place in m68kasm.h.  Include "m68kasm.h".
        * libc/machine/m68k/memcpy.S: Include "m68kasm.h" and use
        SYM() macro when referencing function name.
        * libc/machine/m68k/memset.S: Ditto.
2008-01-07 18:59:45 +00:00
Jeff Johnston a639937a9a 2008-01-03 Jeff Johnston <jjohnstn@redhat.com>
Make isatty syscall handling consistent with other newlib syscalls.

        * libc/include/_syslist.h: Add _isatty.
        * libc/include/reent.h: Add _isatty_r.
        * libc/include/sys/unistd.h: Add _isatty.
        * libc/posix/Makefile.am: Add new _isatty.c file.
        * libc/posix/Makefile.in: Regenerated.
        * libc/posix/_isatty.c: New file.
        * libc/posix/isatty.c: Changed to call _isatty().
        * libc/reent/Makefile.am: Add new isattyr.c file.
        * libc/reent/Makefile.in: Regenerated.
        * libc/reent/isattyr.c: New file.
        * libc/stdio/freopen.c: Changed to call _isatty_r().
        * libc/stdio/makebuf.c: Ditto.
        * libc/sys/a29khif/_isatty.S: Change isatty to _isatty.
        * libc/sys/arc/isatty.c: Ditto.
        * libc/sys/arm/syscalls.c: Ditto.
        * libc/sys/d10v/syscalls.c: Ditto.
        * libc/sys/h8300hms/syscalls.c: Ditto.
        * libc/sys/h8500hms/syscalls.c: Ditto.
        * libc/sys/linux/Makefile.am: Add new isatty.c file.
        * libc/sys/linux/Makefile.in: Regenerated.
        * libc/sys/linux/isatty.c: New file.
        * libc/syscalls/Makefile.am: Add new sysisatty.c file.
        * libc/syscalls/Makefile.in: Regenerated.
        * libc/syscalls/sysisatty.c: New file.
2008-01-03 22:33:37 +00:00
Jeff Johnston 7c8bd7a075 2008-01-02 Jeff Johnston <jjohnstn@redhat.com>
* libc/syscalls/sysclose.c: Always call reentrant version of the
        underlying syscall since one is guaranteed to exist in libc/reent.
        * libc/syscalls/sysexecve.c: Ditto.
        * libc/syscalls/sysfcntl.c: Ditto.
        * libc/syscalls/sysfork.c: Ditto.
        * libc/syscalls/sysfstat.c: Ditto.
        * libc/syscalls/sysgetpid.c: Ditto.
        * libc/syscalls/sysgettod.c: Ditto.
        * libc/syscalls/syskill.c: Ditto.
        * libc/syscalls/syslink.c: Ditto.
        * libc/syscalls/syslseek.c: Ditto.
        * libc/syscalls/sysopen.c: Ditto.
        * libc/syscalls/sysread.c: Ditto.
        * libc/syscalls/syssbrk.c: Ditto.
        * libc/syscalls/sysstat.c: Ditto.
        * libc/syscalls/systimes.c: Ditto.
        * libc/syscalls/sysunlink.c: Ditto.
        * libc/syscalls/syswait.c: Ditto.
        * libc/syscalls/syswrite.c: Ditto.
2008-01-03 00:16:49 +00:00
Jeff Johnston 26b8429317 2007-12-19 Jeff Johnston <jjohnstn@redhat.com>
* NEWS: Update with 1.16.0 info.
        * README: Ditto.
        * acinclude.m4: Change version number to 1.16.0.
        * aclocal.m4: Regenerated.
        * configure: Ditto.
        * doc/aclocal.m4: Ditto.
        * doc/configure: Ditto.
        * libc/*/aclocal.m4: Ditto.
        * libc/*/configure: Ditto.
        * libc/libc.texinfo: Ditto.
        * libm/*/aclocal.m4: Ditto.
        * libm/*/configure: Ditto.
        * libm/libm.texinfo: Ditto.
        * libc/sys/linux/shared.ld: Add VERS_1.16.
2007-12-19 22:36:48 +00:00
Jeff Johnston 6af69de3d3 2007-12-19 Jeff Johnston <jjohnstn@redhat.com>
* libc/string/strcasestr.c: Remove id macro.
        * libc/sys/linux/linuxthreads/attr.c: Fix up sched_priority
        field reference to be __sched_priority.
        * libc/sys/linux/linuxthreads/joinrace.c: Ditto.
        * libc/sys/linux/linuxthreads/manager.c: Ditto.
        * libc/sys/linux/stdlib/collate.c: Remove id macro.
        * libc/sys/linux/stdlib/collcmp.c: Ditto.
        * libc/sys/linux/stdlib/engine.c: Ditto.
        * libc/sys/linux/stdlib/fnmatch.c: Ditto.
        * libc/sys/linux/stdlib/glob.c: Ditto.
        * libc/sys/linux/stdlib/reallocf.c: Ditto.
        * libc/sys/linux/stdlib/regcomp.c: Ditto.
        * libc/sys/linux/stdlib/regerror.c: Ditto.
        * libc/sys/linux/stdlib/regexec.c: Ditto.
        * libc/sys/linux/stdlib/regfree.c: Ditto.
        * libc/sys/linux/sys/cdefs.h: Replace with latest version.
        * libc/sys/linux/include/argp.h: Ditto.
        * libc/sys/linux/sys/libc-lock.h: New file.
        * libc/sys/linux/sys/stdint.h: Ditto.
        * libc/sys/linux/include/sched.h: New file.
2007-12-19 22:27:00 +00:00
Jeff Johnston 3cc8a378d1 2007-12-19 Dave Korn <dave.korn@artimi.com>
Jeff Johnston  <jjohnstn@redhhat.com>

        * libc/include/_ansi.h: Add _LONG_LONG definition.
        * libc/include/math.h (llrint, llrintf, rintl, lrintl, llrintl): Add
        prototypes.
        * libc/machine/i386/machine/fastmath.h: Add support for new i386
        fast math versions of rint, lrint, and llrint family functions.
        * libm/machine/i386/Makefile.am: Add new files.
        * libm/machine/i386/Makefile.in: Regenerated.
        * libm/machine/i386/f_llrint.c, libm/machine/i386/f_lrint.c,
        libm/machine/i386/f_rint.c, libm/machine/i386/f_llrintf.c,
        libm/machine/i386/f_lrintf.c, libm/machine/i386/f_rintf.c,
        libm/machine/i386/f_llrintl.c, libm/machine/i386/f_lrintl.c,
        libm/machine/i386/f_rintl.c:  New files with fast math implementations.
2007-12-19 22:20:25 +00:00
Jeff Johnston 41e94f2488 2007-12-19 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/features.h: Add checks for C90 compilers using
        -ansi.
2007-12-19 18:51:19 +00:00
Corinna Vinschen ac26b72723 * libc/include/wchar.h: Add prototypes for wcpcpy and wcpncpy.
* libc/string/Makefile.am (ELIX_SOURCES): Add wcpcpy.c and
	wcpncpy.c.
	(CHEWOUT_FILES): Add wcpcpy.def and wcpncpy.def.
	* libc/string/Makefile.in: Regenerate.
	* libc/string/wcpcpy.c: New file.
	* libc/string/wcpncpy.c: New file.
	* libc/string/wcstrings.tex: Add wcpcpy and wcpncpy.
2007-12-19 17:33:12 +00:00
Corinna Vinschen 478df8bb91 * libc/stdio/vfprintf.c (_VFPRINTF_R): Use correct pointer in call to
_wcsrtombs_r.
2007-12-19 17:06:19 +00:00
Jeff Johnston 60bef55d30 2007-11-19 Nick Clifton <nickc@redhat.com>
* libc/machine/mn10300/Makefile.am (CCASFLAGS): Add -Wa,--gdwarf-2.
        * libc/machine/mn10300/Makefile.in: Regenerate.
        * libc/machine/mn10300/memchar.S: Remove redundant labels.  Add
        .debug_frame section.
        * libc/machine/mn10300/memcmp.S: Likewise.
        * libc/machine/mn10300/memcpy.S: Likewise.
        * libc/machine/mn10300/memset.S: Likewise.
        * libc/machine/mn10300/strchr.S: Likewise.
        * libc/machine/mn10300/strcmp.S: Likewise.
        * libc/machine/mn10300/strcpy.S: Likewise.
        * libc/machine/mn10300/strlen.S: Likewise.
2007-11-19 20:03:25 +00:00
Corinna Vinschen 815774e87f * libc/include/sys/unistd.h: Remove Cygwin definition of MAXPATHLEN. 2007-11-08 16:20:12 +00:00
Dave Brolley 7b4cad4ae6 2007-11-07 Dave Brolley <brolley@redhat.com>
* libc/machine/configure: Regenerated to pick up mep-elf changes.

        * Contribute mep-elf from Red Hat
        2006-10-27  DJ Delorie  <dj@redhat.com>

        * libc/include/machine/setjmp.h: Add MeP support.

        2003-04-17  DJ Delorie  <dj@redhat.com>

        * configure.host (mep-*-*): Support "long long" type.

        2001-06-06  DJ Delorie  <dj@redhat.com>

        * libc/include/machine/ieeefp.h (mep): Support little endian too.

        2001-05-14  DJ Delorie  <dj@redhat.com>

        * configure.host: Add mep's machine_dir.
        * libc/include/setjmp.h: Add mep support.
        * libc/machine/mep: New.
        * libc/machine/mep/setjmp.S: New, support mep's setjmp/longjmp.

        2001-05-04  DJ Delorie  <dj@redhat.com>

        * configure.host: Add mep.
        * libc/include/machine/ieeefp.h: Ditto.
2007-11-07 21:42:24 +00:00
DJ Delorie 69bfb481a8 * libc/signal/signal.c (_raise_r): Don't attempt to initialize the
signal table, just use a default, in case initialization cause
recursion.
2007-10-31 22:22:31 +00:00
Jeff Johnston 2a3a02a687 2007-10-23 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdlib/wcstombs_r.c: Add SUSV2 support for calculating
        size if output buffer is NULL.
2007-10-23 19:50:29 +00:00
Jeff Johnston 70317d8506 2007-10-17 Jeff Johnston <jjohnstn@redhat.com>
* libm/mathfp/s_logarithm.c: Fix error introduced by previous
        fix when handling negative input values.  Make function
        consistent with math directory and glibc version such that
        inf and nan values return inf and nan respectively with no
        errno setting.
        * libm/mathfp/sf_logarithm.c: Ditto.
        * libm/math/w_log.c: Set errno to ERANGE when input is 0.0.
        * libm/math/wf_log.c: Ditto.
        * libm/math/w_log10.c: Ditto.
        * libm/math/wf_log10.c: Ditto.
2007-10-18 00:03:32 +00:00
Jeff Johnston 923f9573a3 2007-10-17 Jeff Johnston <jjohnstn@redhat.com>
* libm/mathfp/s_logarithm.c: Fix case where input is 0 to
        return -inf.
        * libm/mathfp/sf_logarithm.c: Ditto.
2007-10-17 20:14:49 +00:00
Jeff Johnston 8b6308401d 2007-10-17 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/i386/machine/fastmath.h: New file.
2007-10-17 19:21:32 +00:00
Eric Blake c99e78b85c * libc/stdio/vfprintf.c (_VFPRINTF_R) [__OPTIMIZE_SIZE__]:
Correctly nest else within conditionals.
Reported by Artur Lipowski.
2007-10-13 15:26:20 +00:00
Nick Clifton 97f0a0ecf6 * libc/sys/linux/dl/do-lookup.h (FCT): Support symbols with the STT_COMMON type. 2007-10-09 16:01:43 +00:00
Ben Elliston b7bc4cccd6 * libm/machine/spu/headers/acosd2.h: Include spu_intrinsics.h
before simdmath.h to get a definition for `vector'.
	* libm/machine/spu/headers/asind2.h: Likewise.
2007-10-09 04:24:11 +00:00
Jeff Johnston 1671fbe1ca 2007-09-28 Patrick Mansfield <patmans@us.ibm.com>
* libm/machine/spu/headers/dom_chkd_less_than.h: New file.
	* libm/machine/spu/headers/dom_chkd_negone_one.h: Ditto.
	* libm/machine/spu/headers/dom_chkf_less_than.h: Ditto.
	* libm/machine/spu/headers/dom_chkf_negone_one.h: Ditto.
	* libm/machine/spu/headers/acos.h: Add domain check.
	* libm/machine/spu/headers/acosf.h: Ditto.
	* libm/machine/spu/headers/acosh.h: Ditto.
	* libm/machine/spu/headers/acoshf.h: Ditto.
	* libm/machine/spu/headers/asin.h: Ditto.
	* libm/machine/spu/headers/asinf.h: Ditto.
	* libm/machine/spu/headers/atanh.h: Ditto.
	* libm/machine/spu/headers/atanhf.h: Ditto.
	* libm/machine/spu/headers/fmod.h: Ditto.
	* libm/machine/spu/headers/fmodf.h: Ditto.
	* libm/machine/spu/headers/log.h: Ditto.
	* libm/machine/spu/headers/log10.h: Ditto.
	* libm/machine/spu/headers/log1p.h: Ditto.
	* libm/machine/spu/headers/log1pf.h: Ditto.
	* libm/machine/spu/headers/log2.h: Ditto.
	* libm/machine/spu/headers/log2f.h: Ditto.
	* libm/machine/spu/headers/sqrt.h: Ditto.
	* libm/machine/spu/headers/sqrtf.h: Ditto.
	* libm/machine/spu/headers/tgamma.h: Ditto.
	* libm/machine/spu/headers/tgammaf.h: Ditto.
2007-09-28 18:58:10 +00:00
Jeff Johnston e30a7b84aa 2007-09-28 Patrick Mansfield <patmans@us.ibm.com>
* libm/machine/spu/Makefile.am: Add new C files.
	* libm/machine/spu/Makefile.in: Regenerate.
	* libm/machine/spu/headers/acos.h: New file.
	* libm/machine/spu/headers/acosd2.h: Ditto.
	* libm/machine/spu/headers/acosf.h: Ditto.
	* libm/machine/spu/headers/acosf4.h: Ditto.
	* libm/machine/spu/headers/acosh.h: Ditto.
	* libm/machine/spu/headers/acoshd2.h: Ditto.
	* libm/machine/spu/headers/acoshf.h: Ditto.
	* libm/machine/spu/headers/acoshf4.h: Ditto.
	* libm/machine/spu/headers/asin.h: Ditto.
	* libm/machine/spu/headers/asind2.h: Ditto.
	* libm/machine/spu/headers/asinf.h: Ditto.
	* libm/machine/spu/headers/asinf4.h: Ditto.
	* libm/machine/spu/headers/asinh.h: Ditto.
	* libm/machine/spu/headers/asinhd2.h: Ditto.
	* libm/machine/spu/headers/asinhf.h: Ditto.
	* libm/machine/spu/headers/asinhf4.h: Ditto.
	* libm/machine/spu/headers/atan.h: Ditto.
	* libm/machine/spu/headers/atan2.h: Ditto.
	* libm/machine/spu/headers/atan2d2.h: Ditto.
	* libm/machine/spu/headers/atan2f.h: Ditto.
	* libm/machine/spu/headers/atan2f4.h: Ditto.
	* libm/machine/spu/headers/atand2.h: Ditto.
	* libm/machine/spu/headers/atanf4.h: Ditto.
	* libm/machine/spu/headers/atanh.h: Ditto.
	* libm/machine/spu/headers/atanhd2.h: Ditto.
	* libm/machine/spu/headers/atanhf.h: Ditto.
	* libm/machine/spu/headers/atanhf4.h: Ditto.
	* libm/machine/spu/headers/cos.h: Ditto.
	* libm/machine/spu/headers/cos_sin.h: Ditto.
	* libm/machine/spu/headers/cosd2.h: Ditto.
	* libm/machine/spu/headers/cosf.h: Ditto.
	* libm/machine/spu/headers/cosf4.h: Ditto.
	* libm/machine/spu/headers/cosh.h: Ditto.
	* libm/machine/spu/headers/coshd2.h: Ditto.
	* libm/machine/spu/headers/coshf.h: Ditto.
	* libm/machine/spu/headers/coshf4.h: Ditto.
	* libm/machine/spu/headers/divd2.h: Ditto.
	* libm/machine/spu/headers/divf4.h: Ditto.
	* libm/machine/spu/headers/erf.h: Ditto.
	* libm/machine/spu/headers/erf_utils.h: Ditto.
	* libm/machine/spu/headers/erfc.h: Ditto.
	* libm/machine/spu/headers/erfcd2.h: Ditto.
	* libm/machine/spu/headers/erfcf.h: Ditto.
	* libm/machine/spu/headers/erfcf4.h: Ditto.
	* libm/machine/spu/headers/erfd2.h: Ditto.
	* libm/machine/spu/headers/erff.h: Ditto.
	* libm/machine/spu/headers/erff4.h: Ditto.
	* libm/machine/spu/headers/exp.h: Ditto.
	* libm/machine/spu/headers/exp2.h: Ditto.
	* libm/machine/spu/headers/exp2d2.h: Ditto.
	* libm/machine/spu/headers/exp2f4.h: Ditto.
	* libm/machine/spu/headers/expd2.h: Ditto.
	* libm/machine/spu/headers/expf4.h: Ditto.
	* libm/machine/spu/headers/expm1.h: Ditto.
	* libm/machine/spu/headers/expm1d2.h: Ditto.
	* libm/machine/spu/headers/expm1f.h: Ditto.
	* libm/machine/spu/headers/expm1f4.h: Ditto.
	* libm/machine/spu/headers/floord2.h: Ditto.
	* libm/machine/spu/headers/floorf4.h: Ditto.
	* libm/machine/spu/headers/hypot.h: Ditto.
	* libm/machine/spu/headers/hypotd2.h: Ditto.
	* libm/machine/spu/headers/hypotf.h: Ditto.
	* libm/machine/spu/headers/hypotf4.h: Ditto.
	* libm/machine/spu/headers/isnan.h: Ditto.
	* libm/machine/spu/headers/isnand2.h: Ditto.
	* libm/machine/spu/headers/isnanf.h: Ditto.
	* libm/machine/spu/headers/isnanf4.h: Ditto.
	* libm/machine/spu/headers/ldexpd2.h: Ditto.
	* libm/machine/spu/headers/ldexpf4.h: Ditto.
	* libm/machine/spu/headers/lgamma.h: Ditto.
	* libm/machine/spu/headers/lgammad2.h: Ditto.
	* libm/machine/spu/headers/lgammaf.h: Ditto.
	* libm/machine/spu/headers/lgammaf4.h: Ditto.
	* libm/machine/spu/headers/log.h: Ditto.
	* libm/machine/spu/headers/log10.h: Ditto.
	* libm/machine/spu/headers/log10d2.h: Ditto.
	* libm/machine/spu/headers/log1p.h: Ditto.
	* libm/machine/spu/headers/log1pd2.h: Ditto.
	* libm/machine/spu/headers/log1pf.h: Ditto.
	* libm/machine/spu/headers/log1pf4.h: Ditto.
	* libm/machine/spu/headers/log2.h: Ditto.
	* libm/machine/spu/headers/log2d2.h: Ditto.
	* libm/machine/spu/headers/log2f4.h: Ditto.
	* libm/machine/spu/headers/logbf.h: Ditto.
	* libm/machine/spu/headers/logbf4.h: Ditto.
	* libm/machine/spu/headers/logd2.h: Ditto.
	* libm/machine/spu/headers/logf4.h: Ditto.
	* libm/machine/spu/headers/nearbyintf.h: Ditto.
	* libm/machine/spu/headers/nearbyintf4.h: Ditto.
	* libm/machine/spu/headers/nextafter.h: Ditto.
	* libm/machine/spu/headers/nextafterd2.h: Ditto.
	* libm/machine/spu/headers/nextafterf.h: Ditto.
	* libm/machine/spu/headers/nextafterf4.h: Ditto.
	* libm/machine/spu/headers/pow.h: Ditto.
	* libm/machine/spu/headers/powd2.h: Ditto.
	* libm/machine/spu/headers/powf.h: Ditto.
	* libm/machine/spu/headers/powf4.h: Ditto.
	* libm/machine/spu/headers/recipd2.h: Ditto.
	* libm/machine/spu/headers/recipf4.h: Ditto.
	* libm/machine/spu/headers/rintf.h: Ditto.
	* libm/machine/spu/headers/rintf4.h: Ditto.
	* libm/machine/spu/headers/scalbnf4.h: Ditto.
	* libm/machine/spu/headers/signbit.h: Ditto.
	* libm/machine/spu/headers/signbitd2.h: Ditto.
	* libm/machine/spu/headers/simdmath.h: Ditto.
	* libm/machine/spu/headers/sin.h: Ditto.
	* libm/machine/spu/headers/sincos.h: Ditto.
	* libm/machine/spu/headers/sincosd2.h: Ditto.
	* libm/machine/spu/headers/sincosf.h: Ditto.
	* libm/machine/spu/headers/sincosf4.h: Ditto.
	* libm/machine/spu/headers/sind2.h: Ditto.
	* libm/machine/spu/headers/sinf.h: Ditto.
	* libm/machine/spu/headers/sinf4.h: Ditto.
	* libm/machine/spu/headers/sinh.h: Ditto.
	* libm/machine/spu/headers/sinhd2.h: Ditto.
	* libm/machine/spu/headers/sinhf.h: Ditto.
	* libm/machine/spu/headers/sinhf4.h: Ditto.
	* libm/machine/spu/headers/sqrtd2.h: Ditto.
	* libm/machine/spu/headers/sqrtf.h: Ditto.
	* libm/machine/spu/headers/sqrtf4.h: Ditto.
	* libm/machine/spu/headers/tan.h: Ditto.
	* libm/machine/spu/headers/tand2.h: Ditto.
	* libm/machine/spu/headers/tanf.h: Ditto.
	* libm/machine/spu/headers/tanf4.h: Ditto.
	* libm/machine/spu/headers/tanh.h: Ditto.
	* libm/machine/spu/headers/tanhd2.h: Ditto.
	* libm/machine/spu/headers/tanhf.h: Ditto.
	* libm/machine/spu/headers/tanhf4.h: Ditto.
	* libm/machine/spu/headers/tgamma.h: Ditto.
	* libm/machine/spu/headers/tgammad2.h: Ditto.
	* libm/machine/spu/headers/tgammaf.h: Ditto.
	* libm/machine/spu/headers/tgammaf4.h: Ditto.
	* libm/machine/spu/headers/truncd2.h: Ditto.
	* libm/machine/spu/headers/truncf4.h: Ditto.
	* libm/machine/spu/log2.c: Ditto.
	* libm/machine/spu/s_asinh.c: Ditto.
	* libm/machine/spu/s_atan.c: Ditto.
	* libm/machine/spu/s_cos.c: Ditto.
	* libm/machine/spu/s_erf.c: Ditto.
	* libm/machine/spu/s_expm1.c: Ditto.
	* libm/machine/spu/s_isnan.c: Ditto.
	* libm/machine/spu/s_log1p.c: Ditto.
	* libm/machine/spu/s_nextafter.c: Ditto.
	* libm/machine/spu/s_sin.c: Ditto.
	* libm/machine/spu/s_tan.c: Ditto.
	* libm/machine/spu/s_tanh.c: Ditto.
	* libm/machine/spu/sf_asinh.c: Ditto.
	* libm/machine/spu/sf_cos.c: Ditto.
	* libm/machine/spu/sf_erf.c: Ditto.
	* libm/machine/spu/sf_expm1.c: Ditto.
	* libm/machine/spu/sf_log1p.c: Ditto.
	* libm/machine/spu/sf_logb.c: Ditto.
	* libm/machine/spu/sf_nearbyint.c: Ditto.
	* libm/machine/spu/sf_nextafter.c: Ditto.
	* libm/machine/spu/sf_rint.c: Ditto.
	* libm/machine/spu/sf_sin.c: Ditto.
	* libm/machine/spu/sf_tan.c: Ditto.
	* libm/machine/spu/sf_tanh.c: Ditto.
	* libm/machine/spu/w_acos.c: Ditto.
	* libm/machine/spu/w_acosh.c: Ditto.
	* libm/machine/spu/w_asin.c: Ditto.
	* libm/machine/spu/w_atan2.c: Ditto.
	* libm/machine/spu/w_atanh.c: Ditto.
	* libm/machine/spu/w_cosh.c: Ditto.
	* libm/machine/spu/w_exp.c: Ditto.
	* libm/machine/spu/w_exp2.c: Ditto.
	* libm/machine/spu/w_hypot.c: Ditto.
	* libm/machine/spu/w_lgamma.c: Ditto.
	* libm/machine/spu/w_log.c: Ditto.
	* libm/machine/spu/w_log10.c: Ditto.
	* libm/machine/spu/w_pow.c: Ditto.
	* libm/machine/spu/w_sincos.c: Ditto.
	* libm/machine/spu/w_sinh.c: Ditto.
	* libm/machine/spu/w_tgamma.c: Ditto.
	* libm/machine/spu/wf_acos.c: Ditto.
	* libm/machine/spu/wf_acosh.c: Ditto.
	* libm/machine/spu/wf_asin.c: Ditto.
	* libm/machine/spu/wf_atan2.c: Ditto.
	* libm/machine/spu/wf_atanh.c: Ditto.
	* libm/machine/spu/wf_cosh.c: Ditto.
	* libm/machine/spu/wf_hypot.c: Ditto.
	* libm/machine/spu/wf_lgamma.c: Ditto.
	* libm/machine/spu/wf_pow.c: Ditto.
	* libm/machine/spu/wf_sincos.c: Ditto.
	* libm/machine/spu/wf_sinh.c: Ditto.
	* libm/machine/spu/wf_sqrt.c: Ditto.
	* libm/machine/spu/wf_tgamma.c: Ditto.
2007-09-28 18:44:24 +00:00
Jeff Johnston 505ea71432 2007-09-28 Patrick Mansfield <patmans@us.ibm.com>
* configure.host: Define _POSIX_MODE to match the existing vector
	math code, as we don't support the matherr callout.
	* libm/machine/spu/Makefile.am: New file.
	* libm/machine/spu/Makefile.in: Auto-generated.
	* libm/machine/spu/headers/atanf.h: New file.
	* libm/machine/spu/headers/cbrt.h: Ditto.
	* libm/machine/spu/headers/cbrtf.h: Ditto.
	* libm/machine/spu/headers/ceil.h: Ditto.
	* libm/machine/spu/headers/ceilf.h: Ditto.
	* libm/machine/spu/headers/copysign.h: Ditto.
	* libm/machine/spu/headers/copysignf.h: Ditto.
	* libm/machine/spu/headers/exp2f.h: Ditto.
	* libm/machine/spu/headers/expf.h: Ditto.
	* libm/machine/spu/headers/fabs.h: Ditto.
	* libm/machine/spu/headers/fabsf.h: Ditto.
	* libm/machine/spu/headers/fdim.h: Ditto.
	* libm/machine/spu/headers/fdimf.h: Ditto.
	* libm/machine/spu/headers/floor.h: Ditto.
	* libm/machine/spu/headers/floorf.h: Ditto.
	* libm/machine/spu/headers/fma.h: Ditto.
	* libm/machine/spu/headers/fmaf.h: Ditto.
	* libm/machine/spu/headers/fmax.h: Ditto.
	* libm/machine/spu/headers/fmaxf.h: Ditto.
	* libm/machine/spu/headers/fmin.h: Ditto.
	* libm/machine/spu/headers/fminf.h: Ditto.
	* libm/machine/spu/headers/fmod.h: Ditto.
	* libm/machine/spu/headers/fmodf.h: Ditto.
	* libm/machine/spu/headers/frexp.h: Ditto.
	* libm/machine/spu/headers/frexpf.h: Ditto.
	* libm/machine/spu/headers/ilogb.h: Ditto.
	* libm/machine/spu/headers/ilogbf.h: Ditto.
	* libm/machine/spu/headers/ldexp.h: Ditto.
	* libm/machine/spu/headers/ldexpf.h: Ditto.
	* libm/machine/spu/headers/llrint.h: Ditto.
	* libm/machine/spu/headers/llrintf.h: Ditto.
	* libm/machine/spu/headers/llround.h: Ditto.
	* libm/machine/spu/headers/llroundf.h: Ditto.
	* libm/machine/spu/headers/log10f.h: Ditto.
	* libm/machine/spu/headers/log2f.h: Ditto.
	* libm/machine/spu/headers/logf.h: Ditto.
	* libm/machine/spu/headers/lrint.h: Ditto.
	* libm/machine/spu/headers/lrintf.h: Ditto.
	* libm/machine/spu/headers/lround.h: Ditto.
	* libm/machine/spu/headers/lroundf.h: Ditto.
	* libm/machine/spu/headers/nearbyint.h: Ditto.
	* libm/machine/spu/headers/remainder.h: Ditto.
	* libm/machine/spu/headers/remainderf.h: Ditto.
	* libm/machine/spu/headers/remquo.h: Ditto.
	* libm/machine/spu/headers/remquof.h: Ditto.
	* libm/machine/spu/headers/rint.h: Ditto.
	* libm/machine/spu/headers/round.h: Ditto.
	* libm/machine/spu/headers/roundf.h: Ditto.
	* libm/machine/spu/headers/scalbn.h: Ditto.
	* libm/machine/spu/headers/scalbnf.h: Ditto.
	* libm/machine/spu/headers/sqrt.h: Ditto.
	* libm/machine/spu/headers/trunc.h: Ditto.
	* libm/machine/spu/headers/truncf.h: Ditto.
	* libm/machine/spu/headers/vec_literal.h: Ditto.
	* libm/machine/spu/llrint.c: Ditto.
	* libm/machine/spu/llrintf.c: Ditto.
	* libm/machine/spu/llround.c: Ditto.
	* libm/machine/spu/llroundf.c: Ditto.
	* libm/machine/spu/log2f.c: Ditto.
	* libm/machine/spu/s_cbrt.c: Ditto.
	* libm/machine/spu/s_ceil.c: Ditto.
	* libm/machine/spu/s_copysign.c: Ditto.
	* libm/machine/spu/s_fabs.c: Ditto.
	* libm/machine/spu/s_fdim.c: Ditto.
	* libm/machine/spu/s_floor.c: Ditto.
	* libm/machine/spu/s_fma.c: Ditto.
	* libm/machine/spu/s_fmax.c: Ditto.
	* libm/machine/spu/s_fmin.c: Ditto.
	* libm/machine/spu/s_frexp.c: Ditto.
	* libm/machine/spu/s_ilogb.c: Ditto.
	* libm/machine/spu/s_ldexp.c: Ditto.
	* libm/machine/spu/s_lrint.c: Ditto.
	* libm/machine/spu/s_lround.c: Ditto.
	* libm/machine/spu/s_nearbyint.c: Ditto.
	* libm/machine/spu/s_remquo.c: Ditto.
	* libm/machine/spu/s_rint.c: Ditto.
	* libm/machine/spu/s_round.c: Ditto.
	* libm/machine/spu/s_scalbn.c: Ditto.
	* libm/machine/spu/s_trunc.c: Ditto.
	* libm/machine/spu/sf_atan.c: Ditto.
	* libm/machine/spu/sf_cbrt.c: Ditto.
	* libm/machine/spu/sf_ceil.c: Ditto.
	* libm/machine/spu/sf_copysign.c: Ditto.
	* libm/machine/spu/sf_fabs.c: Ditto.
	* libm/machine/spu/sf_fdim.c: Ditto.
	* libm/machine/spu/sf_floor.c: Ditto.
	* libm/machine/spu/sf_fma.c: Ditto.
	* libm/machine/spu/sf_fmax.c: Ditto.
	* libm/machine/spu/sf_fmin.c: Ditto.
	* libm/machine/spu/sf_frexp.c: Ditto.
	* libm/machine/spu/sf_ilogb.c: Ditto.
	* libm/machine/spu/sf_ldexp.c: Ditto.
	* libm/machine/spu/sf_lrint.c: Ditto.
	* libm/machine/spu/sf_lround.c: Ditto.
	* libm/machine/spu/sf_remquo.c: Ditto.
	* libm/machine/spu/sf_round.c: Ditto.
	* libm/machine/spu/sf_scalbn.c: Ditto.
	* libm/machine/spu/sf_trunc.c: Ditto.
	* libm/machine/spu/w_fmod.c: Ditto.
	* libm/machine/spu/w_remainder.c: Ditto.
	* libm/machine/spu/w_sqrt.c: Ditto.
	* libm/machine/spu/wf_exp.c: Ditto.
	* libm/machine/spu/wf_exp2.c: Ditto.
	* libm/machine/spu/wf_fmod.c: Ditto.
	* libm/machine/spu/wf_log.c: Ditto.
	* libm/machine/spu/wf_log10.c: Ditto.
	* libm/machine/spu/wf_remainder.c: Ditto.
2007-09-28 18:32:57 +00:00
Jeff Johnston 364faf910a 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/sys/uio.h: New file for readv and writev use.
2007-09-21 21:11:14 +00:00
Jeff Johnston 2f3d28fca2 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/sched.h: New file, just include sys/sched.h.
        * libc/machine/spu/sys/sched.h: New file, has just sched_yield
        prototype.
        * libc/machine/spu/sys/utime.h: New file, has utime prototype and
        struct utimbuf definition.
2007-09-21 21:02:15 +00:00
Jeff Johnston 63fbe1fd64 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/sys/dirent.h: New file, add prototypes and SPU
        specific struct and typedef.
2007-09-21 20:36:02 +00:00
Jeff Johnston cebf33e402 2007-09-18 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/sys/types.h: Use __dev_t, __uid_t, and __gid_t to
        typedef dev_t, gid_t, and uid_t.
        * libc/include/sys/_types.h: Move previous dev_t, uid_t and gid_t
        types.h code to here, but typedef __dev_t, __uid_t, and __gid_t instead.
        Change to lower case for all __foo_t_defined names.
        * libc/machine/spu/machine/_types.h: Add SPU specific __dev_t,
        __uid_t, and __gid_t making them all four bytes. Change to lower case
        for all __foo_t_defined names.
2007-09-18 20:05:17 +00:00
Jeff Johnston 3908c98592 2007-09-18 Jeff Johnston <jjohnstn@redhat.com>
* libc/reent/renamer.c: New file.
        * libc/reent/Makefile.am: Add new file.
        * libc/reent/Makefile.in: Regenerated.
        * libc/stdio/rename.c: Break out _rename_r code into reent/renamer.c
        and add check for rename syscall.
2007-09-18 19:32:43 +00:00
Eric Blake ba21046d03 Obey POSIX on printf("%.s", (char*)NULL).
* libc/stdio/vfprintf.c (_VFPRINTF_R): Take precision into account
for %s on NULL.  Skip NULL check when optimizing for size.
2007-09-17 20:14:29 +00:00
Jeff Johnston e5ae72300f 2007-09-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/_types.h: Protect all types with flag
        checks to allow definition in machine/_types.h.
2007-09-07 21:24:55 +00:00
Jeff Johnston 36fe6da675 2007-09-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/sys/_types.h: Add _fpos_t and _fpos64_t
        definitions in light of the previous change.
2007-09-07 21:18:03 +00:00
Jeff Johnston dde223343c 2007-09-07 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/machine/_default_types.h: New file, contains what
	was previously in libc/include/machine/_types.h.
	* libc/include/machine/_types.h: Now only includes
	machine/_default_types.h.
	* libc/include/sys/reent.h: Remove _fpos_t and _fpos64_t.
	* libc/include/sys/_types.h: Move _fpos_t and _fpos64_t to here,
	with conditional declarations.
	* libc/machine/spu/machine/_types.h: New file, add SPU specific
	typedefs for _fpos_t and _fpos64_t.
2007-09-07 21:16:25 +00:00
Jeff Johnston 78e66fb978 2007-09-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/math.h (_M_LOG2E): Replace with..
        (_M_LOG2_E): New macro.
        (log2, log2f, M_LOG2_E): Use _M_LOG2_E.
2007-09-07 15:30:59 +00:00
Brian Dessent 345c159562 * libc/reent/getreent.c: Allow for case where __getreent is
defined as a macro.
2007-09-07 00:45:55 +00:00
Jeff Johnston 6494ee837c 2007-09-06 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/math.h (_M_LOG2E): New log2 of e macro.
        (log2): Use _M_LOG2E instead of M_LOG2E.
        (log2f): Ditto.
        (M_LOG2E): Define to be _M_LOG2E.
2007-09-06 19:51:46 +00:00
Jeff Johnston 86a934d225 2007-09-04 Kazunori Asayama <asayama@sm.sony.co.jp>
* libm/math/wf_tgamma.c: Add missing include.
2007-09-04 17:33:10 +00:00
Jeff Johnston 6ddf8bef40 2007-08-31 Antony King <antony.king@st.com>
* libc/stdlib/mprec.h [_DOUBLE_IS_32BITS}: Define IEEE_Arith
        bits and redefine associated dword0 macro (rvalue issue).
        * libc/stdio/vfieeefp.h: Ditto.
        * libc/stdlib/strtod.c: Add checks for _DOUBLE_IS_32BITS
        to prevent setting dword1 which is an rvalue only.
2007-08-31 21:21:27 +00:00
Jeff Johnston d4a2788652 2007-08-28 Hans Kester <hans.kester@ellips.nl>
* configure.host: Added support for x86_64.
        * libc/include/machine/ieeefp.h: Define __IEEE_LITTLE_ENDIAN for x86_64.
        * libc/include/machine/setjmp.h: Define _JBTYPE and _JBLEN for x86_64.
        * libc/machine/x86_64/aclocal.m4: Generated.
        * libc/machine/x86_64/configure.in: New.
        * libc/machine/x86_64/configure: Generated.
        * libc/machine/x86_64/Makefile.am: New.
        * libc/machine/x86_64/Makefile.in: Generated.
        * libc/machine/x86_64/setjmp.S: New.
        * libc/machine/x86_64/memcpy.S: New.
        * libc/machine/x86_64/memset.S: New.
        * libc/machine/configure.in: Added support for x86_64.
        * libc/machine/configure: Regenerated.
2007-08-28 21:56:50 +00:00
Jeff Johnston 309faeb5ca 2007-08-24 Jeff Johnston <jjohnstn@redhat.com>
* libm/common/sf_lround.c (lroundf): Cast sizeof calculation
        to int before comparing it to a signed int value.
2007-08-24 20:49:59 +00:00
Hans-Peter Nilsson 8d44415e4f * libc/machine/cris/sys/errno.h (ECANCELED, ENOKEY, EKEYEXPIRED)
(EKEYREVOKED, EKEYREJECTED, EOWNERDEAD, ENOTRECOVERABLE, ENOTSUP):
	Define.
2007-08-23 23:40:28 +00:00
Jeff Johnston e6e56f7c72 2007-08-23 Hidetaka Takano <hidetaka.takano@glb.toshiba.co.jp>
Reduce the memory consumption of variable argument functions
        for SPU (cell):
        * libc/machine/spu/Makefile.am: Replace printf/scanf family C sources
          to assembler sources.
        * libc/machine/spu/Makefile.in: Regenerated.
        * libc/machine/spu/stdio.c: Add __check_init function wrapping
          CHECK_INIT macro to use from assembler routines.
        * libc/machine/spu/c99ppe.h: Add definitions for assembler code.
        * libc/machine/spu/fiprintf.S: New file.
        * libc/machine/spu/fiscanf.S: Ditto.
        * libc/machine/spu/fprintf.S: Ditto.
        * libc/machine/spu/fscanf.S: Ditto.
        * libc/machine/spu/iprintf.S: Ditto.
        * libc/machine/spu/iscanf.S: Ditto.
        * libc/machine/spu/printf.S: Ditto.
        * libc/machine/spu/scanf.S: Ditto.
        * libc/machine/spu/siprintf.S: Ditto.
        * libc/machine/spu/siscanf.S: Ditto.
        * libc/machine/spu/sniprintf.S: Ditto.
        * libc/machine/spu/snprintf.S: Ditto.
        * libc/machine/spu/sprintf.S: Ditto.
        * libc/machine/spu/sscanf.S: Ditto.
        * libc/machine/spu/stack_reg_va.S: Ditto.
        * libc/machine/spu/syscall.def: Ditto. (for maintenance)
        * libc/machine/spu/mk_syscalls: Ditto. (for maintenance)
        * libc/machine/spu/fiprintf.c: Removed. (Replaced by .S)
        * libc/machine/spu/fiscanf.c: Ditto.
        * libc/machine/spu/fprintf.c: Ditto.
        * libc/machine/spu/fscanf.c: Ditto.
        * libc/machine/spu/iprintf.c: Ditto.
        * libc/machine/spu/iscanf.c: Ditto.
        * libc/machine/spu/printf.c: Ditto.
        * libc/machine/spu/scanf.c: Ditto.
        * libc/machine/spu/siprintf.c: Ditto.
        * libc/machine/spu/siscanf.c: Ditto.
        * libc/machine/spu/sniprintf.c: Ditto.
        * libc/machine/spu/snprintf.c: Ditto.
        * libc/machine/spu/sprintf.c: Ditto.
        * libc/machine/spu/sscanf.c: Ditto.
2007-08-23 18:45:22 +00:00
Jeff Johnston 90c6084b56 2007-08-03 Ralf Corsepius <ralf.corsepius@rtems.org>
* libc/include/tar.h: New.
2007-08-03 21:03:40 +00:00
Jeff Johnston 8fb8816259 2007-08-03 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/intl/Makefile.am: Change stpcpy reference to
        lcl_stpcpy to avoid conflict with new stpcpy.c in libc/string.
        * libc/sys/linux/intl/Makefile.in: Regenerated.
        * libc/sys/linux/intl/stpcpy.c: Renamed to...
        * libc/sys/linux/intl/lcl_stpcpy.c: ..this.
2007-08-03 21:01:11 +00:00
Eric Blake 6ddcdb9da5 Implement fmemopen and open_memstream.
* libc/stdio/fmemopen.c (_fmemopen_r, fmemopen): New file.
* libc/stdio/open_memstream.c (_open_memstream_r, open_memstream):
New file.
* libc/stdio/fopencookie.c (fcwriter): Minor optimization.
* libc/include/stdio.h (dprintf, vdprintf): Group all POSIX 200x
functions together.
(fmemopen, open_memstream): Declare new functions.
* libc/stdio/stdio.tex: Document them.
* libc/stdio/Makefile.am (ELIX_4_SOURCES, CHEWOUT_FILES): Add
fmemopen and open_memstream.
* libc/stdio/Makefile.in: Regenerate.
2007-08-02 20:23:06 +00:00
Eric Blake f7c978d50f More POSIX stream corner cases.
* libc/stdio/findfp.c (__sinit): Open stderr read/write.
* libc/stdio/fdopen.c (_fdopen_r): Set O_APPEND on fd when
requested.
* libc/stdio64/fdopen64.c (_fdopen64_r): Likewise.
2007-07-31 20:49:40 +00:00
Eric Blake 391b530a05 Fix 'make info'.
* libc/stdio/stdio.tex: Add missing include.
* libc/stdio/vfprintf.c: Use expected node name.
* libc/stdio/vfscanf.c: Likewise.
* libc/stdio/sscanf.c: Likewise.
* libc/stdio/sprintf.c: Likewise.
* libc/stdio/siscanf.c: Likewise.
* libc/stdio/siprintf.c: Likewise.
* libc/stdio/fopencookie.c: Quote raw {}.
Reported by DJ Delorie.
2007-07-19 03:42:21 +00:00
Jeff Johnston 5fdec53f8c Fix date type for 1.15 release. 2007-07-18 18:27:04 +00:00
Eric Blake 08146e5adb Fix fflush issues.
* libc/stdio/fflush.c (_fflush_r): New function.
(fflush): Fix reentrancy and large offset behavior.
* libc/include/stdio.h (_fflush_r): Add prototype.
* libc/stdio/fclose.c (_fclose_r): All fflush callers changed.
* libc/stdio/freopen.c (_freopen_r): Likewise.
* libc/stdio/fseek.c (_fseek_r): Likewise.
* libc/stdio/ftell.c (_ftell_r): Likewise.
* libc/stdio/fvwrite.c (__sfvwrite_r): Likewise.
* libc/stdio/refill.c (__srefill_r): Likewise.
* libc/stdio/setvbuf.c (setvbuf): Likewise.
* libc/stdio/ungetc.c (_ungetc_r): Likewise.
* libc/stdio/vfprintf.c (__sbprintf): Likewise.
* libc/stdio/wbuf.c (__swbuf_r): Likewise.
* libc/stdio64/freopen64.c (_freopen64_r): Likewise.
* libc/stdio64/fseeko64.c (_fseeko64_r): Likewise.  Defer to
32-bit version if not large file.
* libc/stdio64/ftello64.c (_ftello64_r): Likewise.
* libc/stdio64/tmpfile64.c (_tmpfile64_r): Avoid compile warning.
2007-07-13 20:37:53 +00:00
Eric Blake 88c8888127 Documentation updates.
* libc/stdio/ungetc.c: Document ungetc.
* libc/stdio/Makefile.am (CHEWOUT_FILES): Sort, match current list
of files with documentation.
* libc/stdio/Makefile.in: Regenerate.
* libc/stdio/stdio.tex: Sort and update stdio documentation index.
2007-07-13 17:07:28 +00:00
Jeff Johnston c4ccbcce6c 2007-07-11 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/math.h: Fix so C99 functions/macros are accessible
        when -std=c99 is used when compiling and not when using C89.
2007-07-11 18:09:08 +00:00
Corinna Vinschen dec27025b2 * libc/include/wchar.h: Declare wcstol, wcstoll, wcstoul,
wcstoull, _wcstol_r, _wcstoll_r, _wcstoul_r and _wcstoull_r.
	* libc/stdlib/Makefile.am (GENERAL_SOURCES): Add wcstol.c and wcstoul.c.
	(EXTENDED_SOURCES): Add wcstoll.c, wcstoll_r.c, wcstoull.c and
	wcstoull_r.c.
	(CHEWOUT_FILES): Add .def files accordingly.
	* libc/stdlib/Makefile.in: Regenerate.
	* libc/stdlib/stdlib.tex: Add documentation links for above functions.
	* libc/stdlib/strtoll.c: Fix portability note.
	* libc/stdlib/strtoull.c: Ditto.
	* libc/stdlib/wcstol.c: New file.
	* libc/stdlib/wcstoll.c: New file.
	* libc/stdlib/wcstoll_r.c: New file.
	* libc/stdlib/wcstoul.c: New file.
	* libc/stdlib/wcstoull.c: New file.
	* libc/stdlib/wcstoull_r.c: New file.
2007-07-06 20:03:28 +00:00
Jeff Johnston 0be2bc94e7 2007-07-06 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/time.h (gettimeofday): Change to proper
        prototype where second parameter is void *.
        * libc/reent/gettimeofdayr.c (_gettimeofday_r): Change prototype
        accordingly.
        * libc/include/reent.h: Fix prototype for _gettimeofday_r.
        * libc/sys/arm/syscalls.c: Fix gettimeofday function signature.
        * libc/sys/rdos/gettod.c: Ditto.
        * libc/sys/sh/syscalls.c: Ditto.
        * libc/time/time.c (time): Change call to _gettimeofday_r
        to pass NULL as 2nd argument.
2007-07-06 16:56:30 +00:00
Jeff Johnston ba9af2d7ec 2007-07-06 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/intl/dcigettext.c: Define HAVE_STPCPY.
        * libc/sys/linux/intl/l10nflist.c: Ditto.
2007-07-06 16:42:48 +00:00
Corinna Vinschen a37215120b * libc/include/wchar.h: Add prototype for wcsxfrm.
* libc/string/Makefile.am (GENERAL_SOURCES): Add wcsxfrm.c.
	(CHEWOUT_FILES): Add wcsxfrm.def.
	* libc/string/Makefile.in: Regenerate.
	* libc/string/wcsxfrm.c: New file.
	* libc/string/wcstrings.tex: Add wcsxfrm.
2007-07-04 16:18:34 +00:00
Corinna Vinschen 5d8b97a694 * libc/include/string.h: Add prototypes for stpcpy and stpncpy.
* libc/string/Makefile.am (ELIX_SOURCES): Add stpcpy.c and
	stpncpy.c.
	(CHEWOUT_FILES): Add stpcpy.def and stpncpy.def.
	* libc/string/Makefile.in: Regenerate.
	* libc/string/stpcpy.c: New file.
	* libc/string/stpncpy.c: New file.
	* libc/string/strings.tex: Add stpcpy and stpncpy.
2007-06-28 17:07:23 +00:00
Eric Blake 3473e6bd7b Support __func__ in assert, as required by C99.
* libc/stdlib/assert.c (__assert_func): New function.
	(__assert): Use __assert_func.
	* libc/include/assert.h (assert) [!NDEBUG]: Use __assert_func when
	possible.
2007-06-27 12:44:41 +00:00
Jeff Johnston be97722968 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/perror.c: Pass errno as the second argument to
        the assist call.
2007-06-20 21:54:47 +00:00
Jeff Johnston d360ef1865 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/sys/unistd.h[__SPU__]: Add lockf prototype and related
        defines; expose ftruncate, truncate and sync prototypes.
2007-06-20 21:49:06 +00:00
Jeff Johnston f75c75183f 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/sys/unistd.h[__SPU__]: Make fchdir prototype visible.
        * libc/include/sys/stat.h[__SPU__]: Make mknod and lstat prototypes
        visible.
2007-06-20 17:30:58 +00:00
Jeff Johnston 438b07b09f 2007-06-15 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/Makefile.am: Remove mktemp.c, it was left in
        from a dropped patch.
        * libc/machine/spu/Makefile.in: Regenerate.
2007-06-15 16:00:46 +00:00
Jeff Johnston c33ff7855e 2007-06-13 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/creat.c: New file copied from libc/posix/creat.c,
        it just calls open with appropriate arguments.
        * libc/machine/spu/Makefile.am: Add creat.c.
        * libc/machine/spu/Makefile.in: Regenerate.
2007-06-13 17:55:28 +00:00
Jeff Johnston ae473bdc48 2007-06-13 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/spu/Makefile.am: Re-add back setjmp.S which
        I accidentally dropped.
        * libc/machine/spu/Makefile.in: Regenerated.
2007-06-13 17:50:13 +00:00
Jeff Johnston a8b08518c1 2007-06-13 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/sys/features.h: Define _POSIX_TIMERS for spu.
        * libc/include/sys/unistd.h: Change usleep prototype to Posix
        form and move outside of OS flag checks.
        * libc/machine/spu/Makefile.am: Add sleep and usleep.
        * libc/machine/spu/Makefile.in: Regenerate.
        * libc/machine/spu/sleep.c: Copy libc/posix/sleep.c.
        * libc/machine/spu/usleep.c: Copy libc/posix/usleep.c.
2007-06-13 17:44:24 +00:00
Corinna Vinschen f4cd2a1d71 * libc/include/sys/unistd.h: Declare confstr for Cygwin.
Define confstr constants for Cygwin.  Add comment.
2007-06-11 17:33:43 +00:00
Hans-Peter Nilsson 32f67ec6ff * libc/sys/mmixware/access.c (access): Do not try to use a magic
file-handle and a direct syscall, just use _open.
	* libc/sys/mmixware/sys/syscall.h (TMPFNO): Remove this magic
	file-handle.

	* libc/sys/mmixware/_exit.c (_exit): Update comment about
	passing on the exit value.
2007-06-10 12:54:35 +00:00
Jeff Johnston 6fb374754d 2007-06-08 Jeff Johnston <jjohnstn@redhat.com>
* libc/string/strcasestr.c: New file.
        * libc/include/string.h: Add strcasestr.
        * libc/string/strings.tex: Add strcasestr.
        * libc/string/Makefile.am: Ditto.
        * libc/string/Makefile.in: Regenerated.
2007-06-08 18:38:51 +00:00
Jeff Johnston 1eeaeab855 2007-06-06 Christian Groessler <chris@groessler.org>
* libc/stdlib/ldtoa (_ldcheck): Make sure the setting of
        rnd is done after the last local variable declaration.

2007-06-06  Jeff Johnston  <jjohnstn@redhat.com>

        * libc/stdlib/mprec.h[Just_16]: Make sure that Pack_16 is defined.
2007-06-06 19:24:28 +00:00
Jeff Johnston a874abaf37 Fix entry to refer to function instead of variable. 2007-06-05 21:42:17 +00:00
Jeff Johnston a5da131d8d 2007-06-05 Christian Groessler <chris@groessler.org>
* libc/argz/argz_insert.c (delta): Move variable declaration
        to top of function in keeping with C89 standard.
2007-06-05 21:40:48 +00:00
Eric Blake 17c61d6a2c Implement funopen, fopencookie.
* libc/include/sys/reent.h (struct __sFILE, struct __sFILE64):
Switch to reentrant callbacks.
* libc/include/stdio.h (funopen): Fix declaration.
(fopencookie): Declare.
* libc/stdio/local.h (__sread, __swrite, __sseek, __sclose)
(__sseek64, __swrite64): Fix prototypes.
[__SCLE]: Pull in setmode declaration.
* libc/stdio/stdio.c (__sread, __swrite, __sseek, __sclose): Fix
reentrancy.
* libc/stdio64/stdio64.c (__sseek64_r, __swrite64_r): Delete.
(__sseek64, __swrite64): Fix reentrancy.
* libc/stdio/fseek.c (_fseek_r): Account for overflow, and fix
reentrancy.
* libc/stdio/ftell.c (_ftell_r): Likewise.
* libc/stdio/flags.c (__sflags): Don't lose __SAPP on "a+".
* libc/stdio/fclose.c (_fclose_r): Fix reentrancy.
* libc/stdio/freopen.c (_freopen_r): Likewise.
* libc/stdio/fvwrite.c (__sfvwrite_r): Likewise.
* libc/stdio/refill.c (__srefill_r): Likewise.
* libc/stdio/siscanf.c (eofread): Likewise.
* libc/stdio/sscanf.c (eofread): Likewise.
* libc/stdio/vsiscanf.c (eofread1): Likewise.
* libc/stdio/vsscanf.c (eofread1): Likewise.
* libc/stdio64/freopen64.c (_freopen64_r): Likewise.
* libc/stdio64/fseeko64.c (_fseeko64_r): Likewise.
* libc/stdio64/ftello64.c (_ftello64_r): Likewise.
* libc/stdio/fflush.c (fflush): Improve reentrancy, although more
could be fixed.
* libc/stdio/fopencookie.c (_fopencookie_r, fopencookie): New file.
* libc/stdio/funopen.c (_funopen_r, funopen): New file.
* libc/stdio/Makefile.am (ELIX_4_SOURCES, CHEWOUT_FILES): Build
new files.
* libc/stdio/Makefile.in: Regenerate.
2007-06-04 18:10:17 +00:00
Eric Blake b206478328 Avoid more compiler warnings.
* libc/stdlib/btowc.c: Add missing header.
* libc/stdlib/getopt.c (getopt_internal): Initialize variable.
* libc/stdlib/system.c (do_system) [__CYGWIN__]: Add declaration.
* libc/stdlib/wctob.c: Add missing header.
* libc/string/strcpy.c (strcpy): Avoid warnings.
* libc/string/strrchr.c (strrchr): Likewise.
2007-05-29 21:26:59 +00:00
Corinna Vinschen 76a2ee78b6 * libc/argz/argz_add_sep.c (argz_add_sep): Handle empty string
argument.
	* libc/argz/argz_append.c (argz_append): Handle empty buf argument.
	* libc/argz/argz_create_sep.c (argz_create_sep): Return (NULL, 0)
	on empty input strings.
	* libc/argz/argz_extract.c (argz_extract): Check argz_len before
	looping through argz.
	* libc/argz/argz_stringify.c (argz_stringify): Ditto.
2007-05-29 07:49:14 +00:00
Eric Blake 75acf0bb2e * libc/stdio/vfprintf.c (_VFPRINTF_R): Populate 'ox' when
handling %p.
2007-05-27 14:19:15 +00:00
Eric Blake f5c58e9a34 * libc/stdio/rewind.c (rewind): Fix regression of 2003-08-22. 2007-05-25 17:05:09 +00:00
Steve Ellcey d9a1ecc006 * ltmain.sh: Update from GCC.
* libtool.m4: Update from GCC.
	* ltsugar.m4: New. Update from GCC.
	* ltversion.m4: New. Update from GCC.
	* ltoptions.m4: New. Update from GCC.
	* ltconfig: Remove.
	* ltcf-c.sh: Remove.
	* ltcf-cxx.sh: Remove.
	* ltcf-gcj.sh: Remove.
	* src-release: Update with new libtool file list.
	* newlib/*/configure.in: invoke _LD_DECL_SED.
	* newlib/*/Makefile.am: Ensure toplevel is included in ACLOCAL_AMFLAGS.
	* Regenerate subdirectories
2007-05-24 17:33:42 +00:00
Eric Blake aa5341f9ac * libc/stdio/vfprintf.c (_VFPRINTF_R): Don't truncate %p when
sizeof(void*) is 8 but sizeof(long) is 4.
* libc/stdio/vfscanf.c (__SVFSCANF_R): Likewise.  Fix %i scanning
of "-0x".  Support "-nan" and "inf" for %e.  Audit usage of ungetc
to fix reentrancy and bug on encoding error in multibyte locales.
Always return EOF on read error.
2007-05-24 04:25:18 +00:00
Jeff Johnston 4a9880e071 2007-05-23 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/sys/syscall.h: Update the __send_to_ppe
	prototype.
	* libc/machine/spu/fclose.c: Use the __send_to_ppe return value
	instead of the slot 0 value, remove any now unused variables, and
	for some cases, now store the result in an int vs int*.
	* libc/machine/spu/feof.c: Ditto.
	* libc/machine/spu/ferror.c: Ditto.
	* libc/machine/spu/fflush.c: Ditto.
	* libc/machine/spu/fgetc.c: Ditto.
	* libc/machine/spu/fgetpos.c: Ditto.
	* libc/machine/spu/fgets.c: Ditto.
	* libc/machine/spu/fileno.c: Ditto.
	* libc/machine/spu/fopen.c: Ditto.
	* libc/machine/spu/fprintf.c: Ditto.
	* libc/machine/spu/fputc.c: Ditto.
	* libc/machine/spu/fputs.c: Ditto.
	* libc/machine/spu/fread.c: Ditto.
	* libc/machine/spu/freopen.c: Ditto.
	* libc/machine/spu/fscanf.c: Ditto.
	* libc/machine/spu/fseek.c: Ditto.
	* libc/machine/spu/fsetpos.c: Ditto.
	* libc/machine/spu/ftell.c: Ditto.
	* libc/machine/spu/fwrite.c: Ditto.
	* libc/machine/spu/getc.c: Ditto.
	* libc/machine/spu/getchar.c: Ditto.
	* libc/machine/spu/gets.c: Ditto.
	* libc/machine/spu/printf.c: Ditto.
	* libc/machine/spu/putc.c: Ditto.
	* libc/machine/spu/putchar.c: Ditto.
	* libc/machine/spu/puts.c: Ditto.
	* libc/machine/spu/remove.c: Ditto.
	* libc/machine/spu/rename.c: Ditto.
	* libc/machine/spu/scanf.c: Ditto.
	* libc/machine/spu/setvbuf.c: Ditto.
	* libc/machine/spu/snprintf.c: Ditto.
	* libc/machine/spu/sprintf.c: Ditto.
	* libc/machine/spu/sscanf.c: Ditto.
	* libc/machine/spu/tmpfile.c: Ditto.
	* libc/machine/spu/tmpnam.c: Ditto.
	* libc/machine/spu/ungetc.c: Ditto.
	* libc/machine/spu/vfprintf.c: Ditto.
	* libc/machine/spu/vfscanf.c: Ditto.
	* libc/machine/spu/vprintf.c: Ditto.
	* libc/machine/spu/vscanf.c: Ditto.
	* libc/machine/spu/vsnprintf.c: Ditto.
	* libc/machine/spu/vsprintf.c: Ditto.
	* libc/machine/spu/vsscanf.c: Ditto.
2007-05-23 21:41:17 +00:00
Eric Blake 9a3ec8622b * libc/stdio/vfscanf.c (__SVFSCANF_R): Support scanf(%1$s).
Avoid warning when !FLOATING_POINT.
* libc/stdio/vfprintf.c (_VFPRINTF_R): Simplify _NO_POS_ARGS
slightly.
2007-05-23 20:36:28 +00:00
Corinna Vinschen d48670ed78 * libc/argz/argz_create_sep.c (argz_create_sep): Initialize *argz_len
to zero.
	* libc/include/argz.h: Guard against multiple inclusion.  Guard for
	use with C++.
2007-05-23 16:36:23 +00:00