summaryrefslogtreecommitdiffstats
path: root/src/gallium/include/pipe/p_refcnt.h
Commit message (Collapse)AuthorAgeFilesLines
* gallium: Make pipe_atomic a regular int32_t.José Fonseca2010-02-021-52/+0
|
* gallium: pipe/p_inlines.h -> util/u_inlines.hJosé Fonseca2010-02-021-44/+0
|
* gallium: Remove unnecessary includes. Add others to compensate.José Fonseca2010-02-011-0/+1
|
* gallium: added comment for pipe_reference() return valueBrian Paul2009-12-111-0/+1
|
* gallium: use boolean instead of bool in p_refcnt.hRoland Scheidegger2009-12-081-3/+3
| | | | all code in gallium should use boolean not bool
* gallium: fix reference counting functions to be strict-aliasing compliantRoland Scheidegger2009-12-031-10/+8
| | | | | | | | | | | Historically, parts of mesa code are not strict-aliasing safe, hence -fno-strict-aliasing is needed to compile (this got forgotten for scons builds for gallium, which indeed not only caused compiler warnings but also unexplicable crashes in non-debug builds). However, we should try to eliminate code not complying with strict-aliasing code at least for gallium. Hence change pipe_reference functions to make them strict-aliasing compliant. This adds a bit more complexity (especially for derived classes) but is the right thing to do, and it does in fact fix a segfault.
* gallium: Avoid atomic ops / locking when src is dst.José Fonseca2009-06-161-14/+14
|
* gallium: Remove remnants of reference counting internals outside of p_refcnt.h.Michel Dänzer2009-03-231-2/+10
|
* gallium: Use struct pipe_atomic for pipe refcounts.Thomas Hellstrom2009-03-161-6/+7
| | | | Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* gallium: Fix p_refcnt.h for C++ compilers.Michel Dänzer2009-03-091-0/+3
|
* gallium: Unify reference counting.Michel Dänzer2009-03-041-0/+84
The core reference counting code is centralized in p_refcnt.h. This has some consequences related to struct pipe_buffer: * The screen member of struct pipe_buffer must be initialized, or pipe_buffer_reference() will crash trying to destroy a buffer with reference count 0. u_simple_screen takes care of this, but I may have missed some of the drivers not using it. * Except for rare exceptions deep in winsys code, buffers must always be allocated via pipe_buffer_create() or via screen->*buffer_create() rather than via winsys->*buffer_create().