summaryrefslogtreecommitdiff
path: root/thread.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix perl_os_thread typedef for pthreads. Tweak SvTAINT so thatMalcolm Beattie1997-12-101-1/+0
| | | | | | | sv_setfoo functions go back to not needing dTHR. Fix Configure to check for already-existing -thread on archname and to check better for d_pthread_created_joinable. p4raw-id: //depot/perl@356
* embed.pl now reads *var*.h to do its stuff.Nick Ing-Simmons1997-11-301-119/+0
| | | | | | | | | | | | Split generated embed.h into two - new embedvar.h is #included when 'op' etc. will not mess up proto.h etc. Removed #define foo (thr->Tfoo) from thread.h Added some 'missing' symbols to global.sym, removed those in the *var*.h files Has build all MULTIPLICITY/USE_THREADS options on win32 with VC++ (and passed tests), but not with exactly this set of files. p4raw-id: //depot/ansiperl@338
* Globals and structs via macros - part 1 of NNick Ing-Simmons1997-11-291-101/+0
| | | | | | | | | | - introduce perlvars.h intrpvar.h and thrdvar.h - change perl.h and thread.h to include them with appropriate macros defined - result is status-quo but with macros - next step is to tweak embed.* to capitalize on new easy-to-find info. p4raw-id: //depot/ansiperl@337
* GCC + Threads on Win32 - best gcc results yetNick Ing-Simmons1997-11-291-0/+2
| | | p4raw-id: //depot/ansiperl@331
* AIX patch (including Configure support for {sched,pthread}_yield,Jarkko Hietaniemi1997-11-251-7/+11
| | | | | | | pthread initial detach state, renaming perl_thread to perl_os_thread and struct thread to struct perl_thread): Subject: Re: _54 on AIX p4raw-id: //depot/perl@290
* Rename perl_thread to perl_os_thread.Malcolm Beattie1997-11-251-2/+2
| | | p4raw-id: //depot/perl@289
* $_ is now per-thread (rather a lot of changes). Only tested underMalcolm Beattie1997-11-211-1/+1
| | | | | *-linux-thread at the moment. p4raw-id: //depot/perl@274
* Integrate mainline changes into win32 branch. Now would be a good timeGurusamy Sarathy1997-11-141-3/+3
|\ | | | | | | | | to reverse integrate the win32 branch into mainline. p4raw-id: //depot/win32/perl@253
| * Rewrite thread return code to distinguish between ordinary returnMalcolm Beattie1997-11-131-2/+2
| | | | | | | | | | | | | | | | | | | | and die() and make join propagate the die. Add tiny method eval which just does "return eval { shift->join; }". Add Thread::Specific class for access to thread specific user data along with specific.t. Rename Class to classname throughout Thread.xs for consistency. Fix pp_specific to pp_threadsv in global.sym. Add support to pp_entersub in pp_hot.c to lock stash for static locked methods. p4raw-id: //depot/perl@248
| * Change CONTEXT to PERL_CONTEXT throughout source (since the #defineMalcolm Beattie1997-11-131-1/+1
| | | | | | | | | | | | | | to avoid the Digital UNIX clash no longer works). Changed the #ifdef in pp_sys.c for whether getnet* function get protoyped (since the default had a broken prototype for getnetbyaddr). p4raw-id: //depot/perl@247
* | Initial (untested) integration of mainline changes.Gurusamy Sarathy1997-11-111-1/+3
|\ \ | |/ | | p4raw-id: //depot/win32/perl@234
| * Typo in thread.h: ADD_THREAD_INTERN should be HAVE_THREAD_INTERNMalcolm Beattie1997-11-111-1/+1
| | | | | | p4raw-id: //depot/perl@233
| * Initial integration of ansi branch into mainline (untested).Malcolm Beattie1997-11-111-3/+6
| |\ | | | | | | p4raw-id: //depot/perl@230
| | * Get threads working again on Win32Nick Ing-Simmons1997-11-081-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Root cause of fail was init_thread_intern() in new_struct_thread() (which is called in parent thread) clobbering dTHR of parent thread. It is doubtfull if setting 'self' in new_struct_thread() is 'right' but left in for now. p4raw-id: //depot/ansiperl@213
| | * Reverse integrate Malcolm's chanes into localNick Ing-Simmons1997-11-071-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | repository, then import result back into my view of Malcolm's repository. Builds and passes (most) tests with GNU C++/Solaris and Borland C++, Win32. p4raw-id: //depot/ansiperl@210
| | * Raw integrate of latest perlNick Ing-Simmons1997-11-071-5/+5
| | |\ | | | | | | | | p4raw-id: //depot/ansiperl@208
| | * | Builds C++ Borland, MSVC++ (Win32) and GCC++ (Solaris)Nick Ing-Simmons1997-11-051-42/+1
| | | | | | | | | | | | p4raw-id: //depot/ansiperl@203
| | * | Compile(d) at least once with threads on win32 Nick Ing-Simmons1997-11-051-0/+1
| | | | | | | | | | | | | | | | | | | | but did not work p4raw-id: //depot/ansiperl@202
| | * | Integrate mainline @ 18:15 CST 31 Oct 1997Nick Ing-Simmons1997-11-011-1/+41
| | |\ \ | | | | | | | | | | p4raw-id: //depot/ansiperl@199
| | * | | Further ANSI changes now builds and passes (most) testsNick Ing-Simmons1997-10-311-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | with gcc -x c++. p4raw-id: //depot/ansiperl@196
| * | | | Fix up $@ (ERRSV now refers to GvSV(errgv) for non-threaded perl andMalcolm Beattie1997-11-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | thr->errsv for threaded perl). Fix pp_tie and pp_dbmopen to use GvCV(gv) instead of gv so AUTOLOAD stuff works. All tests now pass again for non-threaded perl. Enhanced perl_get_sv to return per-thread magicals where necessary for threaded perl. p4raw-id: //depot/perl@228
* | | | | Remove runlevel. It was used to count how many runops() callsGurusamy Sarathy1997-11-101-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we were in the process of executing, and longjmp() to the topmost one (if not already there). We use a null top_env->je_prev to distinguish that now. p4raw-id: //depot/win32/perl@223
* | | | | Initial (untested) merge of all non-ansi changes on ansiperl branchGurusamy Sarathy1997-11-101-3/+7
|/ / / / | | | | | | | | | | | | | | | | into win32 branch. p4raw-id: //depot/win32/perl@221
* | | | Change pp_tie and pp_dbmopen to use perl_call_sv instead of aMalcolm Beattie1997-11-071-0/+1
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | DIY pp_entersub (in preparation for AUTOLOAD change). dbmopen not tested. ofslen now maps to thr->Tofslen in thread.h. Added missing #ifdef USE_THREADS around some DEBU_L statements in die(). Building without USE_THREADS fails quite a lot of tests. It looks as though the move to per-thread magicals must be missing some #ifdef USE_THREADS. p4raw-id: //depot/perl@209
* | | Per-thread magicals now stored in their own thr->magicals and keyedMalcolm Beattie1997-11-061-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | more directly. cvcache and oursv become ordinary struct thread fields instead of #defined thr->Tfoo ones. SvREFCNT_inc now checks for 0 again. Main thread initialisation done by new function init_main_thread instead of (now fixed) new_struct_thread. p4raw-id: //depot/perl@205
* | | Per-thread magicals mostly working (and localisable). Now gettingMalcolm Beattie1997-11-051-1/+2
| |/ |/| | | | | | | | | intermittent occasional "Use of uninitialized value" warnings which may be due to some op flag black magic I've broken. p4raw-id: //depot/perl@204
* | Half way through moving per-thread magicals into per-thread fieldsMalcolm Beattie1997-10-311-1/+41
|/ | | | | | and the associated new OP_SPECIFIC and find_thread_magical stuff. perl will compile but plenty of the magicals are still broken. p4raw-id: //depot/perl@195
* Remove global macro "self". Change thr->Tself to thr->self.Malcolm Beattie1997-10-291-5/+4
| | | p4raw-id: //depot/perl@190
* Improve internal threading API. Introduce win32/win32thread.[ch]Malcolm Beattie1997-10-241-79/+128
| | | | | to use new API and patch win32 makefile stuff a little. p4raw-id: //depot/perl@172
* Correct threads_mutex locking in main thread destruction.Malcolm Beattie1997-10-161-0/+1
| | | | | | | | Add per-interp thrsv to hold SV struct thread for main thread. Move Thread.xs MUTEX_DESTROY from end of threadstart to remove_thread. Add Thread/list.t test of Thread->list method. Let Thread::Semaphore methods up and down take an extra argument. p4raw-id: //depot/perl@140
* Add HAVE_THREAD_INTERN for platform-dependent struct thread additions.Malcolm Beattie1997-10-151-15/+15
| | | | | Fix ThrSETSTATE not to lock t->mutex itself. p4raw-id: //depot/perl@130
* pthread_condattr_init in thread.h for OLD_PTHREADS_API.Malcolm Beattie1997-10-151-1/+4
| | | p4raw-id: //depot/perl@126
* Started rewriting thread state machine.Malcolm Beattie1997-10-151-12/+14
| | | p4raw-id: //depot/perl@125
* Rewrite thread destruction system using linked list of threads.Malcolm Beattie1997-10-101-16/+26
| | | | | | Still not completely done. Add methods self, equal, flags, list to Thread.xs. Add Thread_MAGIC_SIGNATURE check to typemap. p4raw-id: //depot/perl@120
* Remove last traces of "tokenbuf as temp buffer" and removed itMalcolm Beattie1997-10-031-2/+4
| | | | | | from struct thread. Added missing thr->Tfoo defines for statbuf and timesbuf and removed unused Tbuf field. p4raw-id: //depot/perl@106
* struct thread now stored in an SV and uses '~'-magic for access.Malcolm Beattie1997-09-221-7/+11
| | | p4raw-id: //depot/perl@69
* Minor multi-threading patches for VMS.Malcolm Beattie1997-09-221-0/+7
| | | p4raw-id: //depot/perl@66
* Solaris fixes: delete pad and padname from thread.h and removeMalcolm Beattie1997-09-101-4/+0
| | | | | MUTEX_* stuff when malloc.c gets copied to x2p/malloc.c. p4raw-id: //depot/perl@61
* Assorted changes for multi-threading (now works rather more).Malcolm Beattie1997-08-111-2/+6
| | | p4raw-id: //depot/perl@44
* Start support for fake threads.Malcolm Beattie1997-07-241-7/+42
| | | | | pp_lock now returns its argument. p4raw-id: //depot/perl@41
* Fix multiple problems with lexical @_.Malcolm Beattie1997-07-171-0/+4
| | | p4raw-id: //depot/perl@39
* Support for op in global register (still buggy)Malcolm Beattie1997-07-011-1/+9
| | | p4raw-id: //depot/perl@34
* More fixups for thrperl integration.Malcolm Beattie1997-06-051-1/+1
| | | p4raw-id: //depot/perl@27
* Added programmer-level condition variables via "condpair" magic.Malcolm Beattie1997-04-231-1/+30
| | | | | Added support for detached threads and tweaked a few things. p4raw-id: //depot/thrperl@8
* Initial 3-way merge from (5.001m, thr1m, 5.003) plus fixups.Malcolm Beattie1997-03-281-0/+206
p4raw-id: //depot/thrperl@4