Commit Graph

15361 Commits

Author SHA1 Message Date
Yaakov Selkowitz 1f36328e7f Throughout, (mainly in fhandler*) fix remaining gcc 4.7 mismatch
warnings between regparm definitions and declarations.
* smallprint.cc (__small_vswprintf): Conditionalize declaration and
setting of l_opt for only x86_64.
* spawn.cc (child_info_spawn::worker): Remove unused 'pid' variable.
* thread.cc (verifyable_object_isvalid): Temporarily define as
non-inline with gcc 4.7+, regardless of target.
2013-05-01 01:20:37 +00:00
Christopher Faylor 92f63de367 * gendef: Fix sigfe.s typo. 2013-05-01 01:15:07 +00:00
Christopher Faylor 3cb9da1461 * spawn.cc (system_call_cleanup): Rename from pthread_cleanup. Extend
functionality.
(system_call_cleanup::system_call_cleanup): Set up signals like system()
requires.  Unblock previously-blocked signal handling.
(system_call_cleanup::~system_call_cleanup): Restore signal handling after
system().
(child_info_spawn::worker): Put signals on hold and use system_call_cleanup
class to set and restore signals rather than doing it prior to to running the
program.  Remove the ill-conceived pthread_cleanup stuff.
2013-04-30 23:51:08 +00:00
Christopher Faylor cc5bdf003f * exceptions.cc (cygwin_exception::dumpstack): Guard against wild pointer
dereference.
(CYG_EXC_CONTINUE_EXECUTION): Define based on standard Windows definition.
(CYG_EXC_CONTINUE_SEARCH): Ditto.
(exception::handle): Move andreas detection earlier.  Make comment clearer.
(signal_exit): Set core-dumped flag.
2013-04-30 23:47:01 +00:00
Christopher Faylor 9379e877da Sigh. Another missing checkin. 2013-04-30 23:44:06 +00:00
Christopher Faylor 3299379762 missing checkin 2013-04-30 23:43:28 +00:00
Christopher Faylor bfebe413bd * i686.din: New file.
* x86_64.din: New file.
* common.din: New file.
* cygwin.din: Delete.
* cygwin64.din: Delete.
* gendef: Rework to take options rather than using positional parameters.
Accept multiple files as input.
2013-04-30 23:43:08 +00:00
Jan-Benedict Glaw 28204e0849 2013-04-30 Jan-Benedict Glaw <jbglaw@lug-owl.de>
config/
	* picflag.m4: Merge from GCC.
	* dfp.m4: Ditto.
	* bootstrap-asan.mk: Ditto.
	* ChangeLog: Ditto.
2013-04-30 12:40:42 +00:00
Christopher Faylor f821269534 * autoload.cc (CreateSymbolicLinkW): Rename from CreateSymbolicLink. 2013-04-30 00:52:46 +00:00
Jeff Johnston b334e6660a 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/stdio/local.h (CHECK_INIT): Evaluate argument only once.
	(CHECK_STD_INIT): Likewise.
	* libc/stdio/fgetc.c (fgetc): Use local variable for _REENT.
	* libc/stdio/fgetwc.c (fwgetc): Likewise.
	* libc/stdio/fgetws.c (fgetws): Likewise.
	* libc/stdio/fputc.c (fputc): Likewise.
	* libc/stdio/fputwc.c (fputwc): Likewise.
	* libc/stdio/fputws.c (fputws): Likewise.
	* libc/stdio/getc.c (getc): Likewise.
	* libc/stdio/getchar.c (_getchar_r): Likewise.
	* libc/stdio/putc.c (putc): Likewise.
	* libc/stdio/putchar.c (putchar): Likewise.
	* libc/stdio/scanf.c (scanf): Likewise.
	* libc/stdio/setvbuf.c (setvbuf): Likewise.
	* libc/stdio/ungetwc.c (ungetwc): Likewise.
	* libc/stdio/vfscanf.c (VFSCANF): Likewise.
	* libc/stdio/vfwscanf.c (VFWSCANF): Likewise.
	* libc/stdio/viprintf.c (viprintf): Likewise.
	* libc/stdio/viscanf.c (viscanf): Likewise.
	* libc/stdio/vprintf.c (vprintf): Likewise.
	* libc/stdio/vscanf.c (vscanf): Likewise.
	* libc/stdio/vwprintf.c (vwprintf): Likewise.
	* libc/stdio/vwscanf.c (vwscanf): Likewise.
	* libc/stdio/wscanf.c (wscanf): Likewise.
	* libc/stdlib/ecvtbuf.c (fcvtbuf): Likewise.
	(fcvtbuf): Likewise.
	(ecvtbuf): Likewise.
	(ecvtbuf): Likewise.
	* libc/stdlib/mblen.c (mblen): Likewise.
	* libc/stdlib/mbrlen.c (mbrlen): Likewise.
	* libc/stdlib/mbrtowc.c (mbrtowc): Likewise.
	* libc/stdlib/mbtowc.c (mbtowc): Likewise.
	* libc/stdlib/rand.c (srand): Likewise.
	(rand): Likewise.
	* libc/stdlib/wcrtomb.c (wcrtomb): Likewise.
	* libc/stdlib/wctob.c (wctob): Likewise.
	* libc/stdlib/wctomb.c (wctomb): Likewise.
	* libc/string/strtok.c (strtok): Likewise.
	* libc/time/asctime.c (asctime): Likewise.
	* libc/time/gmtime.c (gmtime): Likewise.
	* libc/time/lcltime.c (lcltime): Likewise.
