Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | i965/fs: Remove the requirement of no dead code for interference checks. | Eric Anholt | 2012-05-14 | 1 | -12/+12 | |
| | | | | | | | | This will be convenient when I want to comment out optimization code to see the raw program being optimized, but more importantly will let the interference check be used during optimization. Acked-by: Kenneth Graunke <[email protected]> | |||||
* | i965/fs: Add support for copy propagation. | Eric Anholt | 2012-05-14 | 5 | -0/+143 | |
| | | | | | | | | | | | | We could do more by handling abs/negate and non-GRF sources, but this is a good start. Improves tropics performance 0.30% +/- .17% (n=43). shader-db results: Total instructions: 208032 -> 207184 60/1246 programs affected (4.8%) 23286 -> 22438 instructions in affected programs (3.6% reduction) Reviewed-by: Kenneth Graunke <[email protected]> | |||||
* | i965/fs: When doing no work for live interval calculation, do no allocation. | Eric Anholt | 2012-05-14 | 1 | -7/+7 | |
| | | | | | | | | | When I had a bug causing the backend to never finish optimizing, it also sent me deep into swap. This avoids extra memory allocation per trip through optimization, and thus may reduce the peak memory allocation of the driver even in the success case. Reviewed-by: Kenneth Graunke <[email protected]> | |||||
* | i965/gen7: Set tile_x/y to 0 in the no-stencil case. | Eric Anholt | 2012-05-14 | 1 | -1/+1 | |
| | | | | Fixes compiler warnings. | |||||
* | intel: Fix signed/unsigned comparison warnings. | Eric Anholt | 2012-05-14 | 2 | -5/+6 | |
| | ||||||
* | intel: Fix compile warning from 7b6424143d8bf572cadd46adcbaa91d2a5598635 | Eric Anholt | 2012-05-14 | 1 | -2/+2 | |
| | ||||||
* | intel: Fix compiler warning from 3cd7bee48f7caf7850ea64d40f43875d4c975507 | Eric Anholt | 2012-05-14 | 1 | -2/+0 | |
| | ||||||
* | i965/fs: Add a local common subexpression elimination pass. | Kenneth Graunke | 2012-05-14 | 4 | -0/+201 | |
| | | | | | | | | | | | | | | | | | Total instructions: 18210 -> 17836 49/163 programs affected (30.1%) 12888 -> 12514 instructions in affected programs (2.9% reduction) This reduces Lightsmark's "Scale down filter" shader from 395 instructions to 283, a whopping 28%. It also reduces register pressure significantly: the SIMD8 program now uses 29 registers instead of 101, giving us more than enough room for a SIMD16 program. v2: Add && !inst->conditional_mod to the "skip some instructions" check. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> | |||||
* | i965/fs: Use a const reference in fs_reg::equals instead of a pointer. | Kenneth Graunke | 2012-05-14 | 3 | -16/+16 | |
| | | | | | | | | | | This lets you omit some ampersands and is more idiomatic C++. Using const also marks the function as not altering either register (which was obvious, but nice to enforce). Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> | |||||
* | mesa: print the Git SHA1 in GL_VERSION for ES1 and ES2. | Oliver McFadden | 2012-05-14 | 1 | -2/+10 | |
| | | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]> | |||||
* | mesa: GLES specifies restrictions on uniform matrix transpose. | Oliver McFadden | 2012-05-14 | 1 | -0/+10 | |
| | | | | | | | | | GL_INVALID_VALUE is generated if transpose is not GL_FALSE. http://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]> | |||||
* | radeonsi: Keep around copies of original sampler states. | Michel Dänzer | 2012-05-14 | 1 | -0/+2 | |
| | | | | Fixes crashes when restoring sampler states after blits. | |||||
* | radeonsi: Flesh out shader interpolation related code. | Michel Dänzer | 2012-05-14 | 3 | -4/+38 | |
| | | | | Handle perspective interpolation and ceontroid vs. center. | |||||
* | radeonsi: Add proper SI family names. | Michel Dänzer | 2012-05-14 | 1 | -1/+3 | |
| | ||||||
* | radeonsi: Separate states for samplers and sampler views. | Michel Dänzer | 2012-05-14 | 2 | -3/+6 | |
| | | | | And reset nregs on updates. Prevents eventual assertion failure. | |||||
* | radeonsi: Fixups for drawing with an index buffer. | Michel Dänzer | 2012-05-14 | 3 | -14/+13 | |
| | | | | | Mostly using the DRAW_INDEX_2 type 3 packet instead of DRAW_INDEX, which is no longer supported on SI. | |||||
* | vl: Initialize pipe_vertex_buffer.user_buffer fields. | Vinson Lee | 2012-05-14 | 1 | -0/+4 | |
| | | | | | | | Fix uninitialized scalar variable defects reported by Coverity. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: José Fonseca <[email protected]> | |||||
* | llvmpipe: Calculate fixed point coordinates for triangle setup earlier. | James Benton | 2012-05-14 | 1 | -56/+106 | |
| | | | | | | | | | | | | This allows us to calculate the triangle's area using fixed point, previously it was cacluated in floating point space. It was possible that a triangle which had negative area in floating point space had a positive area in fixed point space. Fixes fdo 40920. Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Brian Paul <[email protected]> | |||||
* | radeon/llvm: Coding style fixes for R600CodeEmitter.cpp | Tom Stellard | 2012-05-14 | 1 | -148/+90 | |
| | ||||||
* | radeon/llvm: Lower bitcast instructions to copies | Tom Stellard | 2012-05-14 | 1 | -0/+10 | |
| | ||||||
* | radeonsi: remove slab allocator for pipe_resource (used mainly for user buffers) | Marek Olšák | 2012-05-13 | 3 | -41/+3 | |
| | ||||||
* | r600g: remove slab allocator for pipe_resource (used mainly for user buffers) | Marek Olšák | 2012-05-13 | 3 | -41/+4 | |
| | ||||||
* | r600g: handle R16G16B16_FLOAT and R32G32B32_FLOAT in translate_colorswap (EG) | Marek Olšák | 2012-05-12 | 1 | -0/+2 | |
| | ||||||
* | gallium: remove user_buffer_create from the interface | Marek Olšák | 2012-05-12 | 21 | -233/+1 | |
| | | | | Nothing uses it now. | |||||
* | gallium/graw: stop using user_buffer_create | Marek Olšák | 2012-05-12 | 16 | -73/+106 | |
| | | | | This is compile-tested. | |||||
* | gallium/util: remove unused parameter nr_vertex_buffers in util_draw_max_index | Marek Olšák | 2012-05-12 | 3 | -3/+0 | |
| | ||||||
* | clover: Fix build on i386. | Francisco Jerez | 2012-05-12 | 1 | -1/+2 | |
| | ||||||
* | clover: Check the total work-group size provided to clEnqueueNDRangeKernel. | Francisco Jerez | 2012-05-12 | 1 | -10/+17 | |
| | ||||||
* | clover, gallium: add PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK | Christoph Bumiller | 2012-05-12 | 5 | -1/+15 | |
| | | | | | | | This is not necessarily the product of MAX_BLOCK_SIZE[i]. Reviewed-by: Tom Stellard <[email protected]> Reviewed-by: Francisco Jerez <[email protected]> | |||||
* | r600g: Handle compute caps. | Francisco Jerez | 2012-05-12 | 1 | -0/+3 | |
| | ||||||
* | r300g: Handle compute caps. | Francisco Jerez | 2012-05-12 | 1 | -0/+5 | |
| | ||||||
* | auxiliary/util: Ensure pipe_constant_buffer::user_buffer is initialized. | José Fonseca | 2012-05-12 | 1 | -0/+1 | |
| | ||||||
* | scons: Fix missing gbm symbols in st/egl. | José Fonseca | 2012-05-12 | 1 | -3/+5 | |
| | ||||||
* | targets/egl-static: Fix some missing symbols. | José Fonseca | 2012-05-12 | 1 | -0/+2 | |
| | ||||||
* | trace: Fix pipe_context::clear dumping. | José Fonseca | 2012-05-12 | 1 | -1/+3 | |
| | ||||||
* | trace: Fix pipe_shader_state dumping. | José Fonseca | 2012-05-12 | 1 | -2/+4 | |
| | ||||||
* | scons: Link r600_drm.so against libdrm-radeon | José Fonseca | 2012-05-12 | 1 | -0/+3 | |
| | ||||||
* | trace: Match NULL context members. | José Fonseca | 2012-05-12 | 1 | -73/+79 | |
| | ||||||
* | gallium/docs: remove documentation of redefine_user_buffer | Marek Olšák | 2012-05-12 | 1 | -14/+0 | |
| | ||||||
* | radeonsi: Fixed point vertex formats aren't supported. | Michel Dänzer | 2012-05-12 | 1 | -4/+5 | |
| | ||||||
* | radeonsi: Fixups for recent build infrastructure changes. | Michel Dänzer | 2012-05-12 | 3 | -0/+15 | |
| | | | | In particular for the pipe loader changes. | |||||
* | r600g: setup COLOR1 for possible dual-src in the framebuffer bind | Dave Airlie | 2012-05-12 | 4 | -15/+12 | |
| | | | | | | | | As pointed out by Marek, if we have only one cb, we may as well add this single register write here rather than adding it in the draw loop. Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Dave Airlie <[email protected]> | |||||
* | nv30: Silence pipe_cap warnings | Roy Spliet | 2012-05-12 | 1 | -0/+4 | |
| | | | | | Signed-off-by: Roy Spliet <[email protected]> Signed-off-by: Ben Skeggs <[email protected]> | |||||
* | nv30/shader: SSG, LIT only requires one source register | Roy Spliet | 2012-05-12 | 2 | -2/+2 | |
| | | | | | | | Fixes crashing due to assertion error Signed-off-by: Roy Spliet <[email protected]> Signed-off-by: Ben Skeggs <[email protected]> | |||||
* | nouveau/vieux: finish != flush, how about we do that.. | Ben Skeggs | 2012-05-12 | 3 | -0/+23 | |
| | | | | Signed-off-by: Ben Skeggs <[email protected]> | |||||
* | r300g/swtcl: move vertex buffer updates into set_vertex_buffers | Marek Olšák | 2012-05-12 | 2 | -29/+34 | |
| | ||||||
* | r300g/swtcl: move index buffer updates from swtcl_draw_vbo into set_index_buffer | Marek Olšák | 2012-05-12 | 2 | -15/+24 | |
| | ||||||
* | r300g/swtcl: malloc vertex and index buffers (don't use radeon DRM to get them) | Marek Olšák | 2012-05-12 | 4 | -43/+23 | |
| | | | | | | Vertex and index buffers are never used by hardware, only by Draw. SWTCL chipsets usually have very little memory, so this might help with stability and reliability. | |||||
* | r300g/swtcl: don't do stuff which is only for HWTCL | Marek Olšák | 2012-05-12 | 2 | -13/+19 | |
| | ||||||
* | r300g: remove slab allocator for pipe_resource (used mainly for user buffers) | Marek Olšák | 2012-05-12 | 4 | -45/+3 | |
| |