aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe
Commit message (Collapse)AuthorAgeFilesLines
* llvmpipe: IgnoresJakob Bornecrantz2010-06-221-0/+1
|
* llvmpipe: make geometry shaders and stream output workZack Rusin2010-06-228-3/+180
|
* llvmpipe: s/lpfs/shader/José Fonseca2010-06-212-5/+5
|
* llvmpipe: Fix pointer dereference after free.José Fonseca2010-06-181-1/+2
|
* llvmpipe: limit the number of fragment shader variants kept aroundRoland Scheidegger2010-06-185-35/+107
| | | | | | | | | | | | | | | | | | llvmpipe can create a large number of shader variants for a single shader (which are quite big), and they were only ever deleted if the shader itself was deleted. This is especially apparent in things like glean blendFunc where a new variant is created for every different subtest, chewing up all memory. This change limits the numbers of fragment shader variants (for all shaders) which are kept around to a fixed number. If that would be exceeded a fixed portion of the cached variants is deleted (since without tracking the used variants this involves flushing we don't want to delete only one). Always the least recently used variants (from all shaders together) are deleted. For now this is all per-context. Both the number of how many variants are cached (1024) as well as how many will be deleted at once (1/4 of the cache size) are just rough guesses and subject to further optimization.
* llvmpipe: fix copy & paste bug in clear logicRoland Scheidegger2010-06-091-1/+1
| | | | fixes bug 28450.
* gallium: adjust the query interface to support custom typesZack Rusin2010-06-081-1/+2
| | | | we need to change it to support composite types
* llvmpipe: Add geom shader file to make buildJakob Bornecrantz2010-06-081-0/+1
|
* llvmpipe: Remove unnecessary header.Vinson Lee2010-06-071-1/+0
|
* llvmpipe: use util_clear_render_target/depth_stencil fallbacksRoland Scheidegger2010-06-071-0/+2
|
* llvmpipe: hook up basic gs and multiple constant buffer supportKeith Whitwell2010-06-078-10/+135
|
* Revert "llvmpipe: handle PIPE_CAP_TEXTURE_SWIZZLE query"Roland Scheidegger2010-06-051-2/+0
| | | | | This reverts commit acb20e7208341fb6a2b81ac10aa01f17e93a1dea. Oops should check commits after rebase...
* llvmpipe: handle PIPE_CAP_TEXTURE_SWIZZLE queryRoland Scheidegger2010-06-051-0/+2
| | | | asserts on unknown caps
* llvmpipe: Expose PIPE_CAP_TEXTURE_SWIZZLE.José Fonseca2010-06-051-0/+2
|
* llvmpipe: new -s option to run single testBrian Paul2010-06-047-3/+63
| | | | | Put specific test code in the test_single() function and pass -s to execute that code.
* llvmpipe: Do unswizzling in parallel when flushing for transfers.José Fonseca2010-06-041-0/+7
|
* llvmpipe: Fix uninitialized variable on non-debug builds.Vinson Lee2010-06-031-0/+1
|
* Merge branch 'gallium-newclear'Roland Scheidegger2010-06-038-28/+113
|\ | | | | | | | | Conflicts: src/gallium/state_trackers/python/p_context.i
| * llvmpipe: adapt to clear interface changesRoland Scheidegger2010-05-298-28/+113
| | | | | | | | | | with some newfangled code, should support separate depth/stencil clears. Needs some testing.
* | llvmpipe: Number shaders/variants for more reproducible function names in ↵José Fonseca2010-06-032-7/+28
| | | | | | | | the IR.
* | gallium: silence all debug_named_value related warningsJoakim Sindholt2010-06-031-11/+11
| |
* | llvmpipe: Fix bad logic.José Fonseca2010-06-021-1/+1
| | | | | | | | Courtesy of Vinson and coverity.
* | llvmpipe: Remove unnecessary header.Vinson Lee2010-06-021-1/+0
| |
* | llvmpipe: Fix typo in assert.José Fonseca2010-06-021-1/+1
| |
* | llvmpipe: Per quad interpolation.José Fonseca2010-06-022-190/+136
| | | | | | | | | | | | | | | | | | | | First interpolate the 4 quads upper left corners, then sub-interpolate each quad pixel. Do the perspective divide once per quad. Saves some muls and reciprocates. But doesn't seem to make a noticeable improvement. It make the code simpler and more compact, so commiting anyway.
* | llvmpipe: Minor cleanup to the interpolator.José Fonseca2010-06-022-46/+54
| |
* | llvmpipe: Centralize all position interpolation in lp_bld_interp.c.José Fonseca2010-06-023-51/+43
| |
* | llvmpipe: Obey color interpolation.José Fonseca2010-06-011-16/+17
| | | | | | | | | | Don't force color to be linearly interpolated when that's not being requested.
* | llvmpipe: Use struct lp_shader_input in the interpolator.José Fonseca2010-06-016-110/+160
| | | | | | | | | | | | | | | | Eliminates all this identical yet slightly different code to decide how shader inputs should be interpolated. As bonus, don't interpolate the position twice when it is listed in the TGSI shader inputs.
* | llvmpipe: Don't waste time interpolating unused input channels.José Fonseca2010-06-016-49/+47
| |
* | llvmpipe: Show fs's TGSI when LP_DEBUG=tgsi is set.José Fonseca2010-05-311-1/+2
| |
* | llvmpipe: Remove unused framebuffer stuff from the rasterizer.José Fonseca2010-05-302-18/+6
| |
* | llvmpipe: Don't force a linear to tiled conversion after rasterization on ↵José Fonseca2010-05-301-12/+14
| | | | | | | | | | | | debug builds. Only do this if runtime debugging flags to show subtiles/tiles are set.
* | llvmpipe: Call llvmpipe_set_texture_tile_layout only when necessary.José Fonseca2010-05-301-2/+4
| | | | | | | | Like the other places.
* | llvmpipe: Use pointer_to_func() instead of custom wrappers.José Fonseca2010-05-305-70/+8
| |
* | llvmpipe: Pass the fs variant to the rasterizer.José Fonseca2010-05-309-81/+113
| |
* | llvmpipe: add PIPE_BUFFER to assertionBrian Paul2010-05-281-1/+2
| | | | | | | | Fixes regression from commit f2e05acac931889e0820e1cc5d7ea810048a6b5f.
* | llvmpipe: add out of memory checking to triangle setup pathBrian Paul2010-05-281-5/+9
| |
* | llvmpipe: s/bool/boolean/Brian Paul2010-05-271-2/+2
| |
* | llvmpipe: s/bool/booleanBrian Paul2010-05-271-2/+2
| |
* | llvmpipe: Refer to my personal udis86 repository.José Fonseca2010-05-271-2/+3
|/ | | | As it has a bunch of fixes/additions not merged by upstream yet.
* llvmpipe: Stop relying on PIPE_FLUSH_TEXTURE_CACHE/PIPE_FLUSH_RENDER_CACHE ↵José Fonseca2010-05-252-32/+11
| | | | | | | | | | magic. Flush means flush, i.e., all previous operations should be visible from other contexts. This does not imply unswizzling tiles, since unswizzling should be done on a needed basis for any context.
* llvmpipe: Also test compressed formats in lp_test_format()José Fonseca2010-05-241-0/+2
|
* llvmpipe: Fix lp_test_format on 32bit OSes.José Fonseca2010-05-241-1/+1
|
* llvmpipe: Delete extraneous arugment too.José Fonseca2010-05-241-1/+1
|
* llvmpipe: Remove unused sincos_test_case struct.José Fonseca2010-05-241-6/+2
|
* llvmpipe: Unit test for sin/cos that compares against reference implementation.Qicheng Christopher Li2010-05-244-1/+984
| | | | Signed-off-by: José Fonseca <[email protected]>
* llvmpipe: Fill in slice_stride.José Fonseca2010-05-221-0/+1
|
* Merge branch 'gallium-msaa'Roland Scheidegger2010-05-213-20/+33
|\ | | | | | | | | | | Conflicts: src/mesa/state_tracker/st_gen_mipmap.c src/mesa/state_tracker/st_texture.c
| * gallium: implement set_sample_mask() in all driversRoland Scheidegger2010-05-181-0/+6
| | | | | | | | | | | | | | | | prevents segfault when state trackers try to set default mask. Other option would be to make this required only for drivers supporting multisampling, but this seems more clean. Only dummy implementations (for normal drivers) provided (no driver supports multisampling yet neither).