summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/swr/rasterizer/common
Commit message (Collapse)AuthorAgeFilesLines
...
* swr: [rasterizer core] RingBuffer class for DC/DSTim Rowley2016-03-251-0/+1
| | | | | | | | | | | | | Use head/tail ring buffer indices for thread synchronization. 1. SwrWaitForIdle loops until ring is empty. (head == tail) 2. GetDrawContext waits until ring is not full. (head - tail) == Ring Size 3. Draw enqueues by incrementing head. 4. Last worker thread to move past a DC dequeues by incrementing tail. Todo: To reduce contention we can cache the tail in the API thread. For example, if you know you have 64 free entries in the ring then you don't need to keep checking the tail until you used those 64 entries.
* gallium/swr: fix issues preventing a 32-bit buildTim Rowley2016-03-071-1/+0
| | | | | | | | | Not a currently tested configuration, but these couple of small changes allow a 32-bit build. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94383 Acked-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Brian Paul <brianp@vmware.com>
* gallium/swr: add OpenSWR rasterizerTim Rowley2016-03-0211-0/+8102
Acked-by: Roland Scheidegger <sroland@vmware.com> Acked-by: Jose Fonseca <jfonseca@vmware.com>