2013-04-29 21:06:23 +00:00
Jeff Johnston 2a55aa79a9 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/include/sys/reent.h (_REENT_INIT_PTR): Reduce code size.
2013-04-29 20:56:05 +00:00
Jeff Johnston 4b7586ff43 2013-04-29 Freddie Chopin <freddie_chopin@op.pl>
* libc/libc.texinfo: Fix @ references and change ifinfo to be
        ifnottexinfo.
        * libm/libm.texinfo: Ditto.
2013-04-29 20:02:34 +00:00
Jan-Benedict Glaw 1755232aca * config.guess: Update from config repo.
* config.sub: Ditto.
2013-04-29 15:13:53 +00:00
Corinna Vinschen 151f737ab0 * fcntl.cc (fcntl): Define as export alias for fcntl64 on x86_64. 2013-04-26 18:20:17 +00:00
Joel Sherrill 7881a70fad 2013-04-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/stdio/local.h (_STDIO_CLOSE_PER_REENT_STD_STREAMS): New define.
	* libc/stdio/findfp.c (_STDIO_CLOSE_PER_REENT_STD_STREAMS): Use define.
2013-04-25 15:29:19 +00:00
Corinna Vinschen 453c3a5fe8 * faq-programming.xml (faq.programming.64bitporting): Fix typo. 2013-04-25 10:16:01 +00:00
Corinna Vinschen 77dcee573c * faq-programming.xml (faq.programming.64bitporting): Extend entry.
(faq.programming.64bitporting-fail): New entry.
	(faq.programming.64bitporting-cygwin64): New entry.
2013-04-25 10:14:26 +00:00
Corinna Vinschen 21470a3ca9 * faq-programming.xml (faq.programming.64bitporting): Mention the
-Wformat and -Wall gcc options.
2013-04-24 17:33:30 +00:00
Corinna Vinschen 895ece0124 * faq-programming.xml (faq.programming.64bitporting): New FAQ entry.
(faq.programming.objective-c): Include gcc4.
	(faq.programming.make-execvp): Drop text discouraging usage of -j.
	(faq.programming.undeclared-functions): Drop entry.
	(faq.programming.x86-assembly): Ditto.
	(faq.programming.djgpp): Ditto.
2013-04-24 16:09:43 +00:00
Corinna Vinschen 79b4d1beb0 Fix date in latest ChangeLog entry 2013-04-24 16:06:55 +00:00
Corinna Vinschen 6fb85adeac * libc/stdlib/strtod.c: Manual update to latest algorithm from NetBSD. 2013-04-24 10:21:16 +00:00
Corinna Vinschen 09caddaaf5 * cygwinenv.sgml (cygwinenv-implemented-options): Change description
for winsymlink option to explain new implementation.
	* new-features.sgml (ov-new1.7.19): Add support for native symlinks and
	AFS.
