summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'mesa_7_5_branch'Brian Paul2009-05-131-0/+1
|\ | | | | | | | | | | | | | | Conflicts: src/mesa/main/arrayobj.c src/mesa/main/arrayobj.h src/mesa/main/context.c
| * mesa: delete array objects before buffer objects during context tear-downBrian Paul2009-05-131-1/+2
| | | | | | | | The former may point to the later.
| * mesa: clean-up vertex array object VBO unbinding and delete/refcountingBrian Paul2009-05-131-31/+33
| | | | | | | | | | | | Don't really delete vertex array objects until the refcount hits zero. At that time, unbind any pointers to VBOs. (cherry picked from commit 32b851c80792623195069d7a41a5808cff3b2f6f)
| * mesa: reference counting for gl_array_objectBrian Paul2009-05-134-13/+84
| | | | | | | | | | | | Every kind of object that can be shared by multiple contexts should be refcounted. (cherry picked from commit 1030bf0ded2a88a5e27f7a4d393c11cfde3d3c5a)
| * mesa: Fixed a texture memory leakBrian Paul2009-05-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current texture for any particular texture unit is given an additional reference in update_texture_state(); but if the context is closed before that texture can be released (which is quite frequent in normal use, unless a program unbinds and deletes the texture and renders without it to force a call to update_texture_state(), the memory is lost. This affects general Mesa; but the i965 is particularly affected because it allocates a considerable amount of additional memory for each allocated texture. (cherry picked from master, commit c230767d6956b63a2b101acb48f98823bb5dd31a)
| * mesa: set version to 7.5-rc1Brian Paul2009-05-081-1/+1
| |
| * mesa: Make _mesa_share_state thread safe.José Fonseca2009-05-081-2/+9
| |
| * mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-084-9/+30
| | | | | | | | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
| * mesa/main: set PREFER_DP4 to match position_invarient codeKeith Whitwell2009-05-081-1/+1
| | | | | | | | | | | | | | | | This is a quick fix for z fighting in quake4 caused by the mismatch between vertex transformation here and in the position_invarient code. Full fix would be to make this driver-tunable and adjust both position_invarient and ffvertex_prog.c code to respect driver preferences.
* | mesa: updated comments for _mesa_generate_mipmap()Brian Paul2009-05-111-2/+5
| |
* | mesa: Fixed a texture memory leakRobert Ellison2009-05-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | The current texture for any particular texture unit is given an additional reference in update_texture_state(); but if the context is closed before that texture can be released (which is quite frequent in normal use, unless a program unbinds and deletes the texture and renders without it to force a call to update_texture_state(), the memory is lost. This affects general Mesa; but the i965 is particularly affected because it allocates a considerable amount of additional memory for each allocated texture.
* | mesa: raise MAX_VARYING (number of shader varying vars) to 16Brian Paul2009-05-081-1/+1
| | | | | | | | 16 is the limit for now because of various 32-bit bitfields.
* | mesa: assertions to check for too many vertex outputs or fragment inputsBrian Paul2009-05-081-0/+4
| |
* | mesa: issue warning for out of bounds array indexesBrian Paul2009-05-081-0/+2
| |
* | mesa: Make _mesa_share_state thread safe.José Fonseca2009-05-081-2/+9
| |
* | mesa: make the array object save/remove functions staticBrian Paul2009-05-072-14/+7
| |
* | mesa: clean-up vertex array object VBO unbinding and delete/refcountingBrian Paul2009-05-071-31/+33
| | | | | | | | | | Don't really delete vertex array objects until the refcount hits zero. At that time, unbind any pointers to VBOs.
* | mesa: reference counting for gl_array_objectBrian Paul2009-05-074-14/+83
| | | | | | | | | | Every kind of object that can be shared by multiple contexts should be refcounted.
* | mesa: array object commentsBrian Paul2009-05-071-0/+5
| |
* | mesa: move the NullBufferObj from GLcontext to gl_shared_stateBrian Paul2009-05-077-27/+33
| | | | | | | | | | Since shared array objects may point to the null/default buffer object, the null/default buffer object should be part of the shared state.
* | mesa: fix comments, s/texture/buffer/Brian Paul2009-05-071-2/+2
| |
* | mesa: remove unused gl_buffer_object::OnCard fieldBrian Paul2009-05-072-3/+0
| |
* | mesa: added gl_buffer_object::Written flag (for debug purposes)Brian Paul2009-05-072-0/+7
| | | | | | | | The flag is set when we data has been written into the buffer object.
* | mesa: Compute gl_client_array->_MaxElement during array validationBrian Paul2009-05-074-40/+64
| | | | | | | | | | | | Used to be done in the glVertex/Normal/Color/etc/Pointer() calls but if the VBO was reallocated the size could change. New _NEW_BUFFER_OBJECT state flag.
* | mesa: use array->BufferObj instead of ctx->Array.ArrayBufferObjBrian Paul2009-05-071-2/+2
| | | | | | | | No difference, but a little more understandable.
* | mesa: added _ElementSize field to gl_client_arrayBrian Paul2009-05-072-0/+3
| | | | | | | | Will be handy for bounds checking later...
* | mesa: use local var to make code a bit more conciseBrian Paul2009-05-071-36/+37
| |
* | mesa: fix/add commentsBrian Paul2009-05-071-3/+2
| |
* | mesa: add GL_DOUBLE case in _mesa_sizeof_type()Brian Paul2009-05-071-0/+2
| |
* | mesa: limit number of error raised by invalid GL_TEXTURE_MAX_ANISOTROPY_EXTBrian Paul2009-05-071-2/+4
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-05-071-0/+4
|\|
| * mesa: unmap buffer objects during context tear-downBrian Paul2009-05-071-0/+4
| |
* | mesa: remove unnecessary buffer size checkBrian Paul2009-05-061-8/+0
| |
* | mesa: code consolidation in glDraw[Range]Elements() validationBrian Paul2009-05-061-26/+22
| |
* | mesa: new comments, minor reformattingBrian Paul2009-05-061-7/+20
| |
* | mesa: use elementBuf local var instead of ctx->Array.ElementArrayBufferObjBrian Paul2009-05-061-1/+1
| | | | | | | | Makes no real difference, but more consistant.
* | mesa: only use fallback texture when using shaders, not fixed-function (take ↵Brian Paul2009-05-051-8/+14
| | | | | | | | | | | | | | | | | | | | | | two) The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. For fixed function, the texture unit is truly disabled/ignored. Fixes glean fbo test regression.
* | Revert "mesa: only use fallback texture when using shaders, not fixed-function"Brian Paul2009-05-051-14/+8
| | | | | | | | | | | | This reverts commit a0edbfb28fb2e670c657d52190a7e8b1ccf4f46e. This patch didn't completely fix the problem. The next patch will.
* | mesa: only use fallback texture when using shaders, not fixed-functionBrian Paul2009-05-051-8/+14
| | | | | | | | | | | | | | | | The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. Fixes glean fbo test regression.
* | mesa: only use fallback texture when using shaders, not fixed-functionBrian Paul2009-05-051-4/+4
| | | | | | | | | | | | | | | | The semantics are a little different for shaders vs. fixed-function when trying to use an incomplete texture. The fallback texture returning (0,0,0,1) should only be used with shaders. Fixes glean fbo test regression.
* | mesa: minor simplification in enable_texture(), updated commentsBrian Paul2009-05-051-3/+5
| |
* | mesa: more complete fix for transform_invarient glitchesKeith Whitwell2009-05-054-9/+30
| | | | | | | | | | | | Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
* | mesa/main: set PREFER_DP4 to match position_invarient codeKeith Whitwell2009-05-051-1/+1
| | | | | | | | | | | | | | | | This is a quick fix for z fighting in quake4 caused by the mismatch between vertex transformation here and in the position_invarient code. Full fix would be to make this driver-tunable and adjust both position_invarient and ffvertex_prog.c code to respect driver preferences.
* | mesa: in glReadBufer() set _NEW_BUFFERS, not _NEW_PIXELBrian Paul2009-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since GL_READ_BUFFER is historically part of the gl_pixel_attrib group it made sense to signal changes with _NEW_PIXEL. But now with FBOs it's also part of the framebuffer state. Now _NEW_PIXEL strictly indicates pixels transfer state changes. This change avoids framebuffer state validation when any random bit of pixel-transfer state is set. DRI drivers updated too: don't check _NEW_COLOR when updating framebuffer state. I think that was just copied from the Xlib driver because we care about dither enable/disable state there.
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-05-011-5/+16
|\|
| * mesa: fix state validation bug for glCopyTex[Sub]Image()Brian Paul2009-05-011-5/+16
| | | | | | | | | | We need to make sure the framebuffer state is up to date to make sure we read pixels from the right buffer when doing a texture image copy.
| * mesa: remove -devel suffix from versionBrian Paul2009-05-011-1/+1
| |
* | mesa: fix commentBrian Paul2009-05-011-1/+1
| |
* | mesa: create/use a fallback texture when bound texture is incompleteBrian Paul2009-05-014-2/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a GLSL sampler reads from an incomplete texture it should return (0,0,0,1). Instead of jumping through hoops in all the drivers to make this happen, just create/install a fallback texture with those texel values. Fixes piglit/fp-incomplete-tex on i965 and more importantly, fixes some GPU lockups when trying to sample from missing surfaces. If a binding table entry is NULL, it seems that sampling sometimes works, but not always (lockup). Todo: create a fallback texture for each type of texture target?
* | mesa: bump version to 7.6 (devel)Brian Paul2009-05-011-3/+4
|/