summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r600g: use u_default_transfer_inline_write for all resource typesMarek Olšák2012-02-273-26/+3
|
* gallium/util: add fast path for buffers in u_default_transfer_inline_writeMarek Olšák2012-02-271-14/+23
| | | | v2: fix indentation, add assertions
* gallium/util: set correct usage flags in u_default_transfer_inline_writeMarek Olšák2012-02-271-0/+12
| | | | The DISCARD flags should improve performance in drivers which handle them.
* r600g: fix streamout cache flush for r600Marek Olšák2012-02-271-4/+12
| | | | Figured out by trial and error.
* vl: fix a douple free in xsp winsys backendChristian König2012-02-271-1/+1
| | | | | | | There are a couple of more bugs, but it is only useful for debugging anyway. Signed-off-by: Christian König <[email protected]>
* vl: adjust matrix and median filter to removal of PIPE_SHADER_CAP_OUTPUT_READChristian König2012-02-272-9/+12
| | | | Signed-off-by: Christian König <[email protected]>
* r600g: cleanup r600_transfer_structMarek Olšák2012-02-272-16/+12
| | | | | Especially rename staging_texture to staging and change its type to r600_resource. I will reuse it for buffers later.
* r600g: check for R600_STREAMOUT env var in winsysMarek Olšák2012-02-273-2/+7
|
* r600g: move initialization of use_surface flag into screen_createMarek Olšák2012-02-275-25/+18
| | | | Also change the type to bool and give it a less ambiguous name.
* r600g: properly check whether texture is busy in get_transferMarek Olšák2012-02-271-9/+5
|
* r600g: rename r600_resource_texture::depth to bool is_depthMarek Olšák2012-02-275-16/+16
| | | | It's used as a boolean.
* gallium: remove PIPE_SHADER_CAP_OUTPUT_READMarek Olšák2012-02-277-15/+0
| | | | | | | | | | | | r600g is the only driver which has made use of it. The reason the CAP was added was to fix some piglit tests when the GLSL pass lower_output_reads didn't exist. However, not removing output reads breaks the fallback for glClampColorARB, which assumes outputs are not readable. The fix would be non-trivial and my personal preference is to remove the CAP, considering that reading outputs is uncommon and that we can now use lower_output_reads to fix the issue that the CAP was supposed to workaround in the first place.
* gallium/rtasm: properly detect SSE and SSE2Marek Olšák2012-02-271-24/+24
| | | | This should fix crashes on ancient processors.
* r300g: Use automake to generate Makefile v3Tom Stellard2012-02-265-80/+43
| | | | | | | | | | v2: - s/$(top_builddir)/$(top_srcdir)/ - Always generate Makefile.in v3: - Fixes from Matt Turner - Use Mesa CFLAGS
* r300g: Reorganize the compiler unit testsTom Stellard2012-02-264-2/+12
|
* r300/compiler: Schedule KIL instructions before output writesTom Stellard2012-02-261-0/+4
|
* r300/compiler: Use the smart scheduler for r300 cardsTom Stellard2012-02-261-73/+54
|
* r300/compiler: Fix bug when lowering KILP on r300 cardsTom Stellard2012-02-261-10/+54
| | | | | | | | | | | KILP instruction inside IF blocks were being lowered to an unconditional KIL. Since r300 doesn't support branching, when the IF's were lowered to conditional moves, the KIL would always be executed. This is not a problem with the mesa state tracker, because the GLSL compiler handles lowering IF's, but this bug was appearing in the VDPAU state tracker, which does not use the GLSL compiler. Note: This is a candidate for the stable branches.
* vl/compositor: fix a simple typoChristian König2012-02-251-1/+1
| | | | | | Otherwise the dirty area tracking won't work correctly. Signed-off-by: Christian König <[email protected]>
* st/xvmc: move xvmc state tracker out of xorg subdirChristian König2012-02-2518-82/+82
| | | | | | | | The xvmc state tracker is completely seperate and doesn't shares code or anything else with the xorg state tracker. Signed-off-by: Christian König <[email protected]>
* vl: rework winsys interfaceChristian König2012-02-2514-251/+126
| | | | | | Throw out all the old and now unneeded stuff. Signed-off-by: Christian König <[email protected]>
* vl: cleanup dri winsys abstractionChristian König2012-02-257-1575/+56
| | | | | | There was way to much dead code in it. Signed-off-by: Christian König <[email protected]>
* i915g: Fix fallout from 8e4540ec2a82e72be491bc8fe23c10551d29a96cStéphane Marchesin2012-02-241-4/+10
| | | | Fixes piglit regressions from that change.
* svga: Fix stencil op mappingZack Rusin2012-02-241-4/+4
| | | | | | | | | We were inverting the meaning of the stencil op flags: in svga/d3d the normal incr/decr wraps and the SAT ops clamp. This fixes piglit failures (at least stencil-twoside and stencil-wrap). We should backport this everywhere we can. Reviewed-by: Brian Paul <[email protected]>
* svga: fix use of SVGA3D_x vs. PIPE_FORMAT_x in svga_is_format_supported()Brian Paul2012-02-241-2/+2
| | | | | | | | | Two of the switch cases used PIPE_FORMAT_ tokens instead of SVGA3D_ tokens. As it happens, the token values are equal for these formats so there's no net change. Reviewed-by: José Fonseca <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* st/glx: remove STENCIL_BITS, DEFAULT_SOFTWARE_DEPTH_BITSBrian Paul2012-02-241-3/+3
| | | | Remove some Mesa/swrast stuff.
* st/glx: remove MAX_WIDTH/HEIGHT usageBrian Paul2012-02-241-3/+6
|
* u_blitter: decrease minimum buffer range alignment to 4 for copy_bufferMarek Olšák2012-02-241-5/+5
|
* u_blitter: check for invalid values in copy_bufferMarek Olšák2012-02-241-0/+11
|
* r600g: rework queriesMarek Olšák2012-02-233-116/+167
| | | | | | | | | | | | | | | | We always mapped the query buffer in begin_query, causing stalls if the buffer was busy. This commit reworks it such that the query buffer is only mapped in get_query_result as it's supposed to be. The query buffer is no longer treated as a ring buffer. Instead, the results are just appended and when the buffer is full, we create a new one. One query can have more than one query buffer, though that's a very rare case. Begin_query releases all query buffers. Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: cleanup magic numbers in set_xx_samplerMarek Olšák2012-02-232-6/+6
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove duplicated evergreen_context_ps_partial_flushMarek Olšák2012-02-233-15/+3
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove duplicated evergreen_context_pipe_state_set_samplerMarek Olšák2012-02-233-31/+5
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove duplicated set_xx_resource functionsMarek Olšák2012-02-234-48/+13
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove duplicated function r600_state_sampler_initMarek Olšák2012-02-233-18/+3
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: fixup name of evergreen-specific functionMarek Olšák2012-02-231-5/+5
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: simplify fail paths in create_contextMarek Olšák2012-02-231-22/+15
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* gallium/u_slab: fix possible crash in util_slab_destroyMarek Olšák2012-02-231-3/+5
| | | | | | | It may happen if util_slab_create has not been called. Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: fix possible crashes in destroy_context when failing in create_contextMarek Olšák2012-02-232-25/+38
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: consolidate common context init codeMarek Olšák2012-02-233-34/+16
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: define GROUP_FORCE_NEW_BLOCK in common headerMarek Olšák2012-02-233-4/+2
| | | | | Reviewed-by: Jerome Glisse <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* st/dri: Fix crash in st/dri from dri format commitJakob Bornecrantz2012-02-231-2/+1
| | | | | | | Introduced with 8de5c355fa2bf0f30df2c7cf39aee01e793284bf, it would probably just crash. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by: Jesse Barnes <[email protected]>
* util: add mutex lock in u_debug_memory.c codeBrian Paul2012-02-231-0/+9
| | | | | | | The linked list of memory allocations was not protected by a mutex. This lead to sporadic failures with multi-threaded apps. Reviewed-by: Jose Fonseca <[email protected]>
* svga: no-op sampler view referencing if no changeBrian Paul2012-02-231-6/+8
| | | | Just to be safe with ref counting and avoid atomic operations.
* svga: use pipe_sampler_view_release() to avoid segfaultBrian Paul2012-02-231-2/+6
| | | | | | | This fixes another case of faulting when freeing a pipe_sampler_view that belongs to a previously destroyed context. Reviewed-by: Jose Fonseca <[email protected]>
* st/wgl: check for hPbuffer=0 in wgl pbuffer functionsBrian Paul2012-02-231-0/+20
| | | | | | | Per the GL_WGL_pbuffer spec, generate ERROR_INVALID_HANDLE and return FALSE (and don't segfault). Reviewed-by: Jose Fonseca <[email protected]>
* st/wgl: Fix argument of stw_pixelformat_get_info().José Fonseca2012-02-231-1/+1
| | | | | stw_pixelformat_get_info takes zero based index, not a 1 based pixel format number.
* gallium: added pipe_sampler_view_release() functionBrian Paul2012-02-231-0/+22
| | | | Reviewed-by: Jose Fonseca <[email protected]>
* svga: re-enable deleted surface cachingBrian Paul2012-02-231-2/+1
| | | | | | | | Basically, instead of immediately freeing deleted surfaces, hang onto them in a cache to do quick re-allocation. This helps when surfaces are frequently destroyed and then reallocated a bit later. Reviewed-by: José Fonseca <[email protected]>
* svga: implement surface cache size limitBrian Paul2012-02-232-3/+137
| | | | | | | | | | | | | There was a SVGA_HOST_SURFACE_CACHE_BYTES symbol, but it was never used. Now when we go to add a newly deleted surface to the cache we check if the cache size would be exceeded. If so, try to free the least recently "unused" surfaces until the cache is smaller. If we can't do that, simply don't cache the newly deleted surface. The alternative involves flushing and waiting and we don't want to do that. Reviewed-by: José Fonseca <[email protected]>