Commit Graph

5793 Commits

Author SHA1 Message Date
Christopher Faylor ae2543ed76 * exceptions.cc (_threadinfo::remove): Avoid a linked list walk. 2003-12-07 03:27:51 +00:00
Christopher Faylor 73262d7a44 * cygtls.h (_threadinfo::find_tls): New function.
* exceptions.cc (_threadinfo::find_tls): Rename from find_tls.  Use critical
section to protect access to linked list.
2003-12-07 02:56:52 +00:00
Christopher Faylor fcc47fd001 * exceptions.cc (_threadinfo::remove): Avoid returning without unlocking
critical section in the (hopefully impossible) case of an unrecognized thread.
2003-12-07 02:33:31 +00:00
Christopher Faylor 2b6d15a908 * cygtls.h: Add more "don't parse this" guards.
(_threadinfo::init_thread): Rename from 'init'.
(_threadinfo::init): Declare new function.
(_threadinfo::protect_linked_list): Declare new critical section.
* dcrt0.cc (dll_crt0_1): Call init_thread to initialize thread stuff.
(_dll_crt0): Call _threadinfo::init prior to invoking dll_crt0_1.
* exceptions.cc (_threadinfo::init_thread): Rename from 'init'.
(_threadinfo::init): Define new function.  Protect linked list manipulation
with new critical section.
(_threadinfo::call): Reflect function name change.
(_threadinfo::remove): Protect linked list manipulation with new critical
section
* gentls_offsets: Rework to allow multi-line "don't parse this" protection.
* init.cc (dll_entry): Don't remove threads info stuff here since the remove
function uses a critical section which can't be used during thread creation or
destruction.
* thread.cc (pthread::exit): Call _threadinfo remove function here.
2003-12-06 18:08:38 +00:00
Alan Modra bdfb870e4a * common.h (DT_HIOS): Correct value. 2003-12-06 05:32:21 +00:00
Jeff Johnston 9fc92ceb06 2003-12-05 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/stat.h: No longer include stat-dj.h.
        * libc/include/sys/stat-dj.h: Removed.
2003-12-05 21:09:13 +00:00
Jeff Johnston 25c7dad1fb 2003-12-05 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/wchar.h: Include <sys/reent.h>.
2003-12-05 20:51:57 +00:00
Christopher Faylor f36d3b6a0d Revert accidental checkin. 2003-12-05 06:15:18 +00:00
Christopher Faylor 576593dd72 * libc/stdlib/mbrlen.c: Change include order to prevent compiler errors when
defining _mbrtowc.
* libc/stdlib/mbsinit.c: Ditto.
* libc/stdlib/mbsrtowcs.c: Ditto.
* libc/stdlib/wcrtomb.c: Ditto.
* libc/stdlib/wcsrtombs.c: Ditto.
* libc/stdlib/wctob.c: Ditto.
* libc/stdlib/mbrlen.c: Change include order to prevent compiler errors when
defining _mbrtowc.
* libc/stdlib/mbsinit.c: Ditto.
* libc/stdlib/mbsrtowcs.c: Ditto.
2003-12-05 06:13:44 +00:00
Christopher Faylor 4c889d629d * libc/stdlib/mbrtowc.c: Change include order to prevent compiler errors when
defining _mbrtowc.
2003-12-05 06:02:31 +00:00
Christopher Faylor aeab6ea658 * cygthread.cc (cygthread::stub2): Remove myself from the list of threads
monitored by signals since this thread will never call raise or sigwait.
(cygthread::simplestub2): Ditto.  Set ev here.
(cygthread::cygthread): Don't set ev here for freerange thread.
2003-12-05 05:29:17 +00:00
Christopher Faylor 78f3155ced * path.cc (slash_unc_prefix_p): Allow '.' as a valid character after '\\' in a
UNC path.
2003-12-05 04:33:40 +00:00
Christopher Faylor 57e6aca667 * exceptions.cc (setup_handler): Remove ill-advised debugging output. 2003-12-05 04:20:48 +00:00
Jeff Johnston 5d109bdeb0 2003-12-04 Artem B. Bityuckiy <abitytsky@softminecorp.com>
* libc/stdio/vfprintf.c (_VFPRINTF_R): Use _r versions
        of mb routines for %lc and %ls support.
        * libc/stdio/vfscanf.c (_svfscanf_r): Add %lc, %C,
        %ls, and %S support.  Remove CYGNUS_NEC markers and
        code within.
