summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* mesa: add EXT_texture_compression_latcMarek Olšák2011-03-0813-7/+234
| | | | | | | | | | | | | | | | | The encoding/decoding algorithms are shared with RGTC. Thanks to some magic with the base format, the RGTC texstore functions work for LATC too. swrast passes the related piglit tests besides two things: - The alpha channel is wrong (it's always 1), however the incorrect alpha channel makes some other tests fail too, so I guess it's unrelated to LATC. - Signed LATC fetches aren't correct yet (signed values are clamped to [0,1]), however RGTC has the same problem. Further testing (with other of my patches) shows that hardware drivers and softpipe work. BTW, ETQW uses this extension.
* st/mesa: Fix an incorrect user vertex buffer referenceThomas Hellstrom2011-03-081-4/+2
| | | | | | | | st->user_vb[attr] was always pointing to the same user vb, regardless of the value of attr. Together with reverting the temporary workaround for bug 34378, and a fix in the svga driver, this fixes googleearth on svga. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
* vbo: mark vertex arrays as dirty when re-bindingMarek Olšák2011-03-081-1/+12
| | | | | This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=34378
* r300/compiler: remove unused variablesMarek Olšák2011-03-081-1/+1
|
* swrast: flip the conditionals in shadow_compare4() for readabilityBrian Paul2011-03-081-24/+24
|
* swrast: add coord clamping, fix comparisons for shadow testingPhilip Taylor2011-03-081-27/+30
| | | | | | | | | This fixes https://bugs.freedesktop.org/show_bug.cgi?id=31159 for swrast and piglit depth-tex-compare. NOTE: This is a candidate for the 7.10 branch. Signed-off-by: Brian Paul <brianp@vmware.com>
* r300/compiler: fix equal and notequal shadow compare functionsMarek Olšák2011-03-081-18/+16
|
* r300/compiler: detect constants harderMarek Olšák2011-03-081-4/+8
|
* r300/compiler: improve the detection of constants for constant foldingMarek Olšák2011-03-081-0/+7
| | | | Now the expression V==0 generates one instruction instead of two.
* r300/compiler: saturate Z before the shadow comparisonMarek Olšák2011-03-081-37/+44
| | | | | | | This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=31159 NOTE: This is a candidate for the 7.9 and 7.10 branches.
* mesa: return after invalidating renderbufferMarek Olšák2011-03-071-0/+1
|
* st/mesa: fail to alloc a renderbuffer if st_choose_renderbuffer_format failsMarek Olšák2011-03-071-1/+5
| | | | | | This fixes: state_tracker/st_format.c:401:st_pipe_format_to_mesa_format: Assertion `0' failed.
* mesa: invalidate framebuffer if internal format of renderbuffer is changedMarek Olšák2011-03-072-6/+31
| | | | RenderTexture doesn't have to be called in invalidate_rb, I guess.
* mesa: initialize DummyBufferObject's mutexBrian Paul2011-03-071-0/+1
| | | | | | The mutex's fields were all zeros. That's OK on Linux, but not Windows. NOTE: This is a candidate for the 7.10 branch.
* st/mesa: fix incorrect version checking codeBrian Paul2011-03-071-2/+3
|
* mesa: remove stray _mesa_finish() call in _mesa_CopyPixels()Brian Paul2011-03-071-2/+0
| | | | Leftover debug code from 6364d75008b4fa580c1cb47c59ba1cf3e0caa6cd.
* i915: Only invert wpos when rendering to the system framebuffer.Henri Verbeet2011-03-071-7/+15
|
* i915: Derive the gl_fragment_program from i915_fragment_program.Henri Verbeet2011-03-071-6/+5
| | | | | | Instead of using the current gl_fragment_program. These aren't necessarily the same, for example when translate_program() is called by i915ValidateFragmentProgram().
* intel: check for miptree allocation failureChris Wilson2011-03-071-0/+2
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* intel: Add some defense against buffer allocation failure for subimage blitsChris Wilson2011-03-071-11/+11
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* intel: Add some defense against bo allocation failureChris Wilson2011-03-071-7/+11
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* glx/dri: add initial dri interface for GLX_EXT_framebuffer_sRGB.Dave Airlie2011-03-061-0/+3
| | | | This realigns the name of the glx bit to align with the core mesa names.
* gallium: split CAP_INSTANCE_DRAWING into INSTANCEID and INSTANCE_DIVISORMarek Olšák2011-03-051-1/+3
| | | | | | | | ARB_instanced_arrays is a subset of D3D9. ARB_draw_instanced is a subset of D3D10. The point of this change is to allow D3D9-level drivers to enable ARB_instanced_arrays without ARB_draw_instanced.
* i965: Apply a workaround for the Ironlake "vertex flashing".Eric Anholt2011-03-041-1/+8
| | | | | | | | | | | | | | This is an awful hack and will hurt performance on Ironlake, but we're at a loss as to what's going wrong otherwise. This is the only common variable we've found that avoids the problem on 4 applications (CelShading, gnome-shell, Pill Popper, and my GLSL demo), while other variables we've tried appear to only be confounding. Neither the specifications nor the hardware team have been able to provide any enlightenment, despite much searching. https://bugs.freedesktop.org/show_bug.cgi?id=29172 Tested by: Chris Lord <chris@linux.intel.com> (Pill Popper) Tested by: Ryan Lortie <desrt@desrt.ca> (gnome-shell)
* st/mesa: set PIPE_BIND_RENDER_TARGET for sRGB formats if UNORM is supportedMarek Olšák2011-03-041-2/+9
| | | | | | | | Because the format can be changed to UNORM in a surface. This fixes: state_tracker/st_atom_framebuffer.c:163:update_framebuffer_state: Assertion `framebuffer->cbufs[i]->texture->bind & (1 << 1)' failed.
* i965: Fix extending VB packetsChris Wilson2011-03-041-2/+2
| | | | | | | | Computation of the delta of this array from the last had a silly little bug and ignored any initial delta==0 causing grief in Nexuiz and friends. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* i965: Handle URB_FENCE erratum for BroadwaterChris Wilson2011-03-041-0/+8
| | | | | | | | | | There is a silicon bug which causes unpredictable behaviour if the URB_FENCE command should cross a cache-line boundary. Pad before the command to avoid such occurrences. As this command only applies to gen4/5, do the fixup unconditionally as the specs do not actually state for which chip it was fixed (and the cost is negligible)... Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* i965: Align index to type size and flush if the type changesChris Wilson2011-03-045-13/+22
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* intel: Add couple of missing gen6 commands to decodeChris Wilson2011-03-041-0/+2
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* i965: Prevent using a zero sized (or of unknown type) vertex arrayChris Wilson2011-03-041-5/+6
| | | | Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* scons: More tweaks to fix MinGW build.José Fonseca2011-03-031-1/+1
|
* scons: Ensure generated headers are in the include path.José Fonseca2011-03-031-0/+4
|
* i965: SNB GT1 has only 32k urb and max 128 urb entries.Zou Nan hai2011-03-032-4/+19
| | | | Signed-off-by: Zou Nan hai <nanhai.zou@intel.com>
* mesa: added gl_program_constants::MaxAddressOffsetBrian Paul2011-03-024-2/+7
| | | | See https://bugs.freedesktop.org/show_bug.cgi?id=29418
* mesa: increase INST_INDEX_BITS to 12Brian Paul2011-03-021-1/+1
| | | | For more info see fd.o bug 29418.
* Revert "mesa: reduce calls to _mesa_test_framebuffer_completeness()"Brian Paul2011-03-021-1/+1
| | | | | | | This reverts commit 1f9a0a4e6e5566c36c781add5f1e62af3efdfb58. This caused trouble with Lightsmark w/ i965 driver and fbo/fbo-blit-d24s8 (see bug 34894). It's probably something simple but no time to debug now.
* vbo: fix error parameterBrian Paul2011-03-021-1/+1
| | | | Spotted by Ian.
* i965: Maxinum the usage of urb space on SNB.Zou Nan hai2011-03-021-10/+6
| | | | | | | | | SNB has 64k urb space, we only use piece of them. The more urb space we alloc, the more concurrent vs threads we can run. push the urb space usage to the limit. Signed-off-by: Zou Nan hai <nanhai.zou@intel.com>
* mesa/st: fix softpipe npot compressed mipmaps.Dave Airlie2011-03-021-2/+2
| | | | | | | | | | this fixes fbo-generatemipmap-formats rgtc and s3tc in NPOT mode with softpipe. r600g fails to even get level 0 correct so have to look into that a bit further. Signed-off-by: Dave Airlie <airlied@redhat.com>
* mesa/st: fix generate mipmap for signed compressed formats.Dave Airlie2011-03-021-32/+63
| | | | | | | | This was always converting to 8-bit per channel unsigned formats, which isn't suitable for RGTC signed formats, this special cases those two formats and converts to floats for those. Signed-off-by: Dave Airlie <airlied@redhat.com>
* rgtc: remove GL types from this file.Dave Airlie2011-03-021-10/+10
| | | | | | I'd like to share this file with gallium u_format stuff. Signed-off-by: Dave Airlie <airlied@redhat.com>
* rgtc: move the texel fetch into common unsigned/signed code.Dave Airlie2011-03-022-65/+41
| | | | | | This function can be done in the include file also. Signed-off-by: Dave Airlie <airlied@redhat.com>
* rgtc: fix issues with compressor and signed types.Dave Airlie2011-03-022-10/+23
| | | | | | | | | | With signed types we weren't hitting this test however the comment stating this doesn't happen often doesn't apply when using signed types since an all 0 block is quite common which isn't abs min or max. this fixes the limits correctly again also. Signed-off-by: Dave Airlie <airlied@redhat.com>
* rgtc: don't try to access off the end of the block.Dave Airlie2011-03-021-2/+2
| | | | | | | | if the values are all in the last dword, the high bits can be 0, This fixes a valgrind warning I saw when playing with mipmaps. Signed-off-by: Dave Airlie <airlied@redhat.com>
* rgtc: move to using ubyte for fetch instead of chan + fix limitDave Airlie2011-03-021-13/+13
| | | | | | My previous fix to the byte max was incorrect. Signed-off-by: Dave Airlie <airlied@redhat.com>
* st/mesa: use RGTC for GL_COMPRESSED_RED/RG if possibleMarek Olšák2011-03-021-2/+8
| | | | With proper fallback formats.
* vbo: add vbo_always_unmap_buffers()Brian Paul2011-03-013-1/+22
| | | | | | Drivers can call this function as needed. It tells the VBO module to always unmap the current glBegin/glEnd VBO when we flush. Otherwise it's possible to be in a flushed state but still have the VBO mapped.
* vbo: generate GL_INVALID_VALUE for bad glVertexAttrib indexBrian Paul2011-03-013-26/+26
|
* mesa: Revert most of 3158cc7d because it causes other breakageIan Romanick2011-03-011-9/+4
|
* scons: Use Flex and Bison to generate lexer/parser files.Kenneth Graunke2011-03-011-2/+6
| | | | | This gets it building again here; I'll leave it up to the SCons maintainers to make further improvements.