summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* r300g: inline r300_resource_set_propertiesMarek Olšák2012-01-011-16/+1
|
* r300g: rework resource_copy_region, not changing pipe_resourceMarek Olšák2012-01-019-119/+194
| | | | | | | | | | | | | Changing pipe_resource was wrong, because it can be used by other contexts at the same time. This fixes the last possible race condition in r300g that I know of. This also fixes blitting NPOT compressed textures. Random pixels sometimes appeared at the right-hand edge of the texture. Finally, this removes r300_texture_desc::stride_in_pixels. It makes little sense with sampler views and surfaces being able to override width0, height0, and the format entirely.
* u_blitter: expose functions for setting default views and surfaces for copyingMarek Olšák2012-01-012-18/+65
| | | | | And more importantly, don't call u_sampler_view_default_template etc. it was a source of bugs.
* st_glsl_to_tgsi: translate interp mode for front/back colorDave Airlie2011-12-311-2/+2
| | | | | | this fixes a bunch of interpolation tests on softpipe at least. Signed-off-by: Dave Airlie <[email protected]>
* softpipe: reorder LIT to fix fp-lit-src-equals-dstDave Airlie2011-12-311-8/+8
| | | | | | | This reorders the LIT operation like the r600 one to fix the fp-lit-src-equals-dst piglit test. Signed-off-by: Dave Airlie <[email protected]>
* llvmpipe: fix blending for intensity formatsDave Airlie2011-12-311-1/+2
| | | | | | | This fixes the piglit fbo-blending-formats test for standard, ARB_texture_float and EXT_texture_snorm. Signed-off-by: Dave Airlie <[email protected]>
* st/mesa: remove stImage->base.Face/Level assignments in st_TexImage()Brian Paul2011-12-301-3/+0
| | | | | | | | | This fixes a regresssion (broken cube maps) caused by the ctx->Driver.TexImage parameter simplification commit. The target var is always GL_TEXTURE_CUBE_MAP at this point so the Face field was always getting set to zero. These field assignments aren't needed anyway since core Mesa sets them.
* u_format: fix latc fetches.Dave Airlie2011-12-301-1/+6
| | | | | | | | | | This fixes the latc fetches for llvmpipe, fixes fbo-generatemipmap-formats GL_ARB_texture_compression fbo-generatemipmap-formats GL_ATI_texture_compression_3dc fbo-generatemipmap-formats GL_EXT_texture_compression_latc Signed-off-by: Dave Airlie <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* u_format/rgtc: fix alpha values in returned texels.Dave Airlie2011-12-301-1/+10
| | | | | | | This fixes fbo-generatemipmap-formats GL_EXT_texture_compression_rgtc on llvmpipe. Signed-off-by: Dave Airlie <[email protected]>
* glsl: fix usage of potentially undefined data_end unionAlexander von Gluck2011-12-301-1/+1
| | | | | Reviewed-by: Ian Romanick <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* st/glx/xlib: check for null attrib_list in glXCreateContextAttribsARB()Brian Paul2011-12-301-1/+1
| | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=44234
* mesa: simplify Driver.GetCompressedTexImage() parametersBrian Paul2011-12-303-14/+10
| | | | | Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: simplify Driver.CompressedTex[Sub]Image function parametersBrian Paul2011-12-305-170/+98
| | | | | | | | As with previous commits, the target, level and texObj info can be obtained through the texImage pointer. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: simplify Driver.TexImage() parametersBrian Paul2011-12-3010-185/+134
| | | | | | | | As with TexSubImage(), the target, level and texObj values can be obtained through the texImage pointer. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: simplify Driver.TexSubImage() parametersBrian Paul2011-12-308-111/+89
| | | | | | | | There's no need to pass the target, level and texObj parameters since they can be easily obtained from the texImage pointer. Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* st/mesa: remove TexSubImage code, use core mesa routines instead.Brian Paul2011-12-301-140/+3
| | | | | | | | Since the move to Map/UnmapTextureImage, the core mesa routines are equivalent to what the state tracker was doing. The TexImage functions can be replaced too, but there's a few differences that will need to be handled.
* u_format: fix inv_swizzles generationDave Airlie2011-12-301-1/+2
| | | | | | | | | | | | inv_swizzles is used in lp_tile_soa.py to create lp_tile_soa.c, we overwrite swizzles if they are already set. This results in the i8 format getting alpha instead of red, and the l8 format getting blue instead of red. Fixes fbo-alphatest-formats, fbo-alphatest-formats ARB_texture_float, and fbo-alphatest-formats EXT_texture_snorm on llvmpipe. Signed-off-by: Dave Airlie <[email protected]>
* r600g: Manage fences per screen rather than per context.Michel Dänzer2011-12-302-56/+65
| | | | | | | | | | | | | | | | A fence is a screen object and can outlive the context it was created from. The previous code would access freed memory in that case, resulting in various problems. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=44151 https://bugs.freedesktop.org/show_bug.cgi?id=44007 Probably fixes: https://bugs.freedesktop.org/show_bug.cgi?id=43993 NOTE: This is a candidate for the 7.11 branch. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Mathias Fröhlich <[email protected]>
* i915g: Allocate tmp for KILPStéphane Marchesin2011-12-301-0/+2
| | | | This fixes https://bugs.freedesktop.org/show_bug.cgi?id=44297
* vbo: introduce vbo_sizeof_ib_type() functionYuanhan Liu2011-12-305-79/+29
| | | | | | | | | | introduce vbo_sizeof_ib_type() function to return the index data type size. I see some place use switch(ib->type) to get the index data type, which is sort of duplicate. Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* llvmpipe: Remove useless draw_install_pstipple_stage call.Stéphane Marchesin2011-12-291-5/+0
| | | | | | It is #ifdef'd out, and is already called unconditionnaly a couple lines above. Reviewed-By: Jose Fonseca <[email protected]>
* intel: Fix memory leak in intel_miptree_create()Chad Versace2011-12-291-2/+2
| | | | | | | | On failure, intel_miptree_create() needs to *release* the miptree, not just free it, so that the stencil_mt gets released too. Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* i965/fs: Allow constant propagation into IF with embedded compare.Eric Anholt2011-12-291-0/+1
| | | | | | This saves a couple of instructions on most programs with control flow. More interestingly, 6 shaders from unigine sanctuary now fit into 16-wide without register spilling.
* intel: Drop the batchbuffer flush on glRenderbufferStorage().Eric Anholt2011-12-291-2/+0
| | | | | There's nothing batchbuffer-related here. State updates by the caller will trigger re-emitting of any new hardware state.
* intel: Drop the batchbuffer flush on glFramebufferRenderbuffer().Eric Anholt2011-12-291-2/+0
| | | | | There should be nothing special about this call compared to other callers of intel_draw_buffer().
* intel: Make the batchbuffer flush debug more useful.Eric Anholt2011-12-292-3/+5
| | | | | | | We were printing out the line triggering the flush, but a variety of different causes just printed the line number for intel_flush()'s call of intel_batchbuffer_flush(). Plumb the line numbers from the caller of intel_flush() on through.
* intel: Fix performance regression in Lightsmark since HiZ changes.Eric Anholt2011-12-291-0/+3
| | | | | | | | | | | Since the refactor in d7b33309fe160212f2eb73f471f3aedcb5d0b5c1, depth in the miptree changed from 1 to 6, so we always decided it didn't match, and we would relayout to something that would still not "match". Improves performance 23.8% (+/- 1.1%, n=4) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43329
* intel: Don't consider miptrees for other texture targets to match.Eric Anholt2011-12-292-1/+3
| | | | | We would have done a relayout at validate time, but it's senseless to store into a miptree if it's going to force relayout.
* mesa: Use __builtin_ffsll on Mac OS X.Vinson Lee2011-12-281-1/+1
| | | | | | | | | Fixes this GCC warning. arrayobj.c: In function '_mesa_update_array_object_max_element': arrayobj.c:310: warning: implicit declaration of function 'ffsll' Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i915g: Add missing draw_flush call.Stéphane Marchesin2011-12-281-0/+7
| | | | Fixes a bunch of corruption bugs, especially some missing clipped triangles.
* mesa: Re-add main/bitset.h to fix classic nouveau build failure.José Fonseca2011-12-282-0/+162
| | | | | | | | bitset.h is still used by classic nouveau -- see `git grep '\<BITSET_'` -- and the state stored is too big to fit in 64bit integers (it requires approximately 87 bits), so there is no obvious alternative here. This effecively reverts commit 196800d79829a420073f762fac90090a7b416d2d.
* mesa: Remove now unused main/bitset.h.Mathias Fröhlich2011-12-282-162/+0
| | | | Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Remove remaining FEATURE_ARB_vertex_buffer_object guards.Mathias Fröhlich2011-12-286-21/+0
| | | | | | | | | Since commit 82b9661894315362f857192439bdcbc9db090387 and 34eae1c72a9b3a8eb0634cda52fca0208cd2f40d vbo support is mandatory for all drivers. So, remove the remaining FEATURE_ARB_vertex_buffer_object guards. Signed-off-by: Mathias Froehlich <[email protected]>
* mesa: Convert to use GLbitfield64 directly.Mathias Fröhlich2011-12-284-42/+24
| | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* radeon: Convert to use GLbitfield64 directly.Mathias Fröhlich2011-12-283-38/+37
| | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* nouveau: Convert to use GLbitfield64 directly.Mathias Fröhlich2011-12-282-2/+2
| | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i915: Convert to use GLbitfield64 directly.Mathias Fröhlich2011-12-282-14/+12
| | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Convert RENDERINPUTS* macros to GLbitfield64.Mathias Fröhlich2011-12-282-12/+20
| | | | | Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i915g: Only apply the optimization to output vars.Stéphane Marchesin2011-12-271-0/+1
| | | | | This is a bit overkill, but otherwise we need to rename subsequent uses, which is a future TODO. Reported by CME.
* i965/vs: Properly clear cur_value when propagating direct copies.Kenneth Graunke2011-12-271-16/+12
| | | | | | | | | | | | | | | | | | | | | | | | Consider the following code: MOV A.x, B.x MOV B.x, C.x After the first line, cur_value[A][0] == B, indicating that A.x's current value came from register B. When processing the second line, we update cur_value[B][0] to C. However, for drect copies, we fail to reset cur_value[A][0] to NULL. This is necessary because the value of A is no longer the value of B. Fixes Counter-Strike: Source in Wine (where the menu rendered completely black in DX9 mode), completely white textures in Civilization V, and the new Piglit test glsl-vs-copy-propagation-1.shader_test. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42032 Tested-by: Matt Turner <[email protected]> Tested-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Kenneth Graunke <[email protected]>
* i965/vs: Fix incorrect subscript when resetting copy propagation records.Kenneth Graunke2011-12-271-1/+1
| | | | | | | | | | | | | | | | In this code, 'i' loops over the number of virtual GRFs, while 'j' loops over the number of vector components (0 <= j <= 3). It can't possibly be correct to see if bit 'i' is set in the destination writemask, as it will have values much larger than 3. Clearly this is supposed to be 'j'. Found by inspection. Tested-by: Matt Turner <[email protected]> Tested-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Kenneth Graunke <[email protected]>
* i965: Create mock implementation of GL_OES_EGL_image_externalChad Versace2011-12-274-0/+6
| | | | | | | | | | | | | | | | | | | | | In Android IceCreamSandwich, SurfaceFlinger requires GL_OES_image_external for basic compositing tasks. Without the extension, SurfaceFlinger fails to start. Despite the incompleteness of the extension's implementation introduced by this patch, it is good enough to enable SurfaceFlinger and to unblock the people who need to begin testing Mesa on IceCreamSandwich. To enable the extension, set the environment variable MESA_EXTENSION_OVERRIDE="+GL_OES_EGL_image_external". Ideally, Android should set this in init.rc. WARNING: This implementation of GL_OES_EGL_image_external is not complete. Some of it is even incorrect. When we begin to really implement GL_OES_EGL_image_external, much of the patch will need reverting. Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* meta: Disable GL_TEXTURE_EXTERNAL_OES in meta_begin()Chad Versace2011-12-271-0/+2
| | | | | | | | If the meta flag MESA_META_TEXTURE is present, then disable the texture target GL_TEXTURE_EXTERNAL_OES. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: fpclassify is available on HaikuAlexander von Gluck2011-12-271-1/+1
| | | | | Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* glu: remove BeOS define as BeOS is not longer a target platformAlexander von Gluck2011-12-271-6/+1
| | | | | Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallium: use Mesa pthread_barrier_t on Haiku, as it is incomplete under HaikuAlexander von Gluck2011-12-271-1/+1
| | | | | Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallium/u_pack: fix l8/i8 pack color ubDave Airlie2011-12-271-1/+1
| | | | | | | just noticed this in passing, not sure it actually fixes any issus. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* vbo: Clean up recalculate_input_bindings.Mathias Fröhlich2011-12-272-46/+17
| | | | | | | | | Now the gl_array_object's layout matches the one used in recalculate_input_bindings. Make use of this and remove the bind_array_obj function. Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* swrast: assert _swrast_map_teximage() x, y is multiple of block sizeBrian Paul2011-12-261-0/+3
|
* swrast: replace assertion with conditional in _swrast_map_teximage()Brian Paul2011-12-261-2/+6
| | | | | Just in case we ran out of memory when trying to allocate the texture memory.