2003-12-05 01:42:26 +00:00
Jeff Johnston 3aca088831 2003-12-04 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/wchar.h: Add prototypes for _mbrtowc_r,
        _wcrtomb_r, and _wcsrtombs_r.
2003-12-05 01:36:32 +00:00
H.J. Lu 0444b90fcd bfd/
2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>

	* elfxx-ia64.c (elfNN_ia64_relax_section): Use the
	need_relax_finalize field in link_info instead of
	relax_finalizing to check if the relax finalize pass is being
	done.

include/

2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>

	* bfdlink.h (bfd_link_info): Change relax_finalizing to
	need_relax_finalize.

ld/

2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>

	* emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Set
	link_info.need_relax_finalize to TRUE.

	* ldlang.c (lang_process): Use link_info.need_relax_finalize
	instead of link_info.relax_finalizing.
	* ldmain.c (main): Likewise.
2003-12-04 22:43:36 +00:00
Corinna Vinschen 592db10ed7 * include/cygwin/types.h (struct __fcntl64): Fix datatype of l_start. 2003-12-04 09:37:55 +00:00
Nick Clifton a562b2239a Add support for the M32R2 processor. 2003-12-03 17:38:48 +00:00
Corinna Vinschen 145b4dc249 Substitute 0x7fffffff and 0xffffffff by INT32_MAX and UINT32_MAX
throughout, except in assembler code.
2003-12-03 16:35:52 +00:00
Corinna Vinschen d2fa946e51 * fhandler_disk_file.cc (fhandler_disk_file::lock): Use UINT32_MAX
instead of 0xffffffff.  Accomodate Win 9x bug in evaluating length
	of area to lock when given length is 0.
2003-12-03 11:22:49 +00:00
Corinna Vinschen 1843517401 * fhandler_disk_file.cc (fhandler_disk_file::lock): Interchange
values of off_low and off_high.
2003-12-03 09:58:23 +00:00
Corinna Vinschen e2a39e2efa * fcntl.cc (fcntl_worker): Remove static storage class.
* flock.cc (flock): Use struct __flock64. Call fcntl_worker.
	Use Cygwin errno functions instead of accessing errno directly.
	* winsup.h: Declare fcntl_worker.