2013-04-24 10:18:08 +00:00
Corinna Vinschen 9ecd475cd8 * autoload.cc (CreateSymbolicLink): Define.
* environ.cc (set_winsymlinks): Set allow_winsymlinks.
	(parse_thing): Change "winsymlinks" to set by function.
	* globals.cc (enum winsym_t): Define.
	(allow_winsymlinks): Define as winsym_t.
	(ro_u_afs): New R/O Unicode string.
	* mount.cc (fs_info::update): Fix comment.  Handle AFS.
	(fs_names): Add "afs".
	* mount.h (enum fs_info_type): Add afs.
	(class fs_info): Implement afs.
	* path.cc (symlink): Drop third parameter in call to symlink_worker.
	(symlink_nfs): New function.
	(symlink_native): New function.
	(symlink_worker): Drop third argument.  Handle native symlink type by
	calling symlink_native.  Move code to handle NFS to symlink_nfs.  Fix
	formatting.  Slightly restructure code.
	* path.h (class path_conv): Add fs_is_afs method.
	(symlink_worker): Declare here.
	* security.h: Define privilege constants as unsigned int instead of as
	unsigned long.
	* syscalls.cc (mknod_worker): Set third parameter in symlink_worker
	call to WSYM_lnk.
	* winsup.h (symlink_worker): Drop declaration here.
2013-04-24 10:16:13 +00:00
Corinna Vinschen bd91f4a96a Forced checkin 2013-04-23 19:36:21 +00:00
Corinna Vinschen 842cf66533 * Throughout, eliminate Windows 2000 from the documentation.
* overview.sgml (brief-history): Mention native AMD64 support.
2013-04-23 15:59:21 +00:00
Corinna Vinschen f35d64f8d0 * Makefile.in (SGMLDIRS): Accommodate dropping utils_source and
cygwin_source from ../Makefile.common.
	* new-features.sgml (ov-new1.7.19): New section.  Document dropped
	support for pre-XP SP3 and added support for 64 bit Cygwin.
2013-04-23 15:49:08 +00:00
Corinna Vinschen 39bf1f15e7 *** empty log message *** 2013-04-23 14:58:20 +00:00
Corinna Vinschen 629b2a7e19 * cygwin64.din (_setjmp): Export.
(_longjmp): Export.
2013-04-23 10:03:39 +00:00
Corinna Vinschen 61522196c7 * Merge in cygwin-64bit-branch. 2013-04-23 09:44:36 +00:00
Corinna Vinschen 1875ee55d3 Port newlib to x86_64-pc-cygwin.
* libc/include/sys/features.h: Redefine compilation environment
	definitions for Cygwin to cover 64 bit Cygwin.
	* libc/ctype/ctype_.c (_ctype_): Fix definition for 64 bit Cygwin.
	* libc/include/machine/setjmp.h: Change definition of _JBLEN to allow
	different values for 32 bit and 64 bit Cygwin.
	* libc/include/reent.h (stat64): Define as stat under Cygwin, instead
	of as __stat64.  Undef stat64 if not building Newlib.
	* libc/include/sys/stat.h (stat64): Define as stat under Cygwin.
2013-04-23 09:42:25 +00:00
Jan-Benedict Glaw bca6ce4282 2013-04-22 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* Makefile.def: Sync with GCC.
	* Makefile.in: Regenerate.
2013-04-22 17:11:22 +00:00
Jan-Benedict Glaw 35b79fa558 2013-04-22 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* configure.ac: Sync with GCC.
	* configure: Regenerated.
2013-04-22 15:25:09 +00:00
Corinna Vinschen 40702aef2c * include/sys/queue.h: Delete in favor of more complete newlib file. 2013-04-22 10:35:02 +00:00
Corinna Vinschen a1467f6434 Adapt to changes in newlib's sys/cdefs.h:
* include/sys/sysinfo.h (struct sysinfo): Rename __unused member to __f.
	* libc/fts.c (__FBSDID): Drop definition.
	* regex/regexec.c (__unused): Drop definition.
