newlib-cygwin/winsup/cygwin/tlsoffsets.h

118 lines
3.3 KiB
C
Raw Normal View History

//;# autogenerated: Do not edit.
//; $tls::start_offset = -12700;
* DevNotes: Add entry cgf-000013. * cygserver_ipc.h (ipc_set_proc_info): Use _cygtls::ipc_set_proc_info to set per-thread signal arrived value. * cygthread.cc (cygthread::detach): Use per-thread signal_arrived via set_thread_waiting. * fork.cc (_cygtls::fixup_after_fork): Clear signal_arrived. (_cygtls::remove): Close any signal_arrived handle when thread exists. (_cygtls::find_tls): Remove unneeded function. * cygtls.h: Update copyright. (class _cygtls): Reorganize to help avoid rebuilding newlib when structure changes. (_cygtls::event): Delete. (_cygtls::threadkill): Ditto. (_cygtls::signal_waiting): Declare new bool. (_cygtls::find_tls): Delete declaration. (_cygtls::set_threadkill): Ditto. (_cygtls::reset_threadkill): Ditto. (_cygtls::set_signal_arrived): Declare new function. (class set_thread_waiting): Declare new class. * cygwait.cc (cw_nowait_storage): Define. (cygwait): Set per-thread signal_arrived via set_thread_waiting. Don't special-case _main_tls. * cygwait.h (cw_nowait): Define. (cw_infinite): Ditto. (cygwait): Redefine pathological wait-only case. * dcrt0.cc (dll_crt0_0): Remove call to now-defunct events_init(). (dll_crt0_1): Remove call to now-defunct create_signal_arrived(). * exceptions.cc: Reflect set_signal_mask() argument reordering throughout. Remove signal mask synchronization throughout. (events_init): Delete definition. (mask_sync): Delete now-unneeded mask synchronization. (set_signal_mask): Reverse order of arguments to "standard" to, from layout. Rename "newmask" argument to "setmask". Remove debugging. (sig_handle_tty_stop): Use cancelable_wait rather than WFMO. (_cygtls::interrupt_setup): Don't treat "threadkill" events specially. Conditionally set signal_arrived depending on whether the thread has created it or not. (sigpacket::process): Reorganize to reflect thread-specific sending of signals which is more in line with the way it was actually supposed to work. * fhandler_socket.cc (get_inet_addr): Use cancelable_wait rather than IsEventSignalled to avoid potential race. (fhandler_socket::wait_for_events): Set signal_arrived event using set_thread_waiting(). (fhandler_socket::close): Use cygwait for the case of just waiting 10 ms for a signal. * fhandler_tape.cc (fhandler_dev_tape::_lock): Use cancelable_wait rather than WFMO. Redo switch/case tests accordingly. * fhandler_termios.cc (fhandler_termios::bg_check): Use cygwait for case of just waiting 0 ms for a potential signal. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Use cancelable_wait rather than WFSO. * fhandler_windows.cc (fhandler_windows::read): Set per-thread signal_arrived via set_thread_waiting(). * flock.cc (lf_setlock): Ditto. * select.cc (pselect): Ditto. Set per-thread signal_arrived using set_thread_waiting(). * gendef: Don't special case handling of _cygtls::sig for threads. * gentls_offsets: Use #pragma once in tlsoffsets.h. * ntdll.h: Use #pragma once. * poll.cc: Reflect set_signal_mask() argument reordering. * posix_ipc.cc (ipc_mutex_lock): Use cancelable_wait rather than WFMO. (ipc_cond_timedwait): Set perl-thread signal arrived using set_thread_waiting(). * security.h: Use #pragma once. * signal.cc (abort): Reflect set_signal_mask() argument reordering. (clock_nanosleep): Ditto. Change call to cancelable_wait to properly specify handling of cancel and interrupt. (sigwaitinfo): Remove handling of per-thread event in favor of per-thread signal_arrived. Use cancelable_wait rather than WFSO. * sigproc.cc (signal_arrived): Delete definition. (create_signal_arrived): Ditto. * sigproc.h (signal_arrived): Delete declaration. (set_signal_mask): Avoid defining as a "C" function. Don't conditionally declare. (create_signal_arrived): Delete declaration. * syscalls.cc (rename): Use cygwait() rather than WFSO. * thread.h (fast_mutex::lock): Use cw_infinite rather than LARGE_NULL. * wait.cc (wait4): Ditto. * thread.cc (pthread_mutex::lock): Ditto. (pthread::join): Ditto. (semaphore::_wait): Ditto. (pthread_kill): Remove set_threadkill() accommodation. * tlsoffsets.h: Regenerate.
2012-07-22 06:58:20 +08:00
//; $tls::locals = -12700;
//; $tls::plocals = 0;
2013-04-23 17:44:36 +08:00
//; $tls::local_clib = -11260;
//; $tls::plocal_clib = 1440;
//; $tls::__dontuse = -11260;
//; $tls::p__dontuse = 1440;
//; $tls::func = -10172;
//; $tls::pfunc = 2528;
//; $tls::saved_errno = -10168;
//; $tls::psaved_errno = 2532;
//; $tls::sa_flags = -10164;
//; $tls::psa_flags = 2536;
//; $tls::oldmask = -10160;
//; $tls::poldmask = 2540;
//; $tls::deltamask = -10156;
//; $tls::pdeltamask = 2544;
//; $tls::errno_addr = -10152;
//; $tls::perrno_addr = 2548;
//; $tls::sigmask = -10148;
//; $tls::psigmask = 2552;
//; $tls::sigwait_mask = -10144;
//; $tls::psigwait_mask = 2556;
//; $tls::sigwait_info = -10140;
//; $tls::psigwait_info = 2560;
//; $tls::signal_arrived = -10136;
//; $tls::psignal_arrived = 2564;
//; $tls::will_wait_for_signal = -10132;
//; $tls::pwill_wait_for_signal = 2568;
//; $tls::thread_context = -10128;
//; $tls::pthread_context = 2572;
//; $tls::thread_id = -9916;
//; $tls::pthread_id = 2784;
//; $tls::infodata = -9912;
//; $tls::pinfodata = 2788;
//; $tls::tid = -9764;
//; $tls::ptid = 2936;
//; $tls::_ctinfo = -9760;
//; $tls::p_ctinfo = 2940;
//; $tls::andreas = -9756;
//; $tls::pandreas = 2944;
//; $tls::wq = -9752;
//; $tls::pwq = 2948;
//; $tls::sig = -9724;
//; $tls::psig = 2976;
//; $tls::incyg = -9720;
//; $tls::pincyg = 2980;
//; $tls::spinning = -9716;
//; $tls::pspinning = 2984;
//; $tls::stacklock = -9712;
//; $tls::pstacklock = 2988;
//; $tls::stackptr = -9708;
//; $tls::pstackptr = 2992;
//; $tls::stack = -9704;
//; $tls::pstack = 2996;
//; $tls::initialized = -8680;
//; $tls::pinitialized = 4020;
//; __DATA__
* DevNotes: Add entry cgf-000013. * cygserver_ipc.h (ipc_set_proc_info): Use _cygtls::ipc_set_proc_info to set per-thread signal arrived value. * cygthread.cc (cygthread::detach): Use per-thread signal_arrived via set_thread_waiting. * fork.cc (_cygtls::fixup_after_fork): Clear signal_arrived. (_cygtls::remove): Close any signal_arrived handle when thread exists. (_cygtls::find_tls): Remove unneeded function. * cygtls.h: Update copyright. (class _cygtls): Reorganize to help avoid rebuilding newlib when structure changes. (_cygtls::event): Delete. (_cygtls::threadkill): Ditto. (_cygtls::signal_waiting): Declare new bool. (_cygtls::find_tls): Delete declaration. (_cygtls::set_threadkill): Ditto. (_cygtls::reset_threadkill): Ditto. (_cygtls::set_signal_arrived): Declare new function. (class set_thread_waiting): Declare new class. * cygwait.cc (cw_nowait_storage): Define. (cygwait): Set per-thread signal_arrived via set_thread_waiting. Don't special-case _main_tls. * cygwait.h (cw_nowait): Define. (cw_infinite): Ditto. (cygwait): Redefine pathological wait-only case. * dcrt0.cc (dll_crt0_0): Remove call to now-defunct events_init(). (dll_crt0_1): Remove call to now-defunct create_signal_arrived(). * exceptions.cc: Reflect set_signal_mask() argument reordering throughout. Remove signal mask synchronization throughout. (events_init): Delete definition. (mask_sync): Delete now-unneeded mask synchronization. (set_signal_mask): Reverse order of arguments to "standard" to, from layout. Rename "newmask" argument to "setmask". Remove debugging. (sig_handle_tty_stop): Use cancelable_wait rather than WFMO. (_cygtls::interrupt_setup): Don't treat "threadkill" events specially. Conditionally set signal_arrived depending on whether the thread has created it or not. (sigpacket::process): Reorganize to reflect thread-specific sending of signals which is more in line with the way it was actually supposed to work. * fhandler_socket.cc (get_inet_addr): Use cancelable_wait rather than IsEventSignalled to avoid potential race. (fhandler_socket::wait_for_events): Set signal_arrived event using set_thread_waiting(). (fhandler_socket::close): Use cygwait for the case of just waiting 10 ms for a signal. * fhandler_tape.cc (fhandler_dev_tape::_lock): Use cancelable_wait rather than WFMO. Redo switch/case tests accordingly. * fhandler_termios.cc (fhandler_termios::bg_check): Use cygwait for case of just waiting 0 ms for a potential signal. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Use cancelable_wait rather than WFSO. * fhandler_windows.cc (fhandler_windows::read): Set per-thread signal_arrived via set_thread_waiting(). * flock.cc (lf_setlock): Ditto. * select.cc (pselect): Ditto. Set per-thread signal_arrived using set_thread_waiting(). * gendef: Don't special case handling of _cygtls::sig for threads. * gentls_offsets: Use #pragma once in tlsoffsets.h. * ntdll.h: Use #pragma once. * poll.cc: Reflect set_signal_mask() argument reordering. * posix_ipc.cc (ipc_mutex_lock): Use cancelable_wait rather than WFMO. (ipc_cond_timedwait): Set perl-thread signal arrived using set_thread_waiting(). * security.h: Use #pragma once. * signal.cc (abort): Reflect set_signal_mask() argument reordering. (clock_nanosleep): Ditto. Change call to cancelable_wait to properly specify handling of cancel and interrupt. (sigwaitinfo): Remove handling of per-thread event in favor of per-thread signal_arrived. Use cancelable_wait rather than WFSO. * sigproc.cc (signal_arrived): Delete definition. (create_signal_arrived): Ditto. * sigproc.h (signal_arrived): Delete declaration. (set_signal_mask): Avoid defining as a "C" function. Don't conditionally declare. (create_signal_arrived): Delete declaration. * syscalls.cc (rename): Use cygwait() rather than WFSO. * thread.h (fast_mutex::lock): Use cw_infinite rather than LARGE_NULL. * wait.cc (wait4): Ditto. * thread.cc (pthread_mutex::lock): Ditto. (pthread::join): Ditto. (semaphore::_wait): Ditto. (pthread_kill): Remove set_threadkill() accommodation. * tlsoffsets.h: Regenerate.
2012-07-22 06:58:20 +08:00
#define tls_locals (-12700)
#define tls_plocals (0)
2013-04-23 17:44:36 +08:00
#define tls_local_clib (-11260)
#define tls_plocal_clib (1440)
#define tls___dontuse (-11260)
#define tls_p__dontuse (1440)
#define tls_func (-10172)
#define tls_pfunc (2528)
#define tls_saved_errno (-10168)
#define tls_psaved_errno (2532)
#define tls_sa_flags (-10164)
#define tls_psa_flags (2536)
#define tls_oldmask (-10160)
#define tls_poldmask (2540)
#define tls_deltamask (-10156)
#define tls_pdeltamask (2544)
#define tls_errno_addr (-10152)
#define tls_perrno_addr (2548)
#define tls_sigmask (-10148)
#define tls_psigmask (2552)
#define tls_sigwait_mask (-10144)
#define tls_psigwait_mask (2556)
#define tls_sigwait_info (-10140)
#define tls_psigwait_info (2560)
#define tls_signal_arrived (-10136)
#define tls_psignal_arrived (2564)
#define tls_will_wait_for_signal (-10132)
#define tls_pwill_wait_for_signal (2568)
#define tls_thread_context (-10128)
#define tls_pthread_context (2572)
#define tls_thread_id (-9916)
#define tls_pthread_id (2784)
#define tls_infodata (-9912)
#define tls_pinfodata (2788)
#define tls_tid (-9764)
#define tls_ptid (2936)
#define tls__ctinfo (-9760)
#define tls_p_ctinfo (2940)
#define tls_andreas (-9756)
#define tls_pandreas (2944)
#define tls_wq (-9752)
#define tls_pwq (2948)
#define tls_sig (-9724)
#define tls_psig (2976)
#define tls_incyg (-9720)
#define tls_pincyg (2980)
#define tls_spinning (-9716)
#define tls_pspinning (2984)
#define tls_stacklock (-9712)
#define tls_pstacklock (2988)
#define tls_stackptr (-9708)
#define tls_pstackptr (2992)
#define tls_stack (-9704)
#define tls_pstack (2996)
#define tls_initialized (-8680)
#define tls_pinitialized (4020)