summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/os/os_thread.h
AgeCommit message (Collapse)Author
2010-07-12os: remove gratuitous pipe_barrier placeholder codenobled
There's already an implementation of pipe_barrier using the other pipe_* primitives; just use that on Windows, too. Now Windows passes pipe_barrier_test.
2010-07-12os, rbug: remove PIPE_THREAD_HAVE_CONDVARnobled
The new default implementation of pipe_condvar makes it unnecessary.
2010-07-12os: Implement pipe_condvar on Windows Vista and laternobled
Unfortunately compiling with these defines enabled would mean Gallium can't run on Windows XP/2003 or older. Todo: Need a macro to declare if we don't care about WinXP compatibililty.
2010-07-12os: Implement pipe_condvar on win32nobled
Or at least a little of it. This version will sleep for a fixed amount of time instead of just deadlocking, which is a slight improvement. Also do the same thing on any unrecognized platform.
2010-05-13gallium: Add tokens for Cygwin.Vinson Lee
2010-04-26os: Check for spurious wakeups in pipe_barrier_wait.Vinson Lee
The POSIX function pthread_cond_wait can have spurious wakeups when waiting on a condition variable. Add a 64-bit counter that is incremented whenever the barrier becomes full. A woken thread checks the counter. If the counter has not changed then it has been spuriously woken and goes back to sleep. If the counter has changed then it was properly signaled and exits the barrier. Tested on Mac OS X. This patch was based on ideas from Luca Barbieri.
2010-04-17os: Implement pipe_barrier for POSIX platforms without pthread_barrier_t.Vinson Lee
This patch was tested on Mac OS X.
2010-03-31os: Temporarily use posix thread for embedded too.Kurt Daverman
2010-02-10os: Do not use Pthreads barrier functions on Mac OS X.Vinson Lee
Pthreads barrier functions are not available on some POSIX platforms.
2010-02-05os: Don't assert on missing implementation of barrier init/destroy. Just usage.José Fonseca
2010-02-05Merge remote branch 'origin/lp-binning'José Fonseca
Conflicts: src/gallium/auxiliary/util/u_dl.c src/gallium/auxiliary/util/u_time.h src/gallium/drivers/llvmpipe/lp_state_derived.c src/gallium/drivers/llvmpipe/lp_state_surface.c src/gallium/drivers/llvmpipe/lp_tex_cache.c src/gallium/drivers/llvmpipe/lp_tile_cache.c
2010-02-04os: Add missing dummy threading definitions.José Fonseca
2010-02-02gallium: Move p_thread.h and p_atomic.h out of gallium interfaces.José Fonseca
Into os/os_thread.h and util/u_atomic.h respectively.