2003-12-03 09:55:42 +00:00
Corinna Vinschen 941c9bf805 * fcntl.cc (_fcntl): Whitespace cleanup. 2003-12-03 09:16:37 +00:00
Christopher Faylor d1eb7a4615 * cygthread.cc (cygthread::stub): Properly establish _threadinfo environment.
(cygthread::stub2): New function.
(cygthread::simplestub): Ditto.
(cygthread::simplestub2): New function.
* cygthread.h (cygthread::stub2): Declare new function.
(cygthread::simplestub2): Ditto.
* cygtls.h (_threadinfo::call): Declare new function.
(_threadinfo::call2): Ditto.
* dcrt0.cc (dll_crt0_1): Accommodate new _threadinfo::init which doesn't return
pointer to tls.
(_dll_crt0): Remove obsolete DECLARE_TLS_STORAGE.
(dll_crt0): Ditto.
* exceptions.cc (_threadinfo::call): New function.
(_threadinfo::call2): Ditto.
(_threadinfo::init): Don't return pointer.
* thread.cc (pthread::thread_init_wrapper): Properly establish _threadinfo
environment.
(pthread::thread_init_wrapper2): New function.
* thread.h (pthread::thread_init_wrapper): Remove noreturn attribute
(pthread::thread_init_wrapper2): Declare new function.
* winbase.h: Remove obsolete code.
2003-12-03 05:21:55 +00:00
Christopher Faylor af9ef8abb2 * Makefile.in: Change the way that -f options are appended to CFLAGS, slightly. 2003-12-03 00:21:21 +00:00
Christopher Faylor e575a697ba * fcntl.cc (_fcntl): Silence a compiler warning. 2003-12-02 23:47:28 +00:00
Alan Modra d47640a3d5 Rename bfd_link_hash_entry field "next" -> "und_next". 2003-12-02 22:59:59 +00:00
Nick Clifton c488125f39 Add alternative defintion of C_WEAKEXT for AIX 5.2 2003-12-02 10:49:14 +00:00
Alan Modra 8a91312a3a * bfdlink.h (struct bfd_link_info): Remove mpc860c0 field. 2003-12-02 05:58:36 +00:00
Christopher Faylor 93e4038242 * pinfo.cc (pinfo::init): Use shared_name to construct the mapname. 2003-12-02 04:10:56 +00:00
Christopher Faylor 5c9cceced7 white space 2003-12-02 01:36:08 +00:00
Thomas Pfaff 693dd53815 Change tab to space in Changelog. 2003-12-01 22:13:58 +00:00
Thomas Pfaff 94d2416049 * thread.cc (pthread_rwlock::add_reader): Remove mx parameter for
List_insert call.
(pthread::prepare): Ensure race safeness when adding function
pointers to atfork lists by using List_insert.
* thread.h (List_insert): Use InterlockedCompareExchangePointer to
ensure race safeness without using a mutex.
(List_remove): Use InterlockedCompareExchangePointer to
ensure race safeness with List_insert.
(List::insert): Remove mx parameter for	List_insert call.
2003-12-01 22:10:57 +00:00
Corinna Vinschen bd16a3a8a8 * winsup.api/known_bugs.tcl: Remove fcntl09 and fcntl10. These
tests had a compatibility bug.
	* winsup.api/ltp/fcntl09.c: Don't use F_RDLCK | F_WRLCK but only
	F_WRLCK to set a write lock.
	* winsup.api/ltp/fcntl10.c: Ditto.
2003-12-01 17:33:11 +00:00
Corinna Vinschen 18dcb16757 * libc/include/sys/fcntl.h: Don't define struct flock when on
Cygwin.  This is done in winsup/cygwin/include/cygwin/types.h now.
2003-12-01 17:27:01 +00:00
Corinna Vinschen dc3998682a * Makefile.in (OBSOLETE_FUNCTIONS): Add fcntl.
(NEW_FUNCTIONS): Add fcntl64.
	* cygwin.din: Export fcntl64.  Make fcntl being SIGFE.
	* fcntl.cc (fcntl_worker): New function.
	(fcntl64): New function.
	(_fcntl): Call fcntl_worker.  Convert 32 bit flock structure into
	64 bit flock structure and vice versa.
	* fhandler.cc (fhandler_base::lock): Change 2nd parameter to
	struct __flock64 *.
	* fhandler_disk_file.cc (fhandler_disk_file::lock): Ditto.  Rework
	to be 64 bit aware.
	* fhandler.h: Accomodate above method argument changes.
	* include/cygwin/types.h: Add struct __flock32 and __flock64.
	Define struct flock according to setting of __CYGWIN_USE_BIG_TYPES__.
	* include/cygwin/version.h: Bump API minor number.
2003-12-01 17:26:28 +00:00
Corinna Vinschen 6c2b784612 * cygheap.cc (cygheap_init): Set cygheap->shared_prefix.
* cygheap.h (struct init_cygheap): Add shared_prefix.
	* shared.cc (shared_name): Use cygheap->shared_prefix.