2013-04-22 10:33:09 +00:00
Corinna Vinschen 9770af188f * libc/include/sys/cdefs.h: Align with latest FreeBSD file header.
* libc/include/sys/features.h (__GNUC_PREREQ__): Define.
2013-04-22 10:28:05 +00:00
Corinna Vinschen fc1ff1150c * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 19. 2013-04-22 10:13:30 +00:00
Steve Ellcey c22112f61a 2013-04-19 Steve Ellcey <sellcey@imgtec.com>
* mips/cfe_api.h (int64_t): Remove define.
	(uint64_t): Remove define.
	(intptr_t): Remove define.
	(uintptr_t): Remove define.
	(sys/types.h): Remove include.
	(_ansi.h): Remove include.
2013-04-19 22:06:34 +00:00
Marcus Shawcroft 289a9a6d9b [AArch64] Honour CFLAGS.
2013-04-19  Yufeng Zhang  <yufeng.zhang@arm.com>

	* aarch64/Makefile.in (rdimon-crt0.o, rdimon-trap.o)
	(rdimon-_exit.o, rdimon-_kill.o, rdimon-syscalls.o)
	(rdimon-libcfunc.o): Add $(CFLAGS) to the compiler command line.
	* aarch64/cpu-init/Makefile.in (${CPU_INIT_OBJS}): Add $(CFLAGS)
	to the compiler command line.
2013-04-19 14:24:45 +00:00
Corinna Vinschen ffd672bec7 * newlib/libc/search/hash.c: Revert patch from 2012-08-08. 2013-04-19 09:13:27 +00:00
Corinna Vinschen 7eb805f68d * libc/sys/rtems/sys/queue.h: Delete file.
* libc/include/sys/cdefs.h (__containerof): New define.
	(__DEQUALIFY): Likewise.
	* libc/include/sys/queue.h (TRACEBUF_INITIALIZER): Likewise.
	(TRACEBUF): Likewise.
	(LIST_FOREACH_SAFE): Likewise.
	(LIST_PREV): Likewise.
	(LIST_SWAP): Likewise.
	(QMD_LIST_CHECK_HEAD): Likewise.
	(QMD_LIST_CHECK_NEXT): Likewise.
	(QMD_LIST_CHECK_PREV): Likewise.
	(QMD_SAVELINK): Likewise.
	(QMD_TAILQ_CHECK_HEAD): Likewise.
	(QMD_TAILQ_CHECK_NEXT): Likewise.
	(QMD_TAILQ_CHECK_PREV): Likewise.
	(QMD_TAILQ_CHECK_TAIL): Likewise.
	(QMD_TRACE_ELEM): Likewise.
	(QMD_TRACE_HEAD): Likewise.
	(SLIST_FOREACH_PREVPTR): Likewise.
	(SLIST_FOREACH_SAFE): Likewise.
	(SLIST_REMOVE_AFTER): Likewise.
	(SLIST_SWAP): Likewise.
	(STAILQ_FOREACH_SAFE): Likewise.
	(STAILQ_REMOVE_AFTER): Likewise.
	(STAILQ_SWAP): Likewise.
	(TAILQ_FOREACH_REVERSE_SAFE): Likewise.
	(TAILQ_FOREACH_SAFE): Likewise.
	(TAILQ_SWAP): Likewise.
	(TRASHIT): Likewise.
	(SLIST_REMOVE): Use SLIST_REMOVE_AFTER().
	(STAILQ_LAST): Use __containerof().
	(STAILQ_REMOVE): Use STAILQ_REMOVE_AFTER().
2013-04-16 10:25:16 +00:00
Corinna Vinschen 48f81ac677 * glob.cc: Include winsup.h before anything else. 2013-04-16 10:20:25 +00:00
Jeff Johnston 62f41c2b1c 2013-04-12 Will Newton <will.newton@linaro.org>
* libc/machine/arm/memcpy-stub.c: Use generic memcpy if unaligned
        access is not enabled.
        * libc/machine/arm/memcpy.S: Faster memcpy implementation for
        Cortex A15 cores using NEON and VFP if available.
