summaryrefslogtreecommitdiff
path: root/src/mesa
AgeCommit message (Collapse)Author
2008-05-07mesa: minor fixes in _mesa_free_shader_program_data() and _mesa_link_program()Brian Paul
From master: Set shProg->NumShaders = 0 after freeing program's list of shaders. Set _NEW_PROGRAM in _mesa_link_program() to fix a state validation bug.
2008-05-07gallium: fix some render to texture bugsBrian Paul
Before, we were sometimes rendering into a stale texture because st_finalize_texture() would discard the old texture and create a new one. Moved st_update_framebuffer atom after texture validation so that we can create a new renderbuffer surface if the texture changes. Also, split texture validation into two parts: finalize_textures and update_textures. Do finalize_textures first to avoid getting into the situtation where we're doing a pipe->surface_copy() mid-way through state validation. Some debug code still in place, but disabled...
2008-05-07Merge commit 'origin/gallium-0.1' into gallium-tex-surfacesKeith Whitwell
2008-05-07mesa: free shader program data before deleting shader objects.Brian Paul
Picked from master. Fixes mem corruption seen when glean/api2 test exits.
2008-05-07gallium: implement full reference counting for vertex/fragment programsBrian Paul
Use _mesa_reference_vert/fragprog() wherever we assign program pointers. Fixes a memory corruption bug found with glean/api2 test. Another memory bug involving shaders yet to be fixed... Picked from gallium-0.1
2008-05-07Revert "gallium: move setup of dest_surface in do_copy_texsubimage()"Michel Dänzer
This reverts commit f7dbd18371f9cb6686b6a97642b3ca5577e83472. Looks like an accidental revert of commit 650c57f19398800dfdcf357b6e9ec7b68bfa34f1.
2008-05-06mesa: free shader program data before deleting shader objects.Brian
Picked from master. Fixes mem corruption seen when glean/api2 test exits.
2008-05-06gallium: implement full reference counting for vertex/fragment programsBrian
Use _mesa_reference_vert/fragprog() wherever we assign program pointers. Fixes a memory corruption bug found with glean/api2 test. Another memory bug involving shaders yet to be fixed...
2008-05-06mesa: comments, whitespaceBrian
2008-05-06gallium: re-enable temporarily disabled code in do_copy_texsubimage()Brian Paul
2008-05-06gallium: create drawing surfaces as GPU_READ/WRITE onlyBrian Paul
Create different temporary surfaces for CPU_READ/WRITE when needed (such as for glReadPixels, glAccum, some glCopy/DrawPixels, glCopyTexSubImage, etc).
2008-05-06gallium: create renderbuffer surface w/out CPU_READ/WRITE flagsMichal Danzer
2008-05-06gallium: move setup of dest_surface in do_copy_texsubimage()Michal Danzer
2008-05-06gallium: change calculate_first_last_level() to match gallium-tex-surfaces ↵Brian Paul
branch
2008-05-06gallium: sync up texture/sampler changes with masterBrian Paul
2008-05-06gallium: Make sure to release texture surfaces (at the right time).Michel Dänzer
2008-05-06gallium: glCopyTexSubImage improvement.Michel Dänzer
Only get a texture surface for attempting an accelerated copy, and mark it for GPU use only.
2008-05-06Merge commit 'origin/gallium-0.1' into gallium-tex-surfacesKeith Whitwell
Conflicts: src/mesa/state_tracker/st_atom_sampler.c src/mesa/state_tracker/st_cb_texture.c
2008-05-05fix _mesa_ffs for alternative compilersAlan Hourihane
2008-05-05declare atoms as externAlan Hourihane
2008-05-03gallium: fix some BaseLevel, lastLevel bugsBrian Paul
2008-05-03gallium: fix warningsBrian Paul
2008-05-03gallium: fix sampler->max_lod computationBrian Paul
2008-05-03gallium: fix computation of sampler->min_lodBrian Paul
The texture BaseLevel is accounted for in texture layout so it doesn't factor in here. May also need to adjust max_lod...
2008-05-02gallium: set template.target = PIPE_TEXTURE_2DBrian Paul
2008-05-02gallium: identify depth-stencil texturesKeith Whitwell
And don't use the display-target path to allocate them.
2008-05-02gallium: minor code, comments clean-upBrian Paul
2008-05-02gallium: in st_finalize_texture() check texture dimensionsBrian Paul
Check dimensions in addition to target, format, etc. Fixes a bug where we failed to detect a change in texture image sizes and wound up using the old texture data.
2008-05-02gallium: Add texture usage flags, special-case allocation of display targetsKeith Whitwell
For many envirionments it's necessary to allocate display targets in a window-system friendly manner. Add facilities so that a driver can tell if a texture is likely to be used to generate a display surface and if use special allocation paths if necessary. Hook up softpipe to call into the winsys->surface_alloc_storage() routine in this case, though we probably want to change that interface slightly also.
2008-05-02gallium: Reallocate pipe_texture in st_TexImage if the texture object was used.Michel Dänzer
Fixes problems with interleaved glTexImage and rendering calls.
2008-05-02snprintf -> util_snprintfAlan Hourihane
2008-05-02gallium: remove usage of winsys->surface_alloc_storage from state trackerKeith Whitwell
Allocate a texture containing storage instead. Also clean up ACCUM buffer allocation slightly -- drivers will need some changes to texture allocation logic to accomodate the concept of a texture that will only as image storage by the CPU, but it's cleaner than it was.
2008-05-02Merge branch 'gallium-0.1' into gallium-tex-surfacesKeith Whitwell
2008-05-02revert mode change back to 644Alan Hourihane
2008-05-02inline -> INLINEAlan Hourihane
2008-05-02Some changed for non-C99 compilersAlan Hourihane
2008-05-01gallium: use screen->tex_surface_release()Brian Paul
2008-05-01gallium: Set sampler->min_lod instead of always reallocating pipe_textures.Michel Dänzer
2008-05-01mesa: squash harmless warningKeith Whitwell
2008-05-01Fix build problem with MSVCAlan Hourihane
2008-05-01gallium: tex surface checkpointKeith Whitwell
2008-04-30gallium: remove old filesBrian Paul
2008-04-30gallium: fix texture border removal bugBrian Paul
2008-04-30gallium: use the newer PIPE_FORMAT_x_UNORM format namesBrian Paul
2008-04-30Add support for GL_REPLACE_EXT texture env mode.Brian Paul
GL_REPLACE_EXT comes from the ancient GL_EXT_texture extension. Found an old demo that actually uses it. The values of the GL_REPLACE and GL_REPLACE_EXT tokens is different, unfortunately.
2008-04-30gallium: use new buffer wrapper functions in p_inlines.hBrian Paul
This allows us to remove most of the direct references to winsys in the state tracker.
2008-04-30gallium: consolidate the bitmap->texel conversion codeBrian Paul
2008-04-30gallium: create a new texture each time we init/flush the bitmap cacheBrian Paul
2008-04-30gallium: simplify texture format selectionBrian Paul
2008-04-29gallium: flush pipe before updating bitmap textureBrian Paul
Fixes duplicated text bug in progs/tests/texwrap.c