2003-12-01 15:03:43 +00:00
Corinna Vinschen 4febe95f89 * shared.cc (shared_name): Take into account the SE_CREATE_GLOBAL_NAME
privilege when building the name string.
	(open_shared): Remove the call to OpenFileMapping.
	(shared_info::initialize): Move cygheap initialization to ...
	(memory_init): ... here. Suppress now useless shared_h variable.
	(user_shared_initialize): Make tu a cygpsid.
2003-12-01 11:16:20 +00:00
Corinna Vinschen cb766c47bb * include/tzfile.h: Remove duplicate definition of TM_SUNDAY.
* localtime.cc: Point TZDIR to the /usr/share/zoneinfo directory used
	by the tzcode package.
2003-12-01 10:39:17 +00:00
Danny Smith 635fa4ba48 * include/winnt.h (GetCurrentFiber): Remove duplicate prototype.
(GetFiberData); Likewise.

	(GetCurrentFiber): Change volatile to __volatile__.
	(GetFiberData); Likewise.
2003-12-01 09:11:42 +00:00
Corinna Vinschen b406ed7b51 * flock.cc: Renamed from flock.c. 2003-11-30 10:43:04 +00:00
Christopher Faylor fcac349166 * pinfo.h: Remove global_sigs declaration.
* siginfo.h: Move global_sigs declaration here.
* Makefile.in: Remove duplicate compiler flag.
2003-11-30 02:21:04 +00:00
Christopher Faylor b63ba3b6aa * exceptions.cc (_threadinfo::pop): Zero *contents* of popped stack location
rather than the actual stack pointer.
2003-11-30 02:19:45 +00:00
Corinna Vinschen f3a1e23eb3 * Makefile.in: (DLL_OFILES): Add flock.o.
* cygwin.din: Export flock.
	* flock.c: New file.
	* include/sys/file.h: Include sys/cdefs.h.
	Add function prototype for flock().
	Add some comments from BSD's header for further clarity.
	(L_SET, L_CURR, L_INCR, L_XTND): Redefine as the macros
	SEEK_SET, SEEK_CUR, SEEK_CUR, & SEEK_END respectively.
	(LOCK_SH,LOCK_EX,LOCK_NB,LOCK_UN): New macros for flock().
	* include/cygwin/version.h: Bump API minor number.
2003-11-29 23:00:51 +00:00
Christopher Faylor b50fe8212f * sigproc.cc (no_signals_available): Fix so that non-zero exit state is a true
condition rather than errnoneously only checking other states when exist_state
was zero.
2003-11-29 00:31:37 +00:00
Christopher Faylor 62e070d72e * pinfo.h (_pinfo::getthread2signal): Remove obsolete function.
* cygtls.h (_threadinfo): Define tid more precisely.
(_threadinfo::operator HANDLE): Define.
* exceptions.cc (_threadinfo::interupt_now): Use _threadinfo HANDLE operator to
derive thread handle.
(setup_handler): Ditto.
* sigproc.cc: Reorganize includes.
2003-11-29 00:26:40 +00:00
Christopher Faylor 13584f077b * pinfo.h (_pinfo::getsig): Remove obsolete function, here and throughout.
* exceptions.cc: Ditto.
* fhandler_termios.cc: Ditto.
* signal.cc: Ditto.
* sigproc.cc: Ditto.
* Makefile.in: Revert previous change which made a cygwin.din newer than a
version.h a warning rather than an error.
2003-11-28 22:13:57 +00:00
Christopher Faylor 74d893b13c * cygwin.din: Re-add inexplicably missing semaphore/msg functions. 2003-11-28 21:39:08 +00:00
Christopher Faylor 965f78cbbe * gendevices: Issue error when shilka is missing. 2003-11-28 21:20:15 +00:00
Christopher Faylor 93f8e67384 * libc/include/sys/signal.h: Use system specific signal file when building on
cygwin.
2003-11-28 21:05:51 +00:00