2013-04-12 22:12:29 +00:00
Corinna Vinschen f7a4b388b0 * acconfig.h (_WCHAR_ORIENT): Undef
* newlib.hin (_WCHAR_ORIENT): Undef
	* configure.in (--enable-newlib-wchar-orient): New option.
	* configure: Regenerated.
	* libc/configure.in (--enable-newlib-wchar-orient): New option.
	* libc/configure: Regenerated.
	* libc/stdio/Makefile.am (NEWLIB_WIDE_ORIENT): Use.
	* libc/stdio/Makefile.in: Regenerated.
	* libc/stdio/local.h (ORIENT): Use _WCHAR_ORIENT to control
	the definition. Add alternative definition.
	* libc/stdio/vfprintf.c (__sfputs_r, __sprint_r): Use _WCHAR_ORIENT
	to control the wide char output.
2013-04-12 12:05:31 +00:00
Corinna Vinschen 492ee4ee4b * path.cc (symlink_info::check): Drop PC_KEEP_HANDLE flag for
unrecognized reparse points as well.  Reorganize code and comments
	handling reparse points for better readability.
2013-04-12 08:30:47 +00:00
Corinna Vinschen 8f81761b69 * hires.h (hires_ns::nsecs): Declare with bool parameter.
* times.cc (hires_ns::nsecs): Take bool parameter.  If set to true,
	don't use prime value (== return system wide absolute value).
2013-04-11 19:49:58 +00:00
Corinna Vinschen 99e6ee04d6 Revert to original patch 2013-04-11 13:01:08 +00:00
Corinna Vinschen 9b7759ae75 * libc/include/stdlib.h (strtof, strtoll, strtoull, strtold): Also
prototype if C++11 or later.
2013-04-11 10:23:05 +00:00
Jeff Johnston 602cec7f1e 2013-04-10 Bin Cheng <bin.cheng@arm.com>
* acconfig.h (_FSEEK_OPTIMIZATION): Undef
        * newlib.hin (_FSEEK_OPTIMIZATION): Undef
        * configure.in (--disable-newlib-fseek-optimization): New option.
        * configure: Regenerated.
        * libc/stdio/fflush.c (__sflush_r): Use _FSEEK_OPTIMIZATION to
        control fseek optimization.
        * libc/stdio/fseeko.c (_fseeko_r): Ditto.
        * libc/stdio/makebuf.c (__smakebuf_r): Ditto.
        * libc/stdio64/fseeko64.c (_fseeko64_r): Ditto.
2013-04-10 18:47:46 +00:00
Christopher Faylor b49dae4a44 fix YA typo 2013-04-09 01:23:41 +00:00
Christopher Faylor 9d2155089e * cygtls.h (_cygtls::reset_signal_arrived): Actually reset the signal_arrived
event.
(_cygtls::handle_SIGCONT): Declare ew function.
* cygwait.cc (is_cw_sig_handle): Delete.
(is_cw_sig_cont): New convenience define.
(cygwait): Clear signal if is_cw_sig_cont and we got a SIGCONT.
* cygwait.h (cw_wait_mask): Add cw_sig_cont.
* exceptions.cc (sig_handle_tty_stop): Tighten "incyg" region.  Use cw_sig_cont
param for cygwait.  Don't zero signal here outside of lock.
(sigpacket::setup_handler): Don't check for in_forkee since we will now never
get here in that state.
(_cygtls::handle_SIGCONT): Define new function.
(sigpacket::process): Call handle_SIGCONT early to deal with SIGCONT.  Nuke
continue_now handling.  Allow SIGKILL to kill a suspended process.  Delete a
couple of now-unneeded labels.
(_cygtls::call_signal_handler): Reorganize setting of incyg within lock.
* sigproc.cc (pending_signals): Simplify.
(pending_signals::clear): New method.
(_cygtls::remove_wq): Reorganize to always close wq.thread_ev if it exists to
avoid handle leaks.
(sig_clear): Simplify by just calling sigq.clear().
(sig_dispatch_pending): Always call sigq.pending even in signal thread to force
another loop in wait_sig.
(sig_send): Remove a "goto out" just before out: label.
(pending_signals::add): Simplify.
(pending_signals::del): Delete.
(pending_signals::next): Delete.
(wait_sig): Define variable q to be the start of the signal queue.  Just
iterate through sigq queue, deleting processed or zeroed signals.  Only set
clearwait when the current signal is SIGCHLD.
* sigproc.h: Add a comment about an unused enum.
2013-04-09 01:01:19 +00:00