summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/util/u_atomic.h
Commit message (Collapse)AuthorAgeFilesLines
* util: Move u_atomic.h to src/util.Matt Turner2014-12-011-401/+0
| | | | | | To be shared outside of Gallium. Reviewed-by: Jose Fonseca <[email protected]>
* util: Prefer atomic intrinsics to inline assembly.Matt Turner2014-11-241-2/+2
| | | | | | | | | | | | | Cuts a little more than 1k of .text size from i915g. This was previously done in commit 5f66b340 and subsequently reverted in commit 3661f757 after bug 30514 was filed. I believe the cause of bug 30514 wasn't anything related to cross compiling, but rather that the toolchain used defaulted to -march=i386, and i386 doesn't have the CMPXCHG or XADD instructions used to implement the intrinsics. So we reverted a patch that improved things so that we didn't break compilation for a platform that never could have worked anyway.
* gallium/auxiliary: add inc and dec alternative with return (v4)Christoph Bumiller2014-11-181-0/+52
| | | | | | | | | | | | | | | At this moment we use only zero or positive values. v2: Implement it for also for Solaris, MSVC assembly and enable for other combinations. v3: Replace MSVC assembly by assert + warning during compilation v4: remove inc and dec with return for MSVC assembly Acked-by: Jose Fonseca <[email protected]> Reviewed-by: Ilia Mirkin <[email protected]> Signed-off-by: David Heidelberg <[email protected]>
* Remove windows kernel support code.José Fonseca2011-11-291-4/+1
| | | | | | Not actively used. Reviewed-by: Brian Paul <[email protected]>
* Revert "Prefer intrinsics to handrolled atomic ops."Tom Fogal2010-09-301-2/+2
| | | | | This reverts commit 5f66b340aa49c6bc8d0acb2d1a6f8e9a7ef2cb2e, quickly fixing 30514.
* Prefer intrinsics to handrolled atomic ops.Tom Fogal2010-09-301-2/+2
|
* Implement x86_64 atomics for compilers w/o intrinsics.Tom Fogal2010-09-301-0/+47
| | | | | Really old gcc's (3.3, at least) don't have support for the intrinsics we need. This implements a fallback for that case.
* util: Use GCC atomic bultins on GCC 4.1 and higher only.Vinson Lee2010-04-031-1/+1
|
* Gallium: Add Solaris atomic function definitions to u_atomic.hAlan Coopersmith2010-02-061-1/+35
| | | | Signed-off-by: Alan Coopersmith <[email protected]>
* util: Cast to match the MSVC intrinsics.José Fonseca2010-02-031-4/+4
| | | | The cast is not optional in C++.
* util: Don't include system headers inside extern "C" { ... }José Fonseca2010-02-031-11/+35
| | | | That breaks when some of the system headers have C++ code.
* gallium: Move p_thread.h and p_atomic.h out of gallium interfaces.José Fonseca2010-02-021-0/+247
Into os/os_thread.h and util/u_atomic.h respectively.