summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2010-07-16r300g: do not make copies of constant buffers, emit them directlyMarek Olšák
2010-07-16draw: updated debug/dump codeBrian Paul
2010-07-16draw: added array element debug / bounds checking code (disabled)Brian Paul
2010-07-16llvmpipe: use single swizzled tileKeith Whitwell
Use a single swizzled tile per colorbuf (and per thread) to avoid accumulating large amounts of cached swizzled data. Now that the SSE3 code has been merged to master, the performance delta of this change is minimal, the main benefit is reduced memory usage due to no longer keeping swizzled copies of render targets. It's clear from the performance of the in-place version of this code that there is still quite a bit of time being spent swizzling & unswizzling, but it's not clear exactly how to reduce that.
2010-07-16llvmpipe: Describe _mm_shuffle_epi8() with gcc extended inline assembly when ↵José Fonseca
-mssse3 is not supported/enabled.
2010-07-16llvmpipe: Only use -mssse3 on gcc 4.3+José Fonseca
2010-07-16draw/llvm: adjust the instance id at run timeZack Rusin
fixes instancing in draw llvm
2010-07-16draw: use the instance id when fetching vertex dataZack Rusin
2010-07-16st/egl: Fix build on FreeBSD.Chia-I Wu
There is no libdl on FreeBSD. Based on patch from Thinker <thinker@branda.to>, which is against 7.8. This fixes fdo bug #29093.
2010-07-16i965g: Remove dead initialization in precalc_tex.Vinson Lee
2010-07-16r300g: rebuild winsys and command submission to support multiple contextsMarek Olšák
2010-07-15llvmpipe: implement instanced drawing functionsBrian Paul
And express all the other drawing functions in terms of llvmpipe_draw_range_elements_instanced().
2010-07-15draw: update comments for drawing functionsBrian Paul
2010-07-15draw: move prototype, update commentBrian Paul
2010-07-15softpipe: re-order drawing functions to get rid of prototypeBrian Paul
2010-07-15graw: new tri-instanced.c program to test instanced drawingBrian Paul
2010-07-15llvmpipe: Remove redundant statement.José Fonseca
Thanks to Vinson for spotting this.
2010-07-15tgsi: Remove dead assignment in uprcase function.Vinson Lee
2010-07-14llvmpipe: delete lp_test_*.o files with make cleanBrian Paul
2010-07-14gallium: added CLEAN_EXTRA var for make clean targetBrian Paul
2010-07-14gallium: Ensure prototypes are wrapped in extern "C".José Fonseca
Fixes MSVC build failure due to inconsistent _ReadWriteBarrier prototype.
2010-07-14llvmpipe: Remove redundant alignments.José Fonseca
The lp_rast_shader_inputs' alignment is irrelevant now that it contains pointers instead of actual data. Likewise, lp_rast_triangle's size alignment is meaningless.
2010-07-14llvmpipe: Addi ssse3 swizzling for B8G8R8A8_UNORM.Chris Li
2010-07-14gallium: Add a macro for memory barriers.José Fonseca
2010-07-14gallium: Add a new PIPE_ARCH_SSSE3 define for SSSE3 compiler support.José Fonseca
2010-07-13Merge branch 'mesa-2d-registers'Zack Rusin
2010-07-13i965g: Fix scons build of dri driverJakob Bornecrantz
2010-07-13llvmpipe: fix comment typoRoland Scheidegger
2010-07-13llvmpipe: move rasterizer to screen instead of setup contextRoland Scheidegger
there's no point of having this per context, so move to screen (and protect with a mutex).
2010-07-13llvmpipe: Align texture data to the cache line.José Fonseca
2010-07-13llvmpipe: eliminate the set_state rasterizer commandKeith Whitwell
Just put a pointer to the state in the tri->inputs struct. Remove some complex logic for eliminating unused statechanges in bins at the expense of a slightly larger triangle struct.
2010-07-13llvmpipe: pass mask into fragment shaderKeith Whitwell
Move this code back out to C for now, will generate separately. Shader now takes a mask parameter instead of C0/C1/C2/etc. Shader does not currently use that parameter and rasterizes whole pixel stamps always.
2010-07-13llvmpipe: move fences from per-bin to per-threadKeith Whitwell
Rather than inserting an lp_rast_fence command at the end of each bin, have each rasterizer thread call this function directly once it has run out of work to do on a particular scene. This results in fewer calls to the mutex & related functions, but more importantly makes it easier to recognize empty bins.
2010-07-13llvmpipe: Always swizzle/unswizzle whole tiles.José Fonseca
This was already the case, but the generated (un)swizzling code was not benefiting of that knowledge.
2010-07-13llvmpipe: Ignores!Jakob Bornecrantz
2010-07-13targets: Link xorg drivers with LLVM if builtJakob Bornecrantz
2010-07-13targets: Clean up xorg make files a bitJakob Bornecrantz
2010-07-13libgl-xlib: add depend to make clean listBrian Paul
2010-07-13r300g: do not advertise half_float_vertex on rv3x0Marek Olšák
rv3x0 can't do it.
2010-07-13r300g: extend and clean up debug loggingMarek Olšák
2010-07-13r300g/swtcl: do not emit texcoords if they are also stuffed in GAMarek Olšák
2010-07-13r300g: rework the draw_rectangle hookMarek Olšák
It is a lot simplier, cleaner, and more stable now.
2010-07-12r300g: Remove unnecessary header.Vinson Lee
2010-07-12llvmpipe: Re-enable threading on windows.José Fonseca
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-07-12r300g: implement fast color clearMarek Olšák
An initial implementation made by Dave Airlie. For it to be used, a color-only clear must be invoked and exactly one point-sampled render target must be set. The render target must be macrotiled (for us to overcome alignment issues) and bpp must be either 16 or 32. I can't see a difference in performance. :( Conflicts: src/gallium/drivers/r300/r300_blit.c
2010-07-12r300g: clear and copy a resource with a rectangular point spriteMarek Olšák
With an ordinary quad, the pixels on the main diagonal are computed and stored twice, which is somewhat inefficient and might not work well with specialized clear